Example: align3.c

up: index
prev: align2.c
next: align4.c

    #include <stdio.h>
    #include <stdalign.h>
    #include <inttypes.h>
    #include <assert.h>
    
    int main()
    {
        _Static_assert(alignof(intptr_t) == alignof(uintptr_t),"[u]intptr_t types must have same alignment");
        _Static_assert(alignof(intptr_t) == alignof(void*),"intptr_t and void* types must have same alignment");
    }

Experimental data (what does this mean?)

gcc-morello-O0
gcc-morello-O3
clang-morello-O0-bounds-conservative
clang-morello-O3-bounds-conservative
clang-morello-O0-bounds-references-only
clang-morello-O0-bounds-subobject-safe
clang-morello-O3-bounds-subobject-safe
clang-morello-O0-bounds-aggressive
clang-morello-O0-bounds-very-aggressive
clang-morello-O0-bounds-everywhere-unsafe
clang-riscv-O0-bounds-conservative
clang-riscv-O3-bounds-conservative
clang-riscv-O0-bounds-references-only
clang-riscv-O0-bounds-subobject-safe
clang-riscv-O3-bounds-subobject-safe
clang-riscv-O0-bounds-aggressive
clang-riscv-O0-bounds-very-aggressive
clang-riscv-O0-bounds-everywhere-unsafe
cerberus-cheri
cerberus-cheri-no-pnvi
cerberus-cheri-revocation
cerberus-cheri-revocation-no-pnvi
cerberus-cheri-cornucopia
cerberus-cheri-cornucopia-no-pnvi