blob: 56b88f8be6136deb292a6b339333534c444a1a2d [file] [log] [blame]
/* Test spelling differences in UCNs are properly diagnosed for macro
redefinitions. */
/* { dg-do preprocess } */
/* { dg-options "-std=c99 -pedantic-errors" } */
/* Different spelling of UCN in expansion. */
#define m1 \u00c1 /* { dg-message "-:previous definition" } */
#define m1 Á /* { dg-error "-:redefined" } */
#define m1ok Á
#define m1ok Á
/* Different spelling of UCN in argument name. */
#define m2(\u00c1) /* { dg-message "-:previous definition" } */
#define m2(Á) /* { dg-error "-:redefined" } */
#define m2ok(Á)
#define m2ok(Á)
/* Same spelling in argument name but different spelling when used in
expansion. */
#define m3(\u00c1) \u00c1 /* { dg-message "-:previous definition" } */
#define m3(\u00c1) Á /* { dg-error "-:redefined" } */
#define m3ok(\u00c1) Á
#define m3ok(\u00c1) Á
/* Different spelling of the macro name itself is OK. */
#define m4ok\u00c1
#define m4okÁ