about summary refs log tree commit diff
path: root/src/test
diff options
context:
space:
mode:
authorAlik Aslanyan <inline0@protonmail.com>2021-07-15 16:34:45 +0400
committerAlik Aslanyan <inline0@protonmail.com>2021-07-15 16:34:49 +0400
commitb69090102e409fd8139ab554fcd38e567fda470f (patch)
tree48687d34f889a34189694e01068b1c4313cfd289 /src/test
parent9c107816f7b351ea5b5043cdbec52901a77526de (diff)
downloadrust-b69090102e409fd8139ab554fcd38e567fda470f.tar.gz
rust-b69090102e409fd8139ab554fcd38e567fda470f.zip
Suggest full enum variant for local modules
Diffstat (limited to 'src/test')
-rw-r--r--src/test/ui/suggestions/suggest-full-enum-variant-for-local-module.rs10
-rw-r--r--src/test/ui/suggestions/suggest-full-enum-variant-for-local-module.stderr16
2 files changed, 26 insertions, 0 deletions
diff --git a/src/test/ui/suggestions/suggest-full-enum-variant-for-local-module.rs b/src/test/ui/suggestions/suggest-full-enum-variant-for-local-module.rs
new file mode 100644
index 00000000000..1dfc0786668
--- /dev/null
+++ b/src/test/ui/suggestions/suggest-full-enum-variant-for-local-module.rs
@@ -0,0 +1,10 @@
+mod option {
+    pub enum O<T> {
+        Some(T),
+        None,
+    }
+}
+
+fn main() {
+    let _: option::O<()> = (); //~ ERROR 9:28: 9:30: mismatched types [E0308]
+}
diff --git a/src/test/ui/suggestions/suggest-full-enum-variant-for-local-module.stderr b/src/test/ui/suggestions/suggest-full-enum-variant-for-local-module.stderr
new file mode 100644
index 00000000000..22a0ce1e91d
--- /dev/null
+++ b/src/test/ui/suggestions/suggest-full-enum-variant-for-local-module.stderr
@@ -0,0 +1,16 @@
+error[E0308]: mismatched types
+  --> $DIR/suggest-full-enum-variant-for-local-module.rs:9:28
+   |
+LL |     let _: option::O<()> = ();
+   |            -------------   ^^
+   |            |               |
+   |            |               expected enum `O`, found `()`
+   |            |               help: try using a variant of the expected enum: `option::O::Some(())`
+   |            expected due to this
+   |
+   = note:   expected enum `O<()>`
+           found unit type `()`
+
+error: aborting due to previous error
+
+For more information about this error, try `rustc --explain E0308`.