Skip to content

derive-where can't handle repr(align). #125

@FractalFir

Description

@FractalFir

derive-where can't handle #[repr(align(n))].

This code compiles fine:

// Compiles :)
#[derive_where(Clone, Copy; T: Copy)]
enum Test<T>{
    Ok(T),
    Err,
}

derive-wherealso correctly handles repr(u8):

// Compiles :)
#[derive_where(Clone, Copy; T: Copy)]
#[repr(u8)]
enum Test<T>{
    Ok(T),
    Err,
}

However, adding repr(align(n)) to this struct stops the code from compiling:

#[derive_where(Clone, Copy; T: Copy)]
#[repr(align(4))]
enum Test<T>{
    Ok(T),
    Err,
}
error: expected `,`
 --> src/main.rs:3:13
  |
3 | #[repr(align(4))]
  |     

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions