[PATCH v2 0/3] Inline helpers into Rust without full LTO

Miguel Ojeda miguel.ojeda.sandonis at gmail.com
Thu Mar 26 10:30:12 PDT 2026


On Thu, Mar 26, 2026 at 4:18 PM Russell King (Oracle)
<linux at armlinux.org.uk> wrote:
>
> I'm not sure if this is still true, but I believe it used to be the case
> that the -linux-gnueabi target has one behaviour for enums (fixed size)
> whereas -none-eabi, the size of the type depends on the range of values
> included in the enum.
>
> Certianly, when Arm Ltd were proposing EABI, EABI had the latter
> behaviour, and I think there were cases where Linux used "enum" in
> its UAPI.

Short enums? I see `c-enum-min-bits` in the armv7a-none-eabi built-in
`rustc` target, and indeed:

    #![no_std]

    #[repr(C)]
    enum T {
        A,
        B,
    }

    pub static S: usize = core::mem::size_of::<T>();

is 1 for that one, and 4 for the other.

Thanks!

Cheers,
Miguel



More information about the linux-um mailing list