about summary refs log tree commit diff
path: root/src/test
diff options
context:
space:
mode:
authorbors <bors@rust-lang.org>2021-01-02 12:40:32 +0000
committerbors <bors@rust-lang.org>2021-01-02 12:40:32 +0000
commit90ccf4f5adfb2562fc95c996b97faac7775a34bb (patch)
tree25efca2e10bef1ef48eb1b54f4f6deaa83121b3a /src/test
parent929f66af9bf587383ed6010403e738e79dfac0d6 (diff)
parent4172756c80abb79ccd8b6f43d37a797691414bcf (diff)
downloadrust-90ccf4f5adfb2562fc95c996b97faac7775a34bb.tar.gz
rust-90ccf4f5adfb2562fc95c996b97faac7775a34bb.zip
Auto merge of #80615 - m-ou-se:rollup-xz67at2, r=m-ou-se
Rollup of 6 pull requests

Successful merges:

 - #80546 (clippy fixes for librustdoc)
 - #80555 (Improve library tracking issue template)
 - #80574 (Clean bootstrap artifacts on `x.py clean`)
 - #80578 (improve unconditional_panic description)
 - #80599 (`const_generics_defaults`: don't ICE in the unimplemented parts)
 - #80613 (Diag: print enum variant instead of enum type)

Failed merges:

r? `@ghost`
`@rustbot` modify labels: rollup
Diffstat (limited to 'src/test')
-rw-r--r--src/test/ui/issues/issue-80607.rs10
-rw-r--r--src/test/ui/issues/issue-80607.stderr14
2 files changed, 24 insertions, 0 deletions
diff --git a/src/test/ui/issues/issue-80607.rs b/src/test/ui/issues/issue-80607.rs
new file mode 100644
index 00000000000..63f4df359b8
--- /dev/null
+++ b/src/test/ui/issues/issue-80607.rs
@@ -0,0 +1,10 @@
+// This tests makes sure the diagnostics print the offending enum variant, not just the type.
+pub enum Enum {
+    V1(i32),
+}
+
+pub fn foo(x: i32) -> Enum {
+    Enum::V1 { x } //~ ERROR `Enum::V1` has no field named `x`
+}
+
+fn main() {}
diff --git a/src/test/ui/issues/issue-80607.stderr b/src/test/ui/issues/issue-80607.stderr
new file mode 100644
index 00000000000..5375478942b
--- /dev/null
+++ b/src/test/ui/issues/issue-80607.stderr
@@ -0,0 +1,14 @@
+error[E0559]: variant `Enum::V1` has no field named `x`
+  --> $DIR/issue-80607.rs:7:16
+   |
+LL |     V1(i32),
+   |     -- `Enum::V1` defined here
+...
+LL |     Enum::V1 { x }
+   |     --------   ^ field does not exist
+   |     |
+   |     `Enum::V1` is a tuple variant, use the appropriate syntax: `Enum::V1(/* fields */)`
+
+error: aborting due to previous error
+
+For more information about this error, try `rustc --explain E0559`.