@@ -100,7 +100,7 @@ impl<'ast, 'sess, 'c> ModResolver<'ast, 'sess> {
100
100
visitor. visit_item ( & item) ;
101
101
for module_item in visitor. mods ( ) {
102
102
if let ast:: ItemKind :: Mod ( ref sub_mod) = module_item. item . node {
103
- self . visit_mod_inner ( & item, Cow :: Owned ( sub_mod. clone ( ) ) ) ?;
103
+ self . visit_mod_from_mac_inner ( & item, Cow :: Owned ( sub_mod. clone ( ) ) ) ?;
104
104
}
105
105
}
106
106
Ok ( ( ) )
@@ -114,13 +114,13 @@ impl<'ast, 'sess, 'c> ModResolver<'ast, 'sess> {
114
114
}
115
115
116
116
if let ast:: ItemKind :: Mod ( ref sub_mod) = item. node {
117
- self . visit_mod_inner ( item, Cow :: Owned ( sub_mod. clone ( ) ) ) ?;
117
+ self . visit_mod_from_mac_inner ( item, Cow :: Owned ( sub_mod. clone ( ) ) ) ?;
118
118
}
119
119
}
120
120
Ok ( ( ) )
121
121
}
122
122
123
- fn visit_mod_inner (
123
+ fn visit_mod_from_mac_inner (
124
124
& mut self ,
125
125
item : & ' c ast:: Item ,
126
126
sub_mod : Cow < ' ast , ast:: Mod > ,
@@ -140,7 +140,10 @@ impl<'ast, 'sess, 'c> ModResolver<'ast, 'sess> {
140
140
}
141
141
142
142
if let ast:: ItemKind :: Mod ( ref sub_mod) = item. node {
143
- self . visit_mod_inner ( item, Cow :: Borrowed ( sub_mod) ) ?;
143
+ let old_directory = self . directory . clone ( ) ;
144
+ self . visit_sub_mod ( item, & Cow :: Borrowed ( sub_mod) ) ?;
145
+ self . visit_mod_from_ast ( sub_mod) ?;
146
+ self . directory = old_directory;
144
147
}
145
148
}
146
149
Ok ( ( ) )
0 commit comments