about summary refs log tree commit diff
path: root/compiler/rustc_resolve/src/diagnostics.rs
diff options
context:
space:
mode:
Diffstat (limited to 'compiler/rustc_resolve/src/diagnostics.rs')
-rw-r--r--compiler/rustc_resolve/src/diagnostics.rs15
1 files changed, 10 insertions, 5 deletions
diff --git a/compiler/rustc_resolve/src/diagnostics.rs b/compiler/rustc_resolve/src/diagnostics.rs
index 3af69b28780..d0a95e6b2ad 100644
--- a/compiler/rustc_resolve/src/diagnostics.rs
+++ b/compiler/rustc_resolve/src/diagnostics.rs
@@ -803,11 +803,16 @@ impl<'ra, 'tcx> Resolver<'ra, 'tcx> {
                     }
                     err.multipart_suggestion(msg, suggestions, applicability);
                 }
-                if let Some(ModuleOrUniformRoot::Module(module)) = module
-                    && let Some(module) = module.opt_def_id()
-                    && let Some(segment) = segment
-                {
-                    self.find_cfg_stripped(&mut err, &segment, module);
+
+                if let Some(segment) = segment {
+                    if let Some(ModuleOrUniformRoot::Module(module)) = module {
+                        let module =
+                            module.opt_def_id().unwrap_or_else(|| CRATE_DEF_ID.to_def_id());
+                        self.find_cfg_stripped(&mut err, &segment, module);
+                    } else {
+                        let module = CRATE_DEF_ID.to_def_id();
+                        self.find_cfg_stripped(&mut err, &segment, module);
+                    }
                 }
 
                 err