diff options
author | Liam Naddell <liamnprg@gmail.com> | 2024-12-17 11:48:03 -0500 |
---|---|---|
committer | Arthur Cohen <arthur.cohen@embecosm.com> | 2025-03-21 12:55:44 +0100 |
commit | c4271707ce700bc87c2772fffa9aa1bc8432c6aa (patch) | |
tree | b104a6e63f7d0b80631a23cc2044892b7faa3ebb /gcc/testsuite/rust/compile/issue-3304.rs | |
parent | ea356df6265ed362b523c81bd0869f5a4b9d4034 (diff) | |
download | gcc-c4271707ce700bc87c2772fffa9aa1bc8432c6aa.zip gcc-c4271707ce700bc87c2772fffa9aa1bc8432c6aa.tar.gz gcc-c4271707ce700bc87c2772fffa9aa1bc8432c6aa.tar.bz2 |
gccrs: Fix NR2.0 compiler ICE caused by Generics in Enums
gcc/rust/ChangeLog:
* resolve/rust-late-name-resolver-2.0.cc:
Change the late name resolver to enter proper lexical scope during typechecking
* resolve/rust-late-name-resolver-2.0.h:
Add needed prototype to header
* resolve/rust-toplevel-name-resolver-2.0.cc:
Add generic parameters to enum's scoped RIB to allow for proper name resolution on types.
gcc/testsuite/ChangeLog:
* rust/compile/issue-3304.rs:
Add small test for generics+enums combination for NR2.0
Signed-off-by: Liam Naddell <liam.naddell@mail.utoronto.ca>
Diffstat (limited to 'gcc/testsuite/rust/compile/issue-3304.rs')
-rw-r--r-- | gcc/testsuite/rust/compile/issue-3304.rs | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/gcc/testsuite/rust/compile/issue-3304.rs b/gcc/testsuite/rust/compile/issue-3304.rs new file mode 100644 index 0000000..6ab614f --- /dev/null +++ b/gcc/testsuite/rust/compile/issue-3304.rs @@ -0,0 +1,10 @@ +// { dg-additional-options "-frust-name-resolution-2.0" } +#[lang = "sized"] +trait Sized {} + +pub enum ROption<T> { + RSome(T), + RNone, +} + +fn main() {} |