Skip to content
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

regression 1.49: unexpected unsized tail ICE #79902

Closed
Mark-Simulacrum opened this issue Dec 10, 2020 · 4 comments · Fixed by #80132
Closed

regression 1.49: unexpected unsized tail ICE #79902

Mark-Simulacrum opened this issue Dec 10, 2020 · 4 comments · Fixed by #80132
Labels
A-traits Area: Trait system C-bug Category: This is a bug. I-ICE Issue: The compiler panicked, giving an Internal Compilation Error (ICE) ❄️ regression-from-stable-to-beta Performance or correctness regression from stable to beta. T-compiler Relevant to the compiler team, which will review and decide on the PR/issue.
Milestone

Comments

@Mark-Simulacrum
Copy link
Member

https://crater-reports.s3.amazonaws.com/beta-1.49-1/beta-2020-11-26/gh/folex.libp2p-multilang/log.txt

@rustbot modify labels: +regression-from-stable-to-beta I-ICE

@rustbot rustbot added I-ICE Issue: The compiler panicked, giving an Internal Compilation Error (ICE) ❄️ regression-from-stable-to-beta Performance or correctness regression from stable to beta. I-prioritize Issue: Indicates that prioritization has been requested for this issue. labels Dec 10, 2020
@Mark-Simulacrum Mark-Simulacrum added this to the 1.49.0 milestone Dec 10, 2020
@dillona
Copy link
Contributor

dillona commented Dec 11, 2020

searched nightlies: from nightly-2020-09-24 to nightly-2020-12-11
regressed nightly: nightly-2020-10-07
searched commits: from a1dfd24 to 98edd1f
regressed commit: 08e2d46

bisected with cargo-bisect-rustc v0.6.0

Host triple: aarch64-unknown-linux-gnu
Reproduce with:

cargo bisect-rustc

@Mark-Simulacrum
Copy link
Member Author

cc @matthewjasper -- seems like this one might be an actual bug #73905

@matthewjasper
Copy link
Contributor

Small case that I think shows this issue, it incorrectly fails to compile on beta/nightly.

trait A {
    type B;
}
trait M {}

struct G<T, U>(*const T, *const U);

impl<T, U> Clone for G<T, U> {
    fn clone(&self) -> Self {
        G { ..*self }
    }
}

impl<T, U> Copy for G<T, U::B>
where 
T: A<B = U>,
U: A
{}

impl A for () {
    type B = ();
}

fn is_m<T: M>(_: T) {}

fn main() {
    let x = G(&(), &());
    drop(x);
    drop(x);
}

@JohnTitor JohnTitor added A-traits Area: Trait system C-bug Category: This is a bug. T-compiler Relevant to the compiler team, which will review and decide on the PR/issue. labels Dec 15, 2020
@fanninpm
Copy link

Playground link of previous example

N.B. I haven't gotten it to ICE, so I can't add it to the glacier.

@bors bors closed this as completed in 1b6b06a Dec 19, 2020
@jyn514 jyn514 removed the I-prioritize Issue: Indicates that prioritization has been requested for this issue. label Feb 28, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
A-traits Area: Trait system C-bug Category: This is a bug. I-ICE Issue: The compiler panicked, giving an Internal Compilation Error (ICE) ❄️ regression-from-stable-to-beta Performance or correctness regression from stable to beta. T-compiler Relevant to the compiler team, which will review and decide on the PR/issue.
Projects
None yet
Development

Successfully merging a pull request may close this issue.

7 participants