https://gcc.gnu.org/bugzilla/show_bug.cgi?id=107980
--- Comment #18 from Joseph S. Myers <jsm28 at gcc dot gnu.org> --- The final normative wording in C23 says "If any additional arguments expand to include unbalanced parentheses, or a preprocessing token that does not convert to a token, the behavior is undefined." (and there is Recommended practice to encourage diagnosing uses with extra arguments that wouldn't have been valid before C23). So as QoI we could choose to do something to diagnose that involves expanding the extra arguments (without requiring them to be valid expressions, as long as the pp-tokens do convert to tokens without unbalanced parentheses involved).