summary refs log tree commit diff
path: root/compiler/rustc_resolve/src
diff options
context:
space:
mode:
authoryukang <moorekang@gmail.com>2023-07-07 09:49:39 +0800
committeryukang <moorekang@gmail.com>2023-07-07 10:18:20 +0800
commit9763472e2b162aeb56b4950a28d829a7e6dd85ee (patch)
treee58f112a040991a356d0a061d833b9b7278a6d39 /compiler/rustc_resolve/src
parent6f53e61887b5e918a69915e8f5a721c1f07b9874 (diff)
downloadrust-9763472e2b162aeb56b4950a28d829a7e6dd85ee.tar.gz
rust-9763472e2b162aeb56b4950a28d829a7e6dd85ee.zip
smart_resolve_partial_mod_path_errors should not suggest parent
Diffstat (limited to 'compiler/rustc_resolve/src')
-rw-r--r--compiler/rustc_resolve/src/late/diagnostics.rs7
1 files changed, 4 insertions, 3 deletions
diff --git a/compiler/rustc_resolve/src/late/diagnostics.rs b/compiler/rustc_resolve/src/late/diagnostics.rs
index cf1c1787cb5..73865f81b6d 100644
--- a/compiler/rustc_resolve/src/late/diagnostics.rs
+++ b/compiler/rustc_resolve/src/late/diagnostics.rs
@@ -350,9 +350,10 @@ impl<'a: 'ast, 'ast, 'tcx> LateResolutionVisitor<'a, '_, 'ast, 'tcx> {
                 .filter(|candidate| {
                     if let Some(def_id) = candidate.did &&
                         let Some(module) = self.r.get_module(def_id) {
-                            self.r.resolutions(module).borrow().iter().any(|(key, _r)| {
-                                key.ident.name == following_seg.ident.name
-                            })
+                                Some(def_id) != self.parent_scope.module.opt_def_id() &&
+                                self.r.resolutions(module).borrow().iter().any(|(key, _r)| {
+                                    key.ident.name == following_seg.ident.name
+                                })
                     } else {
                         false
                     }