diff options
| author | bors <bors@rust-lang.org> | 2016-09-27 14:11:07 -0700 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2016-09-27 14:11:07 -0700 |
| commit | a059cb2f3344c0a9efae17dde3d0e16a55ce93db (patch) | |
| tree | f8c95278a99c33a5f92ae0f9e5ea4bfc0ecf47c6 /src/libsyntax/ext/base.rs | |
| parent | 322b5530ba8a74e0363243da5cdc3d0ac43762d7 (diff) | |
| parent | dfa69be38a3d232ebb0a548afff5e3560dd905ce (diff) | |
| download | rust-a059cb2f3344c0a9efae17dde3d0e16a55ce93db.tar.gz rust-a059cb2f3344c0a9efae17dde3d0e16a55ce93db.zip | |
Auto merge of #36601 - jseyfried:build_reduced_graph_in_expansion, r=nrc
Assign def ids and build the module graph during expansion r? @nrc
Diffstat (limited to 'src/libsyntax/ext/base.rs')
| -rw-r--r-- | src/libsyntax/ext/base.rs | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/src/libsyntax/ext/base.rs b/src/libsyntax/ext/base.rs index 495ad176542..5082f64ccbb 100644 --- a/src/libsyntax/ext/base.rs +++ b/src/libsyntax/ext/base.rs @@ -515,6 +515,7 @@ pub type NamedSyntaxExtension = (Name, SyntaxExtension); pub trait Resolver { fn next_node_id(&mut self) -> ast::NodeId; + fn get_module_scope(&mut self, id: ast::NodeId) -> Mark; fn visit_expansion(&mut self, mark: Mark, expansion: &Expansion); fn add_macro(&mut self, scope: Mark, def: ast::MacroDef); @@ -530,6 +531,7 @@ pub struct DummyResolver; impl Resolver for DummyResolver { fn next_node_id(&mut self) -> ast::NodeId { ast::DUMMY_NODE_ID } + fn get_module_scope(&mut self, _id: ast::NodeId) -> Mark { Mark::root() } fn visit_expansion(&mut self, _invoc: Mark, _expansion: &Expansion) {} fn add_macro(&mut self, _scope: Mark, _def: ast::MacroDef) {} @@ -567,6 +569,7 @@ pub struct ExtCtxt<'a> { pub ecfg: expand::ExpansionConfig<'a>, pub crate_root: Option<&'static str>, pub resolver: &'a mut Resolver, + pub resolve_err_count: usize, pub current_expansion: ExpansionData, } @@ -581,6 +584,7 @@ impl<'a> ExtCtxt<'a> { ecfg: ecfg, crate_root: None, resolver: resolver, + resolve_err_count: 0, current_expansion: ExpansionData { mark: Mark::root(), depth: 0, |
