From 6ddd40d4368b1dbbc6bfa18d73d47beb05a55447 Mon Sep 17 00:00:00 2001 From: Huon Wilson Date: Mon, 26 May 2014 22:00:08 +1000 Subject: syntax: Add a source field to `Local` for tracking if it comes from `let`s or `for`s. --- src/libsyntax/ext/build.rs | 2 ++ src/libsyntax/ext/expand.rs | 4 +++- 2 files changed, 5 insertions(+), 1 deletion(-) (limited to 'src/libsyntax/ext') diff --git a/src/libsyntax/ext/build.rs b/src/libsyntax/ext/build.rs index 449feb3afbf..bb7b73c5f81 100644 --- a/src/libsyntax/ext/build.rs +++ b/src/libsyntax/ext/build.rs @@ -439,6 +439,7 @@ impl<'a> AstBuilder for ExtCtxt<'a> { init: Some(ex), id: ast::DUMMY_NODE_ID, span: sp, + source: ast::LocalLet, }; let decl = respan(sp, ast::DeclLocal(local)); @respan(sp, ast::StmtDecl(@decl, ast::DUMMY_NODE_ID)) @@ -462,6 +463,7 @@ impl<'a> AstBuilder for ExtCtxt<'a> { init: Some(ex), id: ast::DUMMY_NODE_ID, span: sp, + source: ast::LocalLet, }; let decl = respan(sp, ast::DeclLocal(local)); @respan(sp, ast::StmtDecl(@decl, ast::DUMMY_NODE_ID)) diff --git a/src/libsyntax/ext/expand.rs b/src/libsyntax/ext/expand.rs index 6c6bf520104..762363f3abe 100644 --- a/src/libsyntax/ext/expand.rs +++ b/src/libsyntax/ext/expand.rs @@ -669,7 +669,8 @@ fn expand_non_macro_stmt(s: &Stmt, fld: &mut MacroExpander) pat: pat, init: init, id: id, - span: span + span: span, + source: source, } = **local; // expand the pat (it might contain exprs... #:(o)> let expanded_pat = fld.fold_pat(pat); @@ -703,6 +704,7 @@ fn expand_non_macro_stmt(s: &Stmt, fld: &mut MacroExpander) init: new_init_opt, id: id, span: span, + source: source }; SmallVector::one(@Spanned { node: StmtDecl(@Spanned { -- cgit 1.4.1-3-g733a5