summaryrefslogtreecommitdiff
path: root/py/parse.c
diff options
context:
space:
mode:
Diffstat (limited to 'py/parse.c')
-rw-r--r--py/parse.c8
1 files changed, 8 insertions, 0 deletions
diff --git a/py/parse.c b/py/parse.c
index da2f5e796..ae3fa8ea6 100644
--- a/py/parse.c
+++ b/py/parse.c
@@ -1152,6 +1152,14 @@ mp_parse_tree_t mp_parse(mp_lexer_t *lex, mp_parse_input_kind_t input_kind) {
} else if (lex->tok_kind == MP_TOKEN_DEDENT_MISMATCH) {
exc = mp_obj_new_exception_msg(&mp_type_IndentationError,
MP_ERROR_TEXT("unindent doesn't match any outer indent level"));
+ #if MICROPY_PY_FSTRINGS
+ } else if (lex->tok_kind == MP_TOKEN_MALFORMED_FSTRING) {
+ exc = mp_obj_new_exception_msg(&mp_type_SyntaxError,
+ MP_ERROR_TEXT("malformed f-string"));
+ } else if (lex->tok_kind == MP_TOKEN_FSTRING_RAW) {
+ exc = mp_obj_new_exception_msg(&mp_type_SyntaxError,
+ MP_ERROR_TEXT("raw f-strings are not supported"));
+ #endif
} else {
exc = mp_obj_new_exception_msg(&mp_type_SyntaxError,
MP_ERROR_TEXT("invalid syntax"));