From: Philip Herron <herron.phi...@googlemail.com>

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.phi...@googlemail.com>
---
 gcc/testsuite/rust/compile/issue-3652.rs | 7 +++++++
 gcc/testsuite/rust/compile/nr2/exclude   | 1 +
 2 files changed, 8 insertions(+)
 create mode 100644 gcc/testsuite/rust/compile/issue-3652.rs

diff --git a/gcc/testsuite/rust/compile/issue-3652.rs 
b/gcc/testsuite/rust/compile/issue-3652.rs
new file mode 100644
index 00000000000..537ca9f881a
--- /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 5c52a3cabab..e5911b2a6ac 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
-- 
2.49.0

Reply via email to