diff options
Diffstat (limited to 'src/comp/front')
| -rw-r--r-- | src/comp/front/ast.rs | 5 | ||||
| -rw-r--r-- | src/comp/front/parser.rs | 4 |
2 files changed, 5 insertions, 4 deletions
diff --git a/src/comp/front/ast.rs b/src/comp/front/ast.rs index 74126b96..422fd039 100644 --- a/src/comp/front/ast.rs +++ b/src/comp/front/ast.rs @@ -76,7 +76,7 @@ tag stmt_ { type decl = spanned[decl_]; tag decl_ { - decl_local(ident, option[@ty], ty); + decl_local(ident, bool, option[@ty]); decl_item(name, @item); } @@ -126,8 +126,9 @@ tag mode { } type slot = rec(@ty ty, mode mode, option[slot_id] id); +type input = rec(slot slot, ident ident); -type _fn = rec(vec[rec(slot slot, ident ident)] inputs, +type _fn = rec(vec[input] inputs, slot output, block body); diff --git a/src/comp/front/parser.rs b/src/comp/front/parser.rs index ef0cc6c3..4eb303ed 100644 --- a/src/comp/front/parser.rs +++ b/src/comp/front/parser.rs @@ -651,7 +651,7 @@ io fn parse_item(parser p) -> tup(ast.ident, @ast.item) { fail; } -io fn parse_crate(parser p) -> ast.crate { +io fn parse_crate(parser p) -> @ast.crate { auto lo = p.get_span(); auto hi = lo; let ast._mod m = new_str_hash[@ast.item](); @@ -660,7 +660,7 @@ io fn parse_crate(parser p) -> ast.crate { m.insert(i._0, i._1); hi = i._1.span; } - ret spanned(lo, hi, rec(module=m)); + ret @spanned(lo, hi, rec(module=m)); } // |