https://gcc.gnu.org/bugzilla/show_bug.cgi?id=89148
--- Comment #2 from Georg-Johann Lay <gjl at gcc dot gnu.org> --- Some remarks: 1. There are AVR devices that don't support named address spaces. You will run into ICEs with this approach. You'll have to disable it for respective avr families. 2. The patch sets non-generic address-spaces for objects / types used in the C++ front-end, and that front-end does not support named address-spaces. How is it ensured that all transformations that take place in the C++ front-end handle ASes correctly / consistently? 3. In the case there are problems, the user should be able to switch the feature off by a command-line option. This option requires documentation, in particular it's not an optimization option because it changes the ABI. 4. The plugin must be built / installed. So I'd expect some extensions to the build system like t-avr?