File tree Expand file tree Collapse file tree
Expand file tree Collapse file tree Original file line number Diff line number Diff line change @@ -2943,6 +2943,7 @@ impl<'a> Resolver<'a> {
29432943
29442944 let mut lookup_results = Vec :: new ( ) ;
29452945 let mut worklist = Vec :: new ( ) ;
2946+ let mut seen_modules = FxHashSet ( ) ;
29462947 worklist. push ( ( self . graph_root , Vec :: new ( ) , false ) ) ;
29472948
29482949 while let Some ( ( in_module,
@@ -2989,7 +2990,7 @@ impl<'a> Resolver<'a> {
29892990 if !in_module_is_extern || name_binding. vis == ty:: Visibility :: Public {
29902991 // add the module to the lookup
29912992 let is_extern = in_module_is_extern || name_binding. is_extern_crate ( ) ;
2992- if !worklist . iter ( ) . any ( | & ( m , .. ) | m . def ( ) == module . def ( ) ) {
2993+ if seen_modules . insert ( module . def_id ( ) . unwrap ( ) ) {
29932994 worklist. push ( ( module, path_segments, is_extern) ) ;
29942995 }
29952996 }
Original file line number Diff line number Diff line change 1010
1111// aux-build:recursive_reexports.rs
1212
13- fn f ( ) -> recursive_reexports:: S { } //~ ERROR undeclared
13+ extern crate recursive_reexports;
14+
15+ fn f ( ) -> recursive_reexports:: S { } //~ ERROR type name `recursive_reexports::S` is undefined
1416
1517fn main ( ) { }
You can’t perform that action at this time.
0 commit comments