aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPhilip Herron <herron.philip@googlemail.com>2025-04-18 11:37:55 +0100
committerPhilip Herron <philip.herron@embecosm.com>2025-04-18 14:01:03 +0000
commit0a34f7bb91855ac95c51219c89d4049c4d69f7b3 (patch)
tree3a7125d4b417cb1679bccabdf358bd7107937fca
parentf220fe8cf73f56421f2f5659054006e38c3cd2b1 (diff)
downloadgcc-0a34f7bb91855ac95c51219c89d4049c4d69f7b3.zip
gcc-0a34f7bb91855ac95c51219c89d4049c4d69f7b3.tar.gz
gcc-0a34f7bb91855ac95c51219c89d4049c4d69f7b3.tar.bz2
gccrs: Add test case to show ice is fixed
Fixes Rust-GCC#3652 gcc/testsuite/ChangeLog: * rust/compile/nr2/exclude: nr2 does not error on the T it should require Self::T * rust/compile/issue-3652.rs: New test. Signed-off-by: Philip Herron <herron.philip@googlemail.com>
-rw-r--r--gcc/testsuite/rust/compile/issue-3652.rs7
-rw-r--r--gcc/testsuite/rust/compile/nr2/exclude1
2 files changed, 8 insertions, 0 deletions
diff --git a/gcc/testsuite/rust/compile/issue-3652.rs b/gcc/testsuite/rust/compile/issue-3652.rs
new file mode 100644
index 0000000..537ca9f
--- /dev/null
+++ b/gcc/testsuite/rust/compile/issue-3652.rs
@@ -0,0 +1,7 @@
+trait Foo {
+ type T;
+ fn foo() -> T<<Self as Foo>::T>;
+ // { dg-error "could not resolve type path .T. .E0412." "" { target *-*-* } .-1 }
+}
+
+fn foo() {}
diff --git a/gcc/testsuite/rust/compile/nr2/exclude b/gcc/testsuite/rust/compile/nr2/exclude
index 5c52a3c..e5911b2 100644
--- a/gcc/testsuite/rust/compile/nr2/exclude
+++ b/gcc/testsuite/rust/compile/nr2/exclude
@@ -21,4 +21,5 @@ torture/name_resolve1.rs
issue-3568.rs
issue-3663.rs
issue-3671.rs
+issue-3652.rs
# please don't delete the trailing newline