diff options
author | Unknown <t-alekm@A3479878.redmond.corp.microsoft.com> | 2011-07-06 19:56:38 -0700 |
---|---|---|
committer | Unknown <t-alekm@A3479878.redmond.corp.microsoft.com> | 2011-07-06 19:56:38 -0700 |
commit | 87e454054629237ce9b2dcf2a31de059bbda1749 (patch) | |
tree | d60355863533d17871e79c7d9bffd404e98cd5a1 /Jennisys/Parser.fsy | |
parent | 0d74db68e2fffc71f2c66de47b8d5acf89cbad6b (diff) |
- fixed some bugs with applying unification over list elements
- fixed the List.jen example (generic list)
- changed SeqConst and SetConst to contain a list/set of "Const"
and not "Const option" like before
Diffstat (limited to 'Jennisys/Parser.fsy')
-rw-r--r-- | Jennisys/Parser.fsy | 12 |
1 files changed, 6 insertions, 6 deletions
diff --git a/Jennisys/Parser.fsy b/Jennisys/Parser.fsy index 21e2c83e..5053bd18 100644 --- a/Jennisys/Parser.fsy +++ b/Jennisys/Parser.fsy @@ -6,7 +6,7 @@ open AstUtils let rec MyFold ee acc =
match ee with
| [] -> acc
- | x::rest -> BinaryAnd (Desugar x) (MyFold rest acc)
+ | x::rest -> BinaryAnd x (MyFold rest acc)
%}
@@ -89,9 +89,9 @@ BlockStmt: Member:
| VAR VarDecl { Field($2) }
- | CONSTRUCTOR ID Signature Pre Post { Method($2, $3, (Desugar $4), (Desugar $5), true) }
- | METHOD ID Signature Pre Post { Method($2, $3, (Desugar $4), (Desugar $5), false) }
- | INVARIANT ExprList { Invariant(DesugarLst $2) }
+ | CONSTRUCTOR ID Signature Pre Post { Method($2, $3, $4, $5, true) }
+ | METHOD ID Signature Pre Post { Method($2, $3, $4, $5, false) }
+ | INVARIANT ExprList { Invariant($2) }
FrameMembers:
| { [], [], IdLiteral("true") }
@@ -116,10 +116,10 @@ VarDecl: Type:
| INTTYPE { IntType }
| BOOLTYPE { BoolType }
- | ID { NamedType($1) }
+ | ID { NamedType($1, []) }
| SEQTYPE LBRACKET Type RBRACKET { SeqType($3) }
| SETTYPE LBRACKET Type RBRACKET { SetType($3) }
- | ID LBRACKET Type RBRACKET { InstantiatedType($1, $3) }
+ | ID LBRACKET Type RBRACKET { InstantiatedType($1, [$3]) }
ExprList:
| { [] }
|