diff options
| -rw-r--r-- | tests/cpydiff/syntax_spaces.py | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/tests/cpydiff/syntax_spaces.py b/tests/cpydiff/syntax_spaces.py index 86faa5981..e7d00838c 100644 --- a/tests/cpydiff/syntax_spaces.py +++ b/tests/cpydiff/syntax_spaces.py @@ -1,11 +1,11 @@ """ categories: Syntax,Spaces -description: MicroPython requires spaces between literal numbers and keywords, CPython doesn't +description: MicroPython requires spaces between literal numbers and keywords or ".", CPython doesn't cause: Different parser implementation MicroPython's tokenizer treats a sequence like ``1and`` as a single token, while CPython treats it as two tokens. -Since CPython 3.11, this syntax causes a ``SyntaxWarning`` for an "invalid literal". +Since CPython 3.11, when the literal number is followed by a token, this syntax causes a ``SyntaxWarning`` for an "invalid literal". When a literal number is followed by a "." denoting attribute access, CPython does not warn. workaround: Add a space between the integer literal and the intended next token. @@ -24,3 +24,7 @@ try: print(eval("1if 1else 0")) except SyntaxError: print("Should have worked") +try: + print(eval("0x1.to_bytes(1)")) +except SyntaxError: + print("Should have worked") |
