about summary refs log tree commit diff
diff options
context:
space:
mode:
authorJeffrey Seyfried <jeffrey.seyfried@gmail.com>2016-02-19 00:42:30 +0000
committerJeffrey Seyfried <jeffrey.seyfried@gmail.com>2016-02-19 00:43:52 +0000
commit08b909719790e40f7feaab4b314893d178e892ea (patch)
treeeb609615c5e8c74bd4da967c243cb1ebaff0219b
parent1b5d2f21d65bcb9045d86dc952cadf2e52e6eb23 (diff)
downloadrust-08b909719790e40f7feaab4b314893d178e892ea.tar.gz
rust-08b909719790e40f7feaab4b314893d178e892ea.zip
Improve dummy bindings for unresolved imports
-rw-r--r--src/librustc_resolve/resolve_imports.rs2
-rw-r--r--src/test/compile-fail/import.rs2
2 files changed, 3 insertions, 1 deletions
diff --git a/src/librustc_resolve/resolve_imports.rs b/src/librustc_resolve/resolve_imports.rs
index f21ffb9b9a1..e0bd4867a7f 100644
--- a/src/librustc_resolve/resolve_imports.rs
+++ b/src/librustc_resolve/resolve_imports.rs
@@ -218,6 +218,8 @@ impl<'a, 'b:'a, 'tcx:'b> ImportResolver<'a, 'b, 'tcx> {
                 kind: NameBindingKind::Def(Def::Err),
                 span: None,
             });
+            let dummy_binding =
+                self.resolver.new_name_binding(e.import_directive.import(dummy_binding));
 
             let _ = e.source_module.try_define_child(target, ValueNS, dummy_binding);
             let _ = e.source_module.try_define_child(target, TypeNS, dummy_binding);
diff --git a/src/test/compile-fail/import.rs b/src/test/compile-fail/import.rs
index 390bba23580..ff93cd0f066 100644
--- a/src/test/compile-fail/import.rs
+++ b/src/test/compile-fail/import.rs
@@ -19,6 +19,6 @@ mod zed {
 }
 
 fn main() {
-    zed::foo(); // Check that this does not panic. Ideally, it would be a privacy error.
+    zed::foo(); //~ ERROR unresolved name
     bar();
 }