https://gcc.gnu.org/bugzilla/show_bug.cgi?id=88951
Jakub Jelinek <jakub at gcc dot gnu.org> changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |jakub at gcc dot gnu.org --- Comment #3 from Jakub Jelinek <jakub at gcc dot gnu.org> --- Your testcase doesn't compile anywhere, you need to add at least a semicolon after case 0: With that fixed, whether this was accepted or not changed over time several times, e.g. 3.2 accepted it with warnings (and -fpermissive in all cases), 3.3 - 4.9 emitted a warning and error, 5.x-8.x gave just a warning or two, 9.x error + warning. I'd say just fix the legacy code.