-
Notifications
You must be signed in to change notification settings - Fork 13.3k
ice: const parameter
'_/#0 ('_/#0/0) out of range when instantiating args=[]
#120793
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Labels
C-bug
Category: This is a bug.
F-anonymous_lifetime_in_impl_trait
`#![feature(anonymous_lifetime_in_impl_trait)]`
F-effects
`#![feature(effects)]`
I-ICE
Issue: The compiler panicked, giving an Internal Compilation Error (ICE) ❄️
requires-nightly
This issue requires a nightly compiler in some way.
S-bug-has-test
Status: This bug is tracked inside the repo by a `known-bug` test.
T-compiler
Relevant to the compiler team, which will review and decide on the PR/issue.
Comments
Minimized: // can't use build-fail, because this also fails check-fail, but
// the ICE from #120787 only reproduces on build-fail.
// compile-flags: --emit=mir
#![feature(effects)]
trait Dim {
fn dim() -> usize;
}
enum Dim3 {}
impl Dim for Dim3 {
fn dim(x: impl Sized) -> usize {
3
}
}
fn main() {
[0; Dim3::dim()];
} |
Region parameter out of range when substituting in region
Region parameter out of range when instantiating in region
Region parameter out of range when instantiating in region
const parameter
'_/#0 ('_/#0/0) out of range when instantiating args=[]
update:
|
rust-timer
added a commit
to rust-lang-ci/rust
that referenced
this issue
Jul 25, 2024
Rollup merge of rust-lang#128171 - compiler-errors:arg-compat, r=oli-obk Make sure that args are compatible in `resolve_associated_item` Implements a similar check to the one that we have in projection for GATs (rust-lang#102488, rust-lang#123240), where we check that the args of an impl item are compatible before returning it. This is done in `resolve_assoc_item`, which is backing `Instance::resolve`, so this is conceptually generalizing the check from GATs to methods/assoc consts. This is important to make sure that the inliner will only visit and substitute MIR bodies that are compatible w/ their trait definitions. This shouldn't happen in codegen, but there are a few ways to get the inliner to be invoked (via calls to `optimized_mir`) before codegen, namely polymorphization and CTFE. Fixes rust-lang#121957 Fixes rust-lang#120792 Fixes rust-lang#120793 Fixes rust-lang#121063
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Labels
C-bug
Category: This is a bug.
F-anonymous_lifetime_in_impl_trait
`#![feature(anonymous_lifetime_in_impl_trait)]`
F-effects
`#![feature(effects)]`
I-ICE
Issue: The compiler panicked, giving an Internal Compilation Error (ICE) ❄️
requires-nightly
This issue requires a nightly compiler in some way.
S-bug-has-test
Status: This bug is tracked inside the repo by a `known-bug` test.
T-compiler
Relevant to the compiler team, which will review and decide on the PR/issue.
full stderr (including backtrace)
The text was updated successfully, but these errors were encountered: