From: Arthur Cohen Date: Tue, 27 Jun 2023 13:56:04 +0000 (+0200) Subject: gccrs: nr2.0: Add complex testcases X-Git-Tag: basepoints/gcc-15~2371 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=1213bb4686cd75643294d35619c97801fccf4810;p=thirdparty%2Fgcc.git gccrs: nr2.0: Add complex testcases 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 --- diff --git a/gcc/testsuite/rust/compile/name_resolution1.rs b/gcc/testsuite/rust/compile/name_resolution1.rs new file mode 100644 index 000000000000..4f5d2d42cc4d --- /dev/null +++ b/gcc/testsuite/rust/compile/name_resolution1.rs @@ -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 index 000000000000..343f6282a887 --- /dev/null +++ b/gcc/testsuite/rust/compile/name_resolution2.rs @@ -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 index 000000000000..ef36c094594a --- /dev/null +++ b/gcc/testsuite/rust/compile/name_resolution3.rs @@ -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 index 000000000000..1c138e837b24 --- /dev/null +++ b/gcc/testsuite/rust/compile/name_resolution4.rs @@ -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 index 000000000000..f91c5d57f09b --- /dev/null +++ b/gcc/testsuite/rust/compile/name_resolution5.rs @@ -0,0 +1,15 @@ +fn bar() { + foo(); + + fn foo() { + fn bar2() { + foo(); + } + + bar2(); + } +} + +fn main() { + bar(); +}