(root)/
gcc-13.2.0/
gcc/
testsuite/
c-c++-common/
raw-string-14.c
       1  // PR preprocessor/57620
       2  // { dg-do compile }
       3  // { dg-options "-std=gnu99 -trigraphs" { target c } }
       4  // { dg-options "-std=c++11" { target c++ } }
       5  
       6  const void *s0 = R"abc\
       7  def()abcdef" 0;
       8  	// { dg-error "invalid character" "invalid" { target *-*-* } .-2 }
       9  	// { dg-error "stray" "stray" { target *-*-* } .-3 }
      10  const void *s1 = R"??/
      11  ()??/" 0;
      12  	// { dg-error "invalid new-line" "invalid" { target *-*-* } .-2 }
      13  	// { dg-error "stray" "stray" { target *-*-* } .-3 }
      14  const void *s2 = R"abcdefghijklmn??/(a)abcdefghijklmn???" 0;
      15  	// { dg-error "raw string delimiter longer" "longer" { target *-*-* } .-1 }
      16  	// { dg-error "stray" "stray" { target *-*-* } .-2 }
      17  const void *s3 = R"abcdefghijklmno??/(a)abcdefghijklmno???" 0;
      18  	// { dg-error "raw string delimiter longer" "longer" { target *-*-* } .-1 }
      19  	// { dg-error "stray" "stray" { target *-*-* } .-2 }
      20  const void *s4 = R"abcdefghijklmnop??=(a)abcdefghijklmnop??=" 0;
      21  	// { dg-error "raw string delimiter longer" "longer" { target *-*-* } .-1 }
      22  	// { dg-error "stray" "stray" { target *-*-* } .-2 }
      23  const void *s5 = R"abc\
      24  ()abcdef" 0;
      25  	// { dg-error "invalid character" "invalid" { target *-*-* } .-2 }
      26  	// { dg-error "stray" "stray" { target *-*-* } .-3 }
      27  const void *s6 = R"\
      28  ()" 0;
      29  	// { dg-error "invalid character" "invalid" { target *-*-* } .-2 }
      30  	// { dg-error "stray" "stray" { target *-*-* } .-3 }
      31  const void *s7 = R"\
      32  a()a" 0;
      33  	// { dg-error "invalid character" "invalid" { target *-*-* } .-2 }
      34  	// { dg-error "stray" "stray" { target *-*-* } .-3 }
      35  
      36  int main () {}