Microcontrollers running code loaded in RAM will have rodata linked into that RAM. Just takes an accidental cast to start writing them.

True. All the more reason to make it an error, IMHO.