summaryrefslogtreecommitdiffstats
path: root/src/test/ui/let-else/let-else-no-double-error.rs
diff options
context:
space:
mode:
Diffstat (limited to 'src/test/ui/let-else/let-else-no-double-error.rs')
-rw-r--r--src/test/ui/let-else/let-else-no-double-error.rs12
1 files changed, 12 insertions, 0 deletions
diff --git a/src/test/ui/let-else/let-else-no-double-error.rs b/src/test/ui/let-else/let-else-no-double-error.rs
new file mode 100644
index 000000000..35dcdd3f6
--- /dev/null
+++ b/src/test/ui/let-else/let-else-no-double-error.rs
@@ -0,0 +1,12 @@
+// from rfc2005 test suite
+
+#![feature(let_else)]
+
+// Without caching type lookups in FnCtxt.resolve_ty_and_def_ufcs
+// the error below would be reported twice (once when checking
+// for a non-ref pattern, once when processing the pattern).
+
+fn main() {
+ let foo = 22;
+ let u32::XXX = foo else { return }; //~ ERROR: no associated item named `XXX` found for type `u32` in the current scope [E0599]
+}