about summary refs log tree commit diff
path: root/src/test/compile-fail
diff options
context:
space:
mode:
authorManish Goregaokar <manishsmail@gmail.com>2016-07-28 16:20:10 +0530
committerManish Goregaokar <manishsmail@gmail.com>2016-07-28 20:33:06 +0530
commit43bcada39709ed9ebbd1b847db87c639b2eaf17c (patch)
treed304aac0fee70c2b732bb71b4b7a9988ff7f5f07 /src/test/compile-fail
parent80c998d0f1dfdde2ce5596bed4095675c5fe0f58 (diff)
parentd7a968eb1c8e1d4f84e52a1d1a302e40b1fc4aa9 (diff)
downloadrust-43bcada39709ed9ebbd1b847db87c639b2eaf17c.tar.gz
rust-43bcada39709ed9ebbd1b847db87c639b2eaf17c.zip
Rollup merge of #34963 - petrochenkov:useerr, r=jseyfried
resolve: Fix ICE and extra diagnostics happening when unresolved imports are used in patterns

Closes https://github.com/rust-lang/rust/issues/34933

r? @jseyfried
Diffstat (limited to 'src/test/compile-fail')
-rw-r--r--src/test/compile-fail/unresolved-import-recovery.rs27
1 files changed, 27 insertions, 0 deletions
diff --git a/src/test/compile-fail/unresolved-import-recovery.rs b/src/test/compile-fail/unresolved-import-recovery.rs
new file mode 100644
index 00000000000..8173f69191d
--- /dev/null
+++ b/src/test/compile-fail/unresolved-import-recovery.rs
@@ -0,0 +1,27 @@
+// Copyright 2016 The Rust Project Developers. See the COPYRIGHT
+// file at the top-level directory of this distribution and at
+// http://rust-lang.org/COPYRIGHT.
+//
+// Licensed under the Apache License, Version 2.0 <LICENSE-APACHE or
+// http://www.apache.org/licenses/LICENSE-2.0> or the MIT license
+// <LICENSE-MIT or http://opensource.org/licenses/MIT>, at your
+// option. This file may not be copied, modified, or distributed
+// except according to those terms.
+
+// Check that unresolved imports do not create additional errors and ICEs
+
+mod m {
+    pub use unresolved; //~ ERROR unresolved import `unresolved`
+
+    fn f() {
+        let unresolved = 0; // OK
+    }
+}
+
+fn main() {
+    match 0u8 {
+        m::unresolved => {} // OK
+        m::unresolved(..) => {} // OK
+        m::unresolved{..} => {} // OK
+    }
+}