diff options
author | Boris Kolpackov <boris@codesynthesis.com> | 2017-05-24 13:24:31 +0200 |
---|---|---|
committer | Boris Kolpackov <boris@codesynthesis.com> | 2017-05-24 13:24:31 +0200 |
commit | 0cef93b4e2e9bf39b0ca542876f9ab1af6d0f01d (patch) | |
tree | 187b83b65f28cdf4f8a2b0feadf392b49554fbf3 /unit-tests/cc/lexer/char-literal.test | |
parent | b3526a5c925169b3be00a5dd4d8c8222f3a475cd (diff) |
Implement support for tokenization of preprocessed C/C++ source
Diffstat (limited to 'unit-tests/cc/lexer/char-literal.test')
-rw-r--r-- | unit-tests/cc/lexer/char-literal.test | 67 |
1 files changed, 67 insertions, 0 deletions
diff --git a/unit-tests/cc/lexer/char-literal.test b/unit-tests/cc/lexer/char-literal.test new file mode 100644 index 0000000..f256785 --- /dev/null +++ b/unit-tests/cc/lexer/char-literal.test @@ -0,0 +1,67 @@ +# file : unit-tests/cc/lexer/char-literal.test +# copyright : Copyright (c) 2014-2017 Code Synthesis Ltd +# license : MIT; see accompanying LICENSE file + +# Test character literals. +# + +: normal +: +$* <<EOI >>EOO +'a' +'aa' +'"' +EOI +<char literal> +<char literal> +<char literal> +EOO + +: prefix +: +$* <<EOI >>EOO +L'a' +U'a' +u'a' +u8'a' +u8R'a' +EOI +<char literal> +<char literal> +<char literal> +<char literal> +'u8R' +<char literal> +EOO + +: suffix +: +$* <<EOI >>EOO +'a'x +'a'_X123 +EOI +<char literal> +<char literal> +EOO + +: escape +: +$* <<EOI >>EOO +'\'' +'\\' +'\\\'' +'\n' +U'\U0001f34c' +EOI +<char literal> +<char literal> +<char literal> +<char literal> +<char literal> +EOO + +: unterminated +: +$* <"'a" 2>>EOE != 0 +stdin:1:1: error: unterminated literal +EOE |