# file : libbuild2/cc/lexer+raw-string-literal.test.testscript # license : MIT; see accompanying LICENSE file # Test raw string literals. # : normal : $* <>EOO R"()" R"(ab)" R"(a"b)" R"(a)b)" R"%(a%)b)%" R"X(a b)X" R"X(a\ b)X" EOI EOO : prefix : $* <>EOO LR"(ab)" UR"(ab)" uR"(ab)" u8R"(ab)" EOI EOO : suffix : $* <>EOO R"(ab)"x R"(ab)"_X123 EOI EOO : escape : $* <>EOO R"(\)" EOI EOO : invalid-no-paren : $* <'R"a"' 2>>EOE != 0 :1:2: error: invalid raw string literal EOE : invalid-paren : $* <'R")()("' 2>>EOE != 0 :1:2: error: invalid raw string literal EOE : invalid-unterminated-paren : $* <'R"(abc"' 2>>EOE != 0 :1:2: error: invalid raw string literal EOE : invalid-unterminated-delimiter : $* <'R"X(abc)"' 2>>EOE != 0 :1:2: error: invalid raw string literal EOE : invalid-unterminated-quote : $* <'R"X(abc)X' 2>>EOE != 0 :1:2: error: invalid raw string literal EOE