// PR c++/80955 // { dg-do run { target c++11 } } extern "C" int sprintf (char *s, const char *format, ...); extern "C" int strcmp (const char *s1, const char *s2); #define __PRI64_PREFIX "l" #define PRId64 __PRI64_PREFIX "d" using size_t = decltype(sizeof(0)); #define _zero #define _ID _xx int operator""_zero(const char*, size_t) { return 0; } int operator""_ID(const char*, size_t) { return 0; } int main() { long i64 = 123; char buf[] = "xxxxxx"__FILE__; // { dg-warning "invalid suffix on literal" } sprintf(buf, "%"PRId64"abc", i64); // { dg-warning "invalid suffix on literal" } return strcmp(buf, "123abc") + ""_zero + "bob"_zero + R"#(raw string)#"_zero + "xx"_ID + ""_ID + R"AA(another raw string)AA"_ID; }