From 3297d465ca788fbb20a2430ced28420993deb8b7 Mon Sep 17 00:00:00 2001 From: Michael Sullivan Date: Wed, 27 Jun 2012 16:06:58 -0700 Subject: [PATCH] Have the syntax extension ast builders reserve the extra node ids required for overloading. Closes #2732. --- src/libsyntax/ext/build.rs | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/libsyntax/ext/build.rs b/src/libsyntax/ext/build.rs index 2e5fe63eb5ab..adb0b26e646c 100644 --- a/src/libsyntax/ext/build.rs +++ b/src/libsyntax/ext/build.rs @@ -20,11 +20,13 @@ fn mk_uint(cx: ext_ctxt, sp: span, u: uint) -> @ast::expr { fn mk_binary(cx: ext_ctxt, sp: span, op: ast::binop, lhs: @ast::expr, rhs: @ast::expr) -> @ast::expr { + cx.next_id(); // see ast_util::op_expr_callee_id let binexpr = ast::expr_binary(op, lhs, rhs); ret @{id: cx.next_id(), node: binexpr, span: sp}; } fn mk_unary(cx: ext_ctxt, sp: span, op: ast::unop, e: @ast::expr) -> @ast::expr { + cx.next_id(); // see ast_util::op_expr_callee_id let expr = ast::expr_unary(op, e); ret @{id: cx.next_id(), node: expr, span: sp}; }