The purpose of this is to avoid compiling '.S' files using '.c' flags, which removes "-pedantic" from the cc command. Not using -pedantic is good because there is nearly nothing to reasonably warn about; and the only thing that is warned about is that you can't correctly invoke GLUE2 in lib/builtins/assembly.h on platforms for which USER_LABEL_PREFIX is the empty string.
There is essentially no correct way to avoid that - though there are perhaps dubious ways - and my feeling is that gcc is simply overzealous here because its intent was to warn about invoking a macro of two arguments when only one was supplied, which is not quite the same as giving it a macro having zero characters as one argument; but the preprocessor treats those the same for all intents and purposes.
Incidentally, https://gcc.gnu.org/bugzilla/show_bug.cgi?id=33305 was the gcc PR which requested the warning in the first place.
This patch depends on http://reviews.llvm.org/D10707