diff options
| author | Oliver Schneider <git-spam-no-reply9815368754983@oli-obk.de> | 2017-09-01 17:45:46 +0200 |
|---|---|---|
| committer | Oliver Schneider <git-spam-no-reply9815368754983@oli-obk.de> | 2017-09-04 11:03:19 +0200 |
| commit | c4d5a1e17ba26ef3c049548470f85538eb94edfc (patch) | |
| tree | cfeaa91f05c773d5a328434171860a63e22db09d /src/libsyntax_ext | |
| parent | a59a6d8a5687dd6aee871de0e7c9f734709ac544 (diff) | |
| download | rust-c4d5a1e17ba26ef3c049548470f85538eb94edfc.tar.gz rust-c4d5a1e17ba26ef3c049548470f85538eb94edfc.zip | |
Produce expansion info for more builtin macros
Diffstat (limited to 'src/libsyntax_ext')
| -rw-r--r-- | src/libsyntax_ext/cfg.rs | 1 | ||||
| -rw-r--r-- | src/libsyntax_ext/concat.rs | 1 | ||||
| -rw-r--r-- | src/libsyntax_ext/concat_idents.rs | 2 | ||||
| -rw-r--r-- | src/libsyntax_ext/env.rs | 1 |
4 files changed, 4 insertions, 1 deletions
diff --git a/src/libsyntax_ext/cfg.rs b/src/libsyntax_ext/cfg.rs index 98da49545f9..1d8dc406468 100644 --- a/src/libsyntax_ext/cfg.rs +++ b/src/libsyntax_ext/cfg.rs @@ -24,6 +24,7 @@ pub fn expand_cfg<'cx>(cx: &mut ExtCtxt, sp: Span, tts: &[tokenstream::TokenTree]) -> Box<base::MacResult + 'static> { + let sp = sp.with_ctxt(sp.ctxt().apply_mark(cx.current_expansion.mark)); let mut p = cx.new_parser_from_tts(tts); let cfg = panictry!(p.parse_meta_item()); diff --git a/src/libsyntax_ext/concat.rs b/src/libsyntax_ext/concat.rs index bfe18dc4060..c79e7867c5f 100644 --- a/src/libsyntax_ext/concat.rs +++ b/src/libsyntax_ext/concat.rs @@ -57,5 +57,6 @@ pub fn expand_syntax_ext(cx: &mut base::ExtCtxt, } } } + let sp = sp.with_ctxt(sp.ctxt().apply_mark(cx.current_expansion.mark)); base::MacEager::expr(cx.expr_str(sp, Symbol::intern(&accumulator))) } diff --git a/src/libsyntax_ext/concat_idents.rs b/src/libsyntax_ext/concat_idents.rs index 6f4c112acb6..8d0104e512b 100644 --- a/src/libsyntax_ext/concat_idents.rs +++ b/src/libsyntax_ext/concat_idents.rs @@ -92,6 +92,6 @@ pub fn expand_syntax_ext<'cx>(cx: &'cx mut ExtCtxt, Box::new(Result { ident: res, - span: sp, + span: sp.with_ctxt(sp.ctxt().apply_mark(cx.current_expansion.mark)), }) } diff --git a/src/libsyntax_ext/env.rs b/src/libsyntax_ext/env.rs index affebbabbbd..fcad065be52 100644 --- a/src/libsyntax_ext/env.rs +++ b/src/libsyntax_ext/env.rs @@ -32,6 +32,7 @@ pub fn expand_option_env<'cx>(cx: &'cx mut ExtCtxt, Some(v) => v, }; + let sp = sp.with_ctxt(sp.ctxt().apply_mark(cx.current_expansion.mark)); let e = match env::var(&*var.as_str()) { Err(..) => { cx.expr_path(cx.path_all(sp, |
