Skip to content

Can't implement Copy for C style enums with negative discriminants that overflow into unspecified positive discriminants #23221

Closed
@mahkoh

Description

@mahkoh
fn main() { }

#[repr(C)]
#[derive(Copy)]
enum X {
    A = -1,
    B,
}
test5.rs:7:5: 7:6 error: Discriminant overflowed!
test5.rs:7     B,
               ^

Metadata

Metadata

Assignees

No one assigned

    Labels

    A-FFIArea: Foreign function interface (FFI)A-type-systemArea: Type system

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions