diff options
author | Damien George <damien.p.george@gmail.com> | 2016-12-22 10:32:06 +1100 |
---|---|---|
committer | Damien George <damien.p.george@gmail.com> | 2016-12-22 10:32:06 +1100 |
commit | adccafb42a892df87e3ca45a8fcc01535b39b055 (patch) | |
tree | a82090e912e285be8cdbcbdbde1fca86e63253a1 | |
parent | 1b44987d0ca72fb877026fc96681f064c8fb2b2f (diff) |
tests/basics/lexer: Add a test for newline-escaping within a string.
-rw-r--r-- | py/lexer.c | 2 | ||||
-rw-r--r-- | tests/basics/lexer.py | 4 |
2 files changed, 5 insertions, 1 deletions
diff --git a/py/lexer.c b/py/lexer.c index c6ecdf1f8..7db49de89 100644 --- a/py/lexer.c +++ b/py/lexer.c @@ -431,7 +431,7 @@ STATIC void mp_lexer_next_token_into(mp_lexer_t *lex, bool first_token) { } else { switch (c) { case MP_LEXER_EOF: break; // TODO a proper error message? - case '\n': c = MP_LEXER_EOF; break; // TODO check this works correctly (we are supposed to ignore it + case '\n': c = MP_LEXER_EOF; break; // backslash escape the newline, just ignore it case '\\': break; case '\'': break; case '"': break; diff --git a/tests/basics/lexer.py b/tests/basics/lexer.py index 70a9cce99..5f12afa70 100644 --- a/tests/basics/lexer.py +++ b/tests/basics/lexer.py @@ -19,6 +19,10 @@ print(eval("1\r")) print(eval("12\r")) print(eval("123\r")) +# backslash used to escape a line-break in a string +print('a\ +b') + # lots of indentation def a(x): if x: |