• Yury Selivanov's avatar
    Issue #24619: New approach for tokenizing async/await. · 8fb307cd
    Yury Selivanov yazdı
    This commit fixes how one-line async-defs and defs are tracked
    by tokenizer.  It allows to correctly parse invalid code such
    as:
    
    >>> async def f():
    ...     def g(): pass
    ...     async = 10
    
    and valid code such as:
    
    >>> async def f():
    ...     async def g(): pass
    ...     await z
    
    As a consequence, is is now possible to have one-line
    'async def foo(): await ..' functions:
    
    >>> async def foo(): return await bar()
    8fb307cd
badsyntax_async4.py 27 Bytes