]> git.lizzy.rs Git - rust.git/commitdiff
Add the test case mentioned in #74236
authorDan Aloni <alonid@gmail.com>
Sat, 11 Jul 2020 11:42:08 +0000 (14:42 +0300)
committerDan Aloni <alonid@gmail.com>
Sat, 11 Jul 2020 11:53:04 +0000 (14:53 +0300)
src/test/ui/issues/issue-74236/auxiliary/dep.rs [new file with mode: 0644]
src/test/ui/issues/issue-74236/main.rs [new file with mode: 0644]
src/test/ui/issues/issue-74236/main.stderr [new file with mode: 0644]

diff --git a/src/test/ui/issues/issue-74236/auxiliary/dep.rs b/src/test/ui/issues/issue-74236/auxiliary/dep.rs
new file mode 100644 (file)
index 0000000..45f2601
--- /dev/null
@@ -0,0 +1,8 @@
+// edition:2018
+
+mod private { pub struct Pub; }
+
+// Reexport built-in attribute without a DefId (requires Rust 2018).
+pub use cfg_attr as attr;
+// This export needs to be after the built-in attribute to trigger the bug.
+pub use private::Pub as Renamed;
diff --git a/src/test/ui/issues/issue-74236/main.rs b/src/test/ui/issues/issue-74236/main.rs
new file mode 100644 (file)
index 0000000..daa7cfc
--- /dev/null
@@ -0,0 +1,9 @@
+// edition:2018
+// aux-build:dep.rs
+// compile-flags:--extern dep
+
+fn main() {
+    // Trigger an error that will print the path of dep::private::Pub (as "dep::Renamed").
+    let () = dep::Renamed;
+    //~^ ERROR mismatched types
+}
diff --git a/src/test/ui/issues/issue-74236/main.stderr b/src/test/ui/issues/issue-74236/main.stderr
new file mode 100644 (file)
index 0000000..51d4833
--- /dev/null
@@ -0,0 +1,11 @@
+error[E0308]: mismatched types
+  --> $DIR/main.rs:7:9
+   |
+LL |     let () = dep::Renamed;
+   |         ^^   ------------ this expression has type `dep::Renamed`
+   |         |
+   |         expected struct `dep::Renamed`, found `()`
+
+error: aborting due to previous error
+
+For more information about this error, try `rustc --explain E0308`.