diff options
| author | bors <bors@rust-lang.org> | 2017-05-25 01:51:35 +0000 |
|---|---|---|
| committer | bors <bors@rust-lang.org> | 2017-05-25 01:51:35 +0000 |
| commit | cf747fcbf716a8afced9d23aa15bb47d93805209 (patch) | |
| tree | a2215e4dd219883e96acebbdcc24257c99d79133 /src/libsyntax/ext | |
| parent | 5b13bff5203c1bdc6ac6dc87f69b5359a9503078 (diff) | |
| parent | d429b495a4bfba26d2c18fd9e140e17a787538d8 (diff) | |
| download | rust-cf747fcbf716a8afced9d23aa15bb47d93805209.tar.gz rust-cf747fcbf716a8afced9d23aa15bb47d93805209.zip | |
Auto merge of #42212 - Mark-Simulacrum:rollup, r=Mark-Simulacrum
Rollup of 15 pull requests - Successful merges: #41980, #42071, #42120, #42134, #42141, #42142, #42149, #42150, #42159, #42177, #42186, #42191, #42195, #42198, #42211 - Failed merges:
Diffstat (limited to 'src/libsyntax/ext')
| -rw-r--r-- | src/libsyntax/ext/tt/macro_parser.rs | 8 | ||||
| -rw-r--r-- | src/libsyntax/ext/tt/macro_rules.rs | 4 |
2 files changed, 8 insertions, 4 deletions
diff --git a/src/libsyntax/ext/tt/macro_parser.rs b/src/libsyntax/ext/tt/macro_parser.rs index bf66aa0f00b..0b6a2eb536a 100644 --- a/src/libsyntax/ext/tt/macro_parser.rs +++ b/src/libsyntax/ext/tt/macro_parser.rs @@ -418,9 +418,13 @@ fn inner_parse_loop(sess: &ParseSess, Success(()) } -pub fn parse(sess: &ParseSess, tts: TokenStream, ms: &[TokenTree], directory: Option<Directory>) +pub fn parse(sess: &ParseSess, + tts: TokenStream, + ms: &[TokenTree], + directory: Option<Directory>, + recurse_into_modules: bool) -> NamedParseResult { - let mut parser = Parser::new(sess, tts, directory, true); + let mut parser = Parser::new(sess, tts, directory, recurse_into_modules, true); let mut cur_eis = SmallVector::one(initial_matcher_pos(ms.to_owned(), parser.span.lo)); let mut next_eis = Vec::new(); // or proceed normally diff --git a/src/libsyntax/ext/tt/macro_rules.rs b/src/libsyntax/ext/tt/macro_rules.rs index a208f530602..73494d47fee 100644 --- a/src/libsyntax/ext/tt/macro_rules.rs +++ b/src/libsyntax/ext/tt/macro_rules.rs @@ -121,7 +121,7 @@ fn generic_extension<'cx>(cx: &'cx mut ExtCtxt, path: cx.current_expansion.module.directory.clone(), ownership: cx.current_expansion.directory_ownership, }; - let mut p = Parser::new(cx.parse_sess(), tts, Some(directory), false); + let mut p = Parser::new(cx.parse_sess(), tts, Some(directory), true, false); p.root_module_name = cx.current_expansion.module.mod_path.last() .map(|id| id.name.as_str().to_string()); @@ -192,7 +192,7 @@ pub fn compile(sess: &ParseSess, features: &RefCell<Features>, def: &ast::Item) ast::ItemKind::MacroDef(ref body) => body.clone().into(), _ => unreachable!(), }; - let argument_map = match parse(sess, body, &argument_gram, None) { + let argument_map = match parse(sess, body, &argument_gram, None, true) { Success(m) => m, Failure(sp, tok) => { let s = parse_failure_msg(tok); |
