diff options
| author | aarne <unknown> | 2004-09-24 08:46:03 +0000 |
|---|---|---|
| committer | aarne <unknown> | 2004-09-24 08:46:03 +0000 |
| commit | 33ea630d4d431045c13e96c51e953ce0bafb4f0f (patch) | |
| tree | fbac8eb1c4b9c2344e4ddfcd8a281e859aaf7f42 /examples/gfcc/ImperC.gf | |
| parent | 2c60a2d82a0d7b90924e7dbbcacf36afb8549d17 (diff) | |
bug fixes in parsing etc; improved ImperC
Diffstat (limited to 'examples/gfcc/ImperC.gf')
| -rw-r--r-- | examples/gfcc/ImperC.gf | 12 |
1 files changed, 6 insertions, 6 deletions
diff --git a/examples/gfcc/ImperC.gf b/examples/gfcc/ImperC.gf index a97688529..fd59e16d5 100644 --- a/examples/gfcc/ImperC.gf +++ b/examples/gfcc/ImperC.gf @@ -26,10 +26,10 @@ concrete ImperC of Imper = open ResImper in { } ; Decl typ cont = continues (typ.s ++ cont.$0) cont ; - Assign _ x exp = continues (x.s ++ "=" ++ ex exp) ; - Return _ exp = statement ("return" ++ ex exp) ; - While exp loop = continue ("while" ++ paren (ex exp) ++ loop.s) ; - IfElse exp t f = continue ("if" ++ paren (ex exp) ++ t.s ++ "else" ++ f.s) ; + Assign _ x exp = continues (x.s ++ "=" ++ exp.s) ; + Return _ exp = statement ("return" ++ exp.s) ; + While exp loop = continue ("while" ++ paren exp.s ++ loop.s) ; + IfElse exp t f = continue ("if" ++ paren exp.s ++ t.s ++ "else" ++ f.s) ; Block stm = continue ("{" ++ stm.s ++ "}") ; End = ss [] ; @@ -50,6 +50,6 @@ concrete ImperC of Imper = open ResImper in { ConsTyp = cc2 ; NilExp = ss [] ; - OneExp _ e = ss (ex e) ; - ConsExp _ _ e es = ss (ex e ++ "," ++ es.s) ; + OneExp _ e = e ; + ConsExp _ _ e es = ss (e.s ++ "," ++ es.s) ; } |
