aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/comp/front/ast.rs2
-rw-r--r--src/comp/front/parser.rs3
2 files changed, 3 insertions, 2 deletions
diff --git a/src/comp/front/ast.rs b/src/comp/front/ast.rs
index 9e43d349..520f5557 100644
--- a/src/comp/front/ast.rs
+++ b/src/comp/front/ast.rs
@@ -160,7 +160,7 @@ tag expr_ {
expr_field(@expr, ident, ann);
expr_index(@expr, @expr, ann);
expr_path(path, option.t[def], ann);
- expr_ext(vec[@expr], option.t[@expr], ann);
+ expr_ext(path, vec[@expr], option.t[@expr], ann);
expr_fail;
expr_ret(option.t[@expr]);
expr_put(option.t[@expr]);
diff --git a/src/comp/front/parser.rs b/src/comp/front/parser.rs
index ddadc789..085255a4 100644
--- a/src/comp/front/parser.rs
+++ b/src/comp/front/parser.rs
@@ -589,13 +589,14 @@ impure fn parse_bottom_expr(parser p) -> @ast.expr {
case (token.POUND) {
p.bump();
+ auto pth = parse_path(p, GREEDY);
auto pf = parse_expr;
auto es = parse_seq[@ast.expr](token.LPAREN,
token.RPAREN,
some(token.COMMA),
pf, p);
hi = es.span;
- ex = ast.expr_ext(es.node, none[@ast.expr], ast.ann_none);
+ ex = ast.expr_ext(pth, es.node, none[@ast.expr], ast.ann_none);
}
case (token.FAIL) {