From a99268b1cc0069ba3d4ad177e8ab0cefc335b9ea Mon Sep 17 00:00:00 2001 From: Philip Herron Date: Wed, 26 Mar 2025 17:26:12 +0000 Subject: gccrs: Fix ICE when using super mid way though path Fixes Rust-GCC#3568 gcc/rust/ChangeLog: * resolve/rust-ast-resolve-path.cc (ResolvePath::resolve_path): check for super mid path gcc/testsuite/ChangeLog: * rust/compile/nr2/exclude: nr2 puts out a different error multiple times * rust/compile/issue-3568.rs: New test. Signed-off-by: Philip Herron --- gcc/testsuite/rust/compile/issue-3568.rs | 7 +++++++ gcc/testsuite/rust/compile/nr2/exclude | 1 + 2 files changed, 8 insertions(+) create mode 100644 gcc/testsuite/rust/compile/issue-3568.rs (limited to 'gcc/testsuite') diff --git a/gcc/testsuite/rust/compile/issue-3568.rs b/gcc/testsuite/rust/compile/issue-3568.rs new file mode 100644 index 0000000..222a174 --- /dev/null +++ b/gcc/testsuite/rust/compile/issue-3568.rs @@ -0,0 +1,7 @@ +pub type T = (); +mod foo { + pub use super::T; +} + +pub use foo::super::foo::S as T; +// { dg-error ".super. can only be used in start position" "" { target *-*-* } .-1 } diff --git a/gcc/testsuite/rust/compile/nr2/exclude b/gcc/testsuite/rust/compile/nr2/exclude index 71c2b68..9273bd1 100644 --- a/gcc/testsuite/rust/compile/nr2/exclude +++ b/gcc/testsuite/rust/compile/nr2/exclude @@ -36,4 +36,5 @@ torture/alt_patterns1.rs torture/loop4.rs torture/loop8.rs torture/name_resolve1.rs +issue-3568.rs # please don't delete the trailing newline -- cgit v1.1