aboutsummaryrefslogtreecommitdiff
path: root/gcc/testsuite/c-c++-common/raw-string-16.c
blob: 1bf16dd5a1ed33f670305bd54fd4d0b01b0af3fd (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
// PR preprocessor/57620
// { dg-do compile }
// { dg-options "-std=gnu99 -Wtrigraphs" { target c } }
// { dg-options "-std=gnu++11 -Wtrigraphs" { target c++ } }

const void *s0 = R"abc\
def()abcdef" 0;
	// { dg-error "invalid character" "invalid" { target *-*-* } 6 }
	// { dg-error "stray" "stray" { target *-*-* } 6 }
const void *s1 = R"abcdefghijklmn??/(a)abcdefghijklmn???" 0;
	// { dg-error "raw string delimiter longer" "longer" { target *-*-* } .-1 }
	// { dg-error "stray" "stray" { target *-*-* } .-2 }

const void *s2 = R"abcdefghijklmno??/(a)abcdefghijklmno???" 0;
	// { dg-error "raw string delimiter longer" "longer" { target *-*-* } .-1 }
	// { dg-error "stray" "stray" { target *-*-* } .-2 }
const void *s3 = R"abcdefghijklmnop??=(a)abcdefghijklmnop??=?" 0;
	// { dg-error "raw string delimiter longer" "longer" { target *-*-* } .-1 }
	// { dg-error "stray" "stray" { target *-*-* } .-2 }
const void *s4 = R"abc\
()abcdef" 0;
	// { dg-error "invalid character" "invalid" { target *-*-* } 20 }
	// { dg-error "stray" "stray" { target *-*-* } 20 }
const void *s5 = R"\
()" 0;
	// { dg-error "invalid character" "invalid" { target *-*-* } 24 }
	// { dg-error "stray" "stray" { target *-*-* } 24 }
const void *s6 = R"\
a()a" 0;
	// { dg-error "invalid character" "invalid" { target *-*-* } 28 }
	// { dg-error "stray" "stray" { target *-*-* } 28 }

int main () {}