about summary refs log tree commit diff
diff options
context:
space:
mode:
authorOli Scherer <git-spam-no-reply9815368754983@oli-obk.de>2024-05-28 06:32:35 +0000
committerOli Scherer <git-spam-no-reply9815368754983@oli-obk.de>2024-06-04 15:32:37 +0000
commit14f9c63759b67ad725dbecb003bcb7752fc92d69 (patch)
tree1d71bb9431af95fbf7ca97de122410d2caa6624c
parent5e8df95dbb445b2891610a9e46ce31c2b615bc09 (diff)
downloadrust-14f9c63759b67ad725dbecb003bcb7752fc92d69.tar.gz
rust-14f9c63759b67ad725dbecb003bcb7752fc92d69.zip
Show that it will pick up the entirely wrong function as a private candidate
-rw-r--r--src/tools/tidy/src/ui_tests.rs2
-rw-r--r--tests/ui/issues/issue-53498.different_name.stderr (renamed from tests/ui/issues/issue-53498.stderr)2
-rw-r--r--tests/ui/issues/issue-53498.rs9
-rw-r--r--tests/ui/issues/issue-53498.same_name.stderr12
4 files changed, 22 insertions, 3 deletions
diff --git a/src/tools/tidy/src/ui_tests.rs b/src/tools/tidy/src/ui_tests.rs
index cce0fb2c1a2..37ce335c9a3 100644
--- a/src/tools/tidy/src/ui_tests.rs
+++ b/src/tools/tidy/src/ui_tests.rs
@@ -15,7 +15,7 @@ use std::path::{Path, PathBuf};
 const ENTRY_LIMIT: u32 = 900;
 // FIXME: The following limits should be reduced eventually.
 
-const ISSUES_ENTRY_LIMIT: u32 = 1674;
+const ISSUES_ENTRY_LIMIT: u32 = 1675;
 
 const EXPECTED_TEST_FILE_EXTENSIONS: &[&str] = &[
     "rs",     // test source files
diff --git a/tests/ui/issues/issue-53498.stderr b/tests/ui/issues/issue-53498.different_name.stderr
index 61a1aedf508..45ee858ac92 100644
--- a/tests/ui/issues/issue-53498.stderr
+++ b/tests/ui/issues/issue-53498.different_name.stderr
@@ -1,5 +1,5 @@
 error[E0624]: associated function `foo` is private
-  --> $DIR/issue-53498.rs:16:27
+  --> $DIR/issue-53498.rs:21:27
    |
 LL |         fn foo() {}
    |         -------- private associated function defined here
diff --git a/tests/ui/issues/issue-53498.rs b/tests/ui/issues/issue-53498.rs
index 9e0437c46f4..816d3f9e448 100644
--- a/tests/ui/issues/issue-53498.rs
+++ b/tests/ui/issues/issue-53498.rs
@@ -1,3 +1,5 @@
+//@ revisions: same_name different_name
+
 pub mod test {
     pub struct A;
     pub struct B;
@@ -8,10 +10,15 @@ pub mod test {
     }
 
     impl Foo<B> {
+        #[cfg(same_name)]
         fn foo() {}
+        #[cfg(different_name)]
+        fn bar() {}
     }
 }
 
 fn main() {
-    test::Foo::<test::B>::foo(); //~ ERROR associated function `foo` is private
+    test::Foo::<test::B>::foo();
+    //[same_name]~^ ERROR associated function `foo` is private
+    //[different_name]~^^ ERROR associated function `foo` is private
 }
diff --git a/tests/ui/issues/issue-53498.same_name.stderr b/tests/ui/issues/issue-53498.same_name.stderr
new file mode 100644
index 00000000000..45ee858ac92
--- /dev/null
+++ b/tests/ui/issues/issue-53498.same_name.stderr
@@ -0,0 +1,12 @@
+error[E0624]: associated function `foo` is private
+  --> $DIR/issue-53498.rs:21:27
+   |
+LL |         fn foo() {}
+   |         -------- private associated function defined here
+...
+LL |     test::Foo::<test::B>::foo();
+   |                           ^^^ private associated function
+
+error: aborting due to 1 previous error
+
+For more information about this error, try `rustc --explain E0624`.