Example: const1a.c

up: index
prev: const1.c
next: const2.c

    #include <inttypes.h>
    #include <stdio.h>
    #include "capprint.h"
    
    int main()
    {
        const int v;
        fprintf(stderr,"%" PTR_FMT "\n", sptr((void*)&v));
    }

Experimental data (what does this mean?)

cerberus-cheri-no-pnvi
cerberus-cheri-revocation-no-pnvi
cerberus-cheri-cornucopia-no-pnvi
 (@disabled, 0xffffe730 [rwRW,0xffffe730-0xffffe734])
 
cerberus-cheri
cerberus-cheri-revocation
cerberus-cheri-cornucopia
 (@80, 0xffffe730 [rwRW,0xffffe730-0xffffe734])
 
clang-riscv-O3-bounds-conservative
clang-riscv-O3-bounds-subobject-safe
 0x3fffdfff5c [rwRW,0x3fffdfff5c-0x3fffdfff60]
 
clang-riscv-O0-bounds-conservative
clang-riscv-O0-bounds-references-only
clang-riscv-O0-bounds-subobject-safe
clang-riscv-O0-bounds-aggressive
clang-riscv-O0-bounds-very-aggressive
clang-riscv-O0-bounds-everywhere-unsafe
 0x3fffdfff6c [rwRW,0x3fffdfff6c-0x3fffdfff70]
 
clang-morello-O3-bounds-conservative
clang-morello-O3-bounds-subobject-safe
 0xfffffff7ff3c [rwRW,0xfffffff7ff3c-0xfffffff7ff40]
 
clang-morello-O0-bounds-conservative
clang-morello-O0-bounds-references-only
clang-morello-O0-bounds-subobject-safe
clang-morello-O0-bounds-aggressive
clang-morello-O0-bounds-very-aggressive
clang-morello-O0-bounds-everywhere-unsafe
 0xfffffff7ff5c [rwRW,0xfffffff7ff5c-0xfffffff7ff60]
 
gcc-morello-O0
gcc-morello-O3
 0x7fffffdc [rwRW,0x7fffffdc-0x7fffffe0]