annotate gcc/testsuite/c-c++-common/raw-string-17.c @ 111:04ced10e8804

gcc 7
author kono
date Fri, 27 Oct 2017 22:46:09 +0900
parents
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
111
kono
parents:
diff changeset
1 /* PR preprocessor/57824 */
kono
parents:
diff changeset
2 /* { dg-do run } */
kono
parents:
diff changeset
3 /* { dg-options "-std=gnu99" { target c } } */
kono
parents:
diff changeset
4 /* { dg-options "-std=c++11" { target c++ } } */
kono
parents:
diff changeset
5
kono
parents:
diff changeset
6 #define S(s) s
kono
parents:
diff changeset
7 #define T(s) s "\n"
kono
parents:
diff changeset
8
kono
parents:
diff changeset
9 const char x[] = R"(
kono
parents:
diff changeset
10 abc
kono
parents:
diff changeset
11 )";
kono
parents:
diff changeset
12 const char y[] = S(R"(
kono
parents:
diff changeset
13 abc
kono
parents:
diff changeset
14 )");
kono
parents:
diff changeset
15 const char z[] = "\nabc\n";
kono
parents:
diff changeset
16 const char w[] = T(R"(
kono
parents:
diff changeset
17 abc)");
kono
parents:
diff changeset
18
kono
parents:
diff changeset
19 int
kono
parents:
diff changeset
20 main ()
kono
parents:
diff changeset
21 {
kono
parents:
diff changeset
22 if (sizeof x != sizeof y
kono
parents:
diff changeset
23 || sizeof x != sizeof z
kono
parents:
diff changeset
24 || sizeof x != sizeof w
kono
parents:
diff changeset
25 || __builtin_memcmp (x, y, sizeof x)
kono
parents:
diff changeset
26 || __builtin_memcmp (x, z, sizeof x)
kono
parents:
diff changeset
27 || __builtin_memcmp (x, w, sizeof x))
kono
parents:
diff changeset
28 __builtin_abort ();
kono
parents:
diff changeset
29 return 0;
kono
parents:
diff changeset
30 }