https://gcc.gnu.org/bugzilla/show_bug.cgi?id=100658
--- Comment #3 from G. Steinmetz <gs...@t-online.de> --- > What's wrong about the $ sign? Nothing, it's about "dollar". I was just surprised that there was no text snippet "dollar in" in all the sources. You can ignore this section "Additionally ...", on x86_64-pc-linux-gnu it gives (not checked on powerpc) : $ gcc-12-20210516 -c gcc.dg/ucnid-5.c -std=c99 -g -fdollars-in-identifiers $ gcc-12-20210516 -c gcc.dg/ucnid-5.c -std=c99 -g -fno-dollars-in-identifiers gcc.dg/ucnid-5.c:6:6: error: stray '$' in program 6 | int a$b(void) { return 1; } | ^ gcc.dg/ucnid-5.c:6:7: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'b' 6 | int a$b(void) { return 1; } | ^ gcc.dg/ucnid-5.c: In function 'main': gcc.dg/ucnid-5.c:11:7: error: universal character \u0024 is not valid in an identifier 11 | if (a\u0024b() != 1) | ^ gcc.dg/ucnid-5.c:11:7: warning: implicit declaration of function 'a$b' [-Wimplicit-function-declaration] 11 | if (a\u0024b() != 1) | ^~~~~~~~