diff options
Diffstat (limited to 'unit-tests/cc/lexer/string-literal.test')
-rw-r--r-- | unit-tests/cc/lexer/string-literal.test | 65 |
1 files changed, 65 insertions, 0 deletions
diff --git a/unit-tests/cc/lexer/string-literal.test b/unit-tests/cc/lexer/string-literal.test new file mode 100644 index 0000000..062d290 --- /dev/null +++ b/unit-tests/cc/lexer/string-literal.test @@ -0,0 +1,65 @@ +# file : unit-tests/cc/lexer/string-literal.test +# copyright : Copyright (c) 2014-2017 Code Synthesis Ltd +# license : MIT; see accompanying LICENSE file + +# Test string literals (except raw). +# + +: normal +: +$* <<EOI >>EOO +"aa" +"'" +"a""b" +EOI +<string literal> +<string literal> +<string literal> +<string literal> +EOO + +: prefix +: +$* <<EOI >>EOO +L"ab" +U"ab" +u"ab" +u8"ab" +EOI +<string literal> +<string literal> +<string literal> +<string literal> +EOO + +: suffix +: +$* <<EOI >>EOO +"ab"x +"ab"_X123 +EOI +<string literal> +<string literal> +EOO + +: escape +: +$* <<EOI >>EOO +"\"\"" +"\\\\" +"\\\"\\" +"\n\t" +U"a\U0001f34c" +EOI +<string literal> +<string literal> +<string literal> +<string literal> +<string literal> +EOO + +: unterminated +: +$* <'"ab' 2>>EOE != 0 +stdin:1:1: error: unterminated literal +EOE |