https://gcc.gnu.org/bugzilla/show_bug.cgi?id=102342
--- Comment #1 from Rainer Orth <ro at gcc dot gnu.org> --- Created attachment 51660 --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=51660&action=edit proposed patch While testing a recent version of the modula-2 branch (386e7057d75043439f313085c4cbde8109459915), I developed the attached patch to fully address this issue, following the prove-of-concept one already included. With this patch, x86_64-pc-linux-gnu testresults (both -m64 and -m32 multilibs) are clean with the exception of Running target unix/-m32 FAIL: gm2/cpp/pass/subaddr.mod, -O FAIL: gm2/cpp/pass/subaddr.mod, -O -g FAIL: gm2/cpp/pass/subaddr.mod, -O3 -fomit-frame-pointer FAIL: gm2/cpp/pass/subaddr.mod, -O3 -fomit-frame-pointer -finline-functions FAIL: gm2/cpp/pass/subaddr.mod, -Os FAIL: gm2/cpp/pass/subaddr.mod, -g which is preexisting (PR modula2/102343). On i386-pc-solaris2.11, there are a few more failures, also preexisting.