]> git.ipfire.org Git - thirdparty/gcc.git/commitdiff
gccrs: Add globbing name resolution 2.0 test
authorPierre-Emmanuel Patry <pierre-emmanuel.patry@embecosm.com>
Tue, 26 Mar 2024 09:58:53 +0000 (10:58 +0100)
committerArthur Cohen <arthur.cohen@embecosm.com>
Thu, 1 Aug 2024 14:52:28 +0000 (16:52 +0200)
Add a few test for globbing to highlight function call ambiguities.

gcc/testsuite/ChangeLog:

* rust/compile/name_resolution23.rs: New test.
* rust/compile/name_resolution24.rs: New test.

Signed-off-by: Pierre-Emmanuel Patry <pierre-emmanuel.patry@embecosm.com>
gcc/testsuite/rust/compile/name_resolution23.rs [new file with mode: 0644]
gcc/testsuite/rust/compile/name_resolution24.rs [new file with mode: 0644]

diff --git a/gcc/testsuite/rust/compile/name_resolution23.rs b/gcc/testsuite/rust/compile/name_resolution23.rs
new file mode 100644 (file)
index 0000000..50b8e81
--- /dev/null
@@ -0,0 +1,19 @@
+// { dg-options "-frust-name-resolution-2.0" }
+
+mod a {
+    pub mod b {
+        pub fn foo() {}
+        pub fn bar() {}
+        pub fn baz() {}
+    }
+    pub fn baz() {}
+}
+
+use a::b::*;
+use a::baz;
+
+pub fn func() {
+    baz();
+    foo();
+    bar();
+}
diff --git a/gcc/testsuite/rust/compile/name_resolution24.rs b/gcc/testsuite/rust/compile/name_resolution24.rs
new file mode 100644 (file)
index 0000000..f4eb7b2
--- /dev/null
@@ -0,0 +1,15 @@
+// { dg-options "-frust-name-resolution-2.0" }
+
+mod a {
+    pub mod b {
+        pub fn baz() {}
+    }
+    pub fn baz() {}
+}
+
+use a::b::*;
+use a::*;
+
+pub fn func() {
+    baz(); // { dg-error ".baz. is ambiguous .E0659." }
+}