]> git.ipfire.org Git - thirdparty/gcc.git/commitdiff
gccrs: nr2.0: Add complex testcases
authorArthur Cohen <arthur.cohen@embecosm.com>
Tue, 27 Jun 2023 13:56:04 +0000 (15:56 +0200)
committerArthur Cohen <arthur.cohen@embecosm.com>
Tue, 16 Jan 2024 17:49:35 +0000 (18:49 +0100)
gcc/testsuite/ChangeLog:

* rust/compile/name_resolution1.rs: New test.
* rust/compile/name_resolution2.rs: New test.
* rust/compile/name_resolution3.rs: New test.
* rust/compile/name_resolution4.rs: New test.
* rust/compile/name_resolution5.rs: New test.

Co-authored-by: GuillaumeGomez <guillaume1.gomez@gmail.com>
gcc/testsuite/rust/compile/name_resolution1.rs [new file with mode: 0644]
gcc/testsuite/rust/compile/name_resolution2.rs [new file with mode: 0644]
gcc/testsuite/rust/compile/name_resolution3.rs [new file with mode: 0644]
gcc/testsuite/rust/compile/name_resolution4.rs [new file with mode: 0644]
gcc/testsuite/rust/compile/name_resolution5.rs [new file with mode: 0644]

diff --git a/gcc/testsuite/rust/compile/name_resolution1.rs b/gcc/testsuite/rust/compile/name_resolution1.rs
new file mode 100644 (file)
index 0000000..4f5d2d4
--- /dev/null
@@ -0,0 +1,9 @@
+fn outer() {
+    inner();
+
+    fn inner() {}
+}
+
+fn main() {
+    outer();
+}
diff --git a/gcc/testsuite/rust/compile/name_resolution2.rs b/gcc/testsuite/rust/compile/name_resolution2.rs
new file mode 100644 (file)
index 0000000..343f628
--- /dev/null
@@ -0,0 +1,13 @@
+struct Bar;
+
+trait Foo {
+    fn bar(&self) {} // { dg-warning "unused name" }
+}
+
+pub fn outer() {
+    impl Foo for Bar {}
+}
+
+fn main() {
+    Bar.bar();
+}
diff --git a/gcc/testsuite/rust/compile/name_resolution3.rs b/gcc/testsuite/rust/compile/name_resolution3.rs
new file mode 100644 (file)
index 0000000..ef36c09
--- /dev/null
@@ -0,0 +1,9 @@
+pub const BAR: u32 = { // { dg-warning "unused name" }
+    let ret = outer();
+
+    const fn outer() -> u32 {
+        0
+    }
+
+    ret
+};
diff --git a/gcc/testsuite/rust/compile/name_resolution4.rs b/gcc/testsuite/rust/compile/name_resolution4.rs
new file mode 100644 (file)
index 0000000..1c138e8
--- /dev/null
@@ -0,0 +1,13 @@
+trait Foo {
+    fn foo(&self) {} // { dg-warning "unused name" }
+}
+
+struct Bar;
+
+pub fn bar() {
+    impl Foo for Bar {}
+}
+
+fn main() {
+    Bar.foo();
+}
diff --git a/gcc/testsuite/rust/compile/name_resolution5.rs b/gcc/testsuite/rust/compile/name_resolution5.rs
new file mode 100644 (file)
index 0000000..f91c5d5
--- /dev/null
@@ -0,0 +1,15 @@
+fn bar() {
+    foo();
+
+    fn foo() {
+        fn bar2() {
+            foo();
+        }
+
+        bar2();
+    }
+}
+
+fn main() {
+    bar();
+}