Add regression test for mono item collection ICE with generic_const_exprs#154547
Add regression test for mono item collection ICE with generic_const_exprs#154547jeanibarz wants to merge 1 commit intorust-lang:mainfrom
Conversation
This comment was marked as resolved.
This comment was marked as resolved.
This comment has been minimized.
This comment has been minimized.
16a45fb to
5c589b8
Compare
This comment has been minimized.
This comment has been minimized.
5c589b8 to
3ef77ce
Compare
|
r? rust-lang/compiler |
This comment has been minimized.
This comment has been minimized.
745fe6a to
6982ce5
Compare
…xprs Exercises -Clink-dead-code=true with generic_const_exprs and min_generic_const_args, which previously caused an ICE in mono item collection.
6982ce5 to
68ea4d5
Compare
|
|
||
| #![feature(min_generic_const_args, generic_const_exprs)] | ||
|
|
||
| type const L: usize = 4; |
There was a problem hiding this comment.
Do you have any reason why this line is different from one in provided code in the issue? #149035 (comment)
Ideally, we need to verify with that test that the ICE occurs without the fix in #152129.
There was a problem hiding this comment.
The original const L doesn't compile on current main, as #152129 both fixed the ICE and introduced type const syntax for free consts, so I had to adapt the reproducer.
I verified with rustup:
- nightly-2025-11-17 (same as the issue): const L ICEs in mono item collection
- nightly-2026-02-05 (day before MGCA: require #[type_const] on free consts too #152129 merged): const L still ICEs, type const is a parse error
- current nightly: const L gets a hard error, type const L compiles cleanly
So there's no nightly where type const exists and the ICE is still present, as the syntax was introduced by the same PR that fixed the bug. That means this test can't directly catch a revert of #152129 (the syntax would vanish too). It's more of a smoke test for the const-in-generic-arg + -Clink-dead-code=true path in mono item collection.
Happy to drop it if you don't think that's useful enough, or adjust the approach if you have something else in mind.
There was a problem hiding this comment.
I don't think we need to test with type const
So I think it would have been more appropriate to close the issue with obsolete instead of adding E-needs-test labels.
I'll close the issue and PR, thanks for your contribution :)
Regression test for #149035.
The ICE in mono item collection with
-Clink-dead-code=truewas fixed by #152129 but didn't get a test. Adapted the reproducer to usetype constsince const handling changed after the issue was filed.Closes #149035