https://gcc.gnu.org/bugzilla/show_bug.cgi?id=105046
Elliott M <ehem+gccbugs at m5p dot com> changed: What |Removed |Added ---------------------------------------------------------------------------- Component|middle-end |c --- Comment #6 from Elliott M <ehem+gccbugs at m5p dot com> --- That is true, but you're still forcing the creation of an extra variable which makes the macro less safe. Notably `FOO(dummy)` will fail, whereas if inputs could be marked clobbered the macro would only need a variable for return (for which the macro name itself can be used, since that is guaranteed not to cause problems).