Skip to content

rustc stack overflow in adt::represent_type with a non-representable data type #26548

Closed
@arielb1

Description

@arielb1
trait Mirror { type It; }
impl<T> Mirror for T { type It = Self; }
struct S(Option<<S as Mirror>::It>);

fn main() {
    let s = S(None);
}

Repeating segment:

#35 0x00007ffff633e93c in vec::Vec$LT$T$GT$.FromIterator$LT$T$GT$::from_iter::h4423171067686251210 () from /usr/local/lib/librustc_trans-11582ce5.so
#36 0x00007ffff63331c9 in trans::adt::mk_struct::h803bb718ce789c5efre () from /usr/local/lib/librustc_trans-11582ce5.so
#37 0x00007ffff6331120 in trans::adt::represent_type_uncached::h958d03c464d97ef1oZd () from /usr/local/lib/librustc_trans-11582ce5.so
#38 0x00007ffff632f2eb in trans::adt::represent_type::hf8312c9646d1eb27MPd () from /usr/local/lib/librustc_trans-11582ce5.so
#39 0x00007ffff633c5c5 in trans::type_of::sizing_type_of::h1b06c66211779b2fBXL () from /usr/local/lib/librustc_trans-11582ce5.so

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions