-
Notifications
You must be signed in to change notification settings - Fork 12.6k
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
ICE: src\librustc\ty\subst.rs:496: Region parameter out of range when substituting in region 'a #69136
Labels
C-bug
Category: This is a bug.
F-type_alias_impl_trait
`#[feature(type_alias_impl_trait)]`
glacier
ICE tracked in rust-lang/glacier.
I-ICE
Issue: The compiler panicked, giving an Internal Compilation Error (ICE) ❄️
requires-nightly
This issue requires a nightly compiler in some way.
T-compiler
Relevant to the compiler team, which will review and decide on the PR/issue.
Comments
steffahn
added
C-bug
Category: This is a bug.
I-ICE
Issue: The compiler panicked, giving an Internal Compilation Error (ICE) ❄️
T-compiler
Relevant to the compiler team, which will review and decide on the PR/issue.
labels
Feb 13, 2020
jonas-schievink
added
F-type_alias_impl_trait
`#[feature(type_alias_impl_trait)]`
requires-nightly
This issue requires a nightly compiler in some way.
labels
Feb 13, 2020
steffahn
changed the title
ICE: Region parameter out of range when substituting in region 'a
ICE: src\librustc\ty\subst.rs:496: Region parameter out of range when substituting in region 'a
Feb 14, 2020
Aaron1011
added a commit
to Aaron1011/rust
that referenced
this issue
Feb 17, 2020
Fixes rust-lang#69136 Previously, lifetime resolution errors would cause an error to be emitted, but would not mark the parent type as 'tainted' in any way. We usually abort compilation before this becomes an issue - however, opaque types can cause us to type-check function bodies before such an abort occurs. Ths can result in trying to instantiate opaque types that have invalid computed generics. Currently, this only causes issues for nested opaque types, but there's no reason to expect the computed generics to be sane when we had unresolved lifetimes (which can result in extra lifetime parameters getting added to the generics). This commit tracks 'unresolved lifetime' errors that occur during lifetime resolution. When we type-check an item, we bail out and return `tcx.types.err` if a lifetime error was reported for that type. This causes us to skip type-checking of types affected by the lifetime error, while still checking unrelated types. Additionally, we now check for errors in 'parent' opaque types (if such a 'parent' exists) when collecting constraints for opaque types. This reflects the fact that opaque types inherit generics from 'parent' opaque types - if an error ocurred while type-checking the parent, we don't attempt to type-check the child.
RalfJung
added a commit
to RalfJung/rust
that referenced
this issue
Jun 11, 2020
…=nikomatsakis Clean up type alias impl trait implementation - Removes special case for top-level impl trait - Removes associated opaque types - Forbid lifetime elision in let position impl trait. This is consistent with the behavior for inferred types. - Handle lifetimes in type alias impl trait more uniformly with other parameters cc rust-lang#69323 cc rust-lang#63063 Closes rust-lang#57188 Closes rust-lang#62988 Closes rust-lang#69136
flip1995
pushed a commit
to flip1995/rust
that referenced
this issue
Jun 23, 2020
…ikomatsakis Clean up type alias impl trait implementation - Removes special case for top-level impl trait - Removes associated opaque types - Forbid lifetime elision in let position impl trait. This is consistent with the behavior for inferred types. - Handle lifetimes in type alias impl trait more uniformly with other parameters cc rust-lang#69323 cc rust-lang#63063 Closes rust-lang#57188 Closes rust-lang#62988 Closes rust-lang#69136 Closes rust-lang#73061
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-type_alias_impl_trait
`#[feature(type_alias_impl_trait)]`
glacier
ICE tracked in rust-lang/glacier.
I-ICE
Issue: The compiler panicked, giving an Internal Compilation Error (ICE) ❄️
requires-nightly
This issue requires a nightly compiler in some way.
T-compiler
Relevant to the compiler team, which will review and decide on the PR/issue.
Code
Meta
Appears since
nightly-2020-02-14
. More precisely, the ICE appears since #69008 was merged.Possibly related to #67844.
Note that the code should not compile.
Error output
Backtrace
The text was updated successfully, but these errors were encountered: