https://gcc.gnu.org/bugzilla/show_bug.cgi?id=83729
--- Comment #4 from Georg-Johann Lay <gjl at gcc dot gnu.org> ---
(In reply to gandalf from comment #3)
> Another regression test case (compile with -O):
>
> void code_to_ascii(char buf[1], unsigned int code)
> {
> __attribute__((used))
> static const char __flash test[5]="ABCDE";
>
> static const char __flash code_tab[32]="0123456789ABCDEFGHJKLMNPRSTUWXYZ";
>
> buf[0]=code_tab[code];
> }
>
> Variable "code_tab" is incorrectly placed in section .rodata.
Different issue, likely a target thing. Filed as PR83801.