// Make sure that we properly handle trigraphs in raw strings when | |
// trigraphs are disabled, too. | |
// { dg-options "-std=gnu99" { target c } } | |
// { dg-options "-std=gnu++0x" { target c++ } } | |
// { dg-do run } | |
const char b[] = "??>"; // { dg-message "-trigraphs" } | |
const char a[] = R"(??>??)??/ | |
??)"; | |
#define TEST(str, val) \ | |
if (sizeof (str) != sizeof (val) \ | |
|| __builtin_memcmp (str, val, sizeof (str)) != 0) \ | |
__builtin_abort () | |
int main() | |
{ | |
TEST (a, "?\?>?\?)?\?/\n?\?"); | |
} |