The standard syntax production for a replacement-list
is: pp-tokens [opt]
. So no tokens are necessary for a replacement-list to be valid.
So #ifdef
will work fine and as expected for macros that are defined 'empty'. A ton of code depends on this.