From 8648e6d1cf19afec1485ed204b2135ca322c6a8b Mon Sep 17 00:00:00 2001 From: Jeff Epler Date: Fri, 9 May 2025 22:04:29 +0200 Subject: [PATCH] tests/cpydiff: Add test of underscore-in-literals. Signed-off-by: Jeff Epler --- tests/cpydiff/syntax_literal_underscore.py | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) create mode 100644 tests/cpydiff/syntax_literal_underscore.py diff --git a/tests/cpydiff/syntax_literal_underscore.py b/tests/cpydiff/syntax_literal_underscore.py new file mode 100644 index 000000000..4b1406e9f --- /dev/null +++ b/tests/cpydiff/syntax_literal_underscore.py @@ -0,0 +1,19 @@ +""" +categories: Syntax,Literals +description: MicroPython accepts underscores in numeric literals where CPython doesn't +cause: Different parser implementation + +MicroPython's tokenizer ignores underscores in numeric literals, while CPython +rejects multiple consecutive underscores and underscores after the last digit. + +workaround: Remove the underscores not accepted by CPython. +""" + +try: + print(eval("1__1")) +except SyntaxError: + print("Should not work") +try: + print(eval("1_")) +except SyntaxError: + print("Should not work")