py/lexer: Raise SyntaxError when unicode char point out of range.
This commit is contained in:
parent
081f9325f5
commit
0be3c70cd8
|
@ -500,7 +500,9 @@ STATIC void mp_lexer_next_token_into(mp_lexer_t *lex, bool first_token) {
|
|||
}
|
||||
#endif
|
||||
else {
|
||||
assert(!"TODO: Throw an error, invalid escape code probably");
|
||||
// unicode character out of range
|
||||
// this raises a generic SyntaxError; could provide more info
|
||||
lex->tok_kind = MP_TOKEN_INVALID;
|
||||
}
|
||||
}
|
||||
} else {
|
||||
|
|
|
@ -20,3 +20,9 @@ print(enc, enc.decode() == s)
|
|||
# printing of unicode chars using repr
|
||||
# TODO we don't do this correctly
|
||||
#print(repr(s))
|
||||
|
||||
# test invalid escape code
|
||||
try:
|
||||
eval('"\\U00110000"')
|
||||
except SyntaxError:
|
||||
print('SyntaxError')
|
||||
|
|
Loading…
Reference in New Issue