diff options
| author | Jeffrey Seyfried <jeffrey.seyfried@gmail.com> | 2016-03-08 21:50:01 +0000 |
|---|---|---|
| committer | Jeffrey Seyfried <jeffrey.seyfried@gmail.com> | 2016-03-08 21:50:20 +0000 |
| commit | ad28c28f469750c062ebf9907f8416f4ccb1ddda (patch) | |
| tree | 314170bcadb6671a3569d82ececdcc328358664b | |
| parent | 8b7c3f20e83de20518abb879f7a0e41b6e93414f (diff) | |
| download | rust-ad28c28f469750c062ebf9907f8416f4ccb1ddda.tar.gz rust-ad28c28f469750c062ebf9907f8416f4ccb1ddda.zip | |
Stop treating a type alias like a module or enum (preventing `use TypeAlias::*`)
| -rw-r--r-- | src/librustc_resolve/build_reduced_graph.rs | 8 |
1 files changed, 3 insertions, 5 deletions
diff --git a/src/librustc_resolve/build_reduced_graph.rs b/src/librustc_resolve/build_reduced_graph.rs index b3d7be4775e..e1eead8547e 100644 --- a/src/librustc_resolve/build_reduced_graph.rs +++ b/src/librustc_resolve/build_reduced_graph.rs @@ -331,10 +331,8 @@ impl<'a, 'b:'a, 'tcx:'b> GraphBuilder<'a, 'b, 'tcx> { // These items live in the type namespace. ItemTy(..) => { - let parent_link = ModuleParentLink(parent, name); let def = Def::TyAlias(self.ast_map.local_def_id(item.id)); - let module = self.new_module(parent_link, Some(def), false, is_public); - self.define(parent, name, TypeNS, (module, sp)); + self.define(parent, name, TypeNS, (def, sp, modifiers)); parent } @@ -505,7 +503,7 @@ impl<'a, 'b:'a, 'tcx:'b> GraphBuilder<'a, 'b, 'tcx> { } match def { - Def::Mod(_) | Def::ForeignMod(_) | Def::Enum(..) | Def::TyAlias(..) => { + Def::Mod(_) | Def::ForeignMod(_) | Def::Enum(..) => { debug!("(building reduced graph for external crate) building module {} {}", final_ident, is_public); @@ -562,7 +560,7 @@ impl<'a, 'b:'a, 'tcx:'b> GraphBuilder<'a, 'b, 'tcx> { let module = self.new_module(parent_link, Some(def), true, is_public); self.try_define(new_parent, name, TypeNS, (module, DUMMY_SP)); } - Def::AssociatedTy(..) => { + Def::TyAlias(..) | Def::AssociatedTy(..) => { debug!("(building reduced graph for external crate) building type {}", final_ident); self.try_define(new_parent, name, TypeNS, (def, DUMMY_SP, modifiers)); |
