Skip to content

Debuginfo changes causing ICE #55606

Closed
@sophiajt

Description

@sophiajt

A recent change to debug info (possibly 0db7abe) seems to be causing ICEs with code like the following:

#![feature(never_type)]
#![feature(nll)]

#[derive(Copy, Clone)]
pub struct Entity {
    private: std::num::NonZeroU32,
}

#[derive(Copy, Clone, PartialEq, Eq)]
pub struct Declaration;

impl TypeFamily for Declaration {
    type Base = Base;
    type Placeholder = !;

    fn intern_base_data(_: BaseKind<Self>) {}
}

#[derive(Copy, Clone)]
pub struct Base;

pub trait TypeFamily: Copy + 'static {
    type Base: Copy;
    type Placeholder: Copy;

    fn intern_base_data(_: BaseKind<Self>);
}

#[derive(Copy, Clone)]
pub enum BaseKind<F: TypeFamily> {
    Named(Entity),
    Placeholder(F::Placeholder),
    Error,
}

Compiled with:

rustc src/lib.rs -C debuginfo=2  --crate-type lib 

Edit: Platform info:

jonathan@pop-os:~/Source/lark/components/lark-ty$ rustc --version
rustc 1.31.0-nightly (de9666f12 2018-10-31)

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions