Bug report
Bug description:
I asked a question on stackoverflow because I found a strange error while writing code that makes use an async generator function and the built-in anext() function when using a tuple value for the default argument of anext().
One of the stackoverflow answers contains a good analysis and a possible cause of the problem.
The failing code is the second line with anext():
import asyncio
async def generator(it=None):
if it is not None:
yield (it, it)
async def my_func():
# results in a=1 b=1
a, b = await anext(generator(1), (2, 3))
# results in no printing
async for a, b in generator():
print(a, b)
# raises exception
a, b = await anext(generator(), (2, 3))
loop = asyncio.new_event_loop()
loop.run_until_complete(my_func())
It raises this unexpected exception:
StopAsyncIteration
The above exception was the direct cause of the following exception:
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "/Users/manuel/.pyenv/versions/3.12.0/lib/python3.12/asyncio/base_events.py", line 664, in run_until_complete
return future.result()
^^^^^^^^^^^^^^^
File "<stdin>", line 6, in my_func
SystemError: <class 'StopIteration'> returned a result with an exception set
CPython versions tested on:
3.11, 3.12, 3.13
Operating systems tested on:
macOS
Linked PRs
Bug report
Bug description:
I asked a question on stackoverflow because I found a strange error while writing code that makes use an async generator function and the built-in
anext()function when using a tuple value for thedefaultargument ofanext().One of the stackoverflow answers contains a good analysis and a possible cause of the problem.
The failing code is the second line with
anext():It raises this unexpected exception:
CPython versions tested on:
3.11, 3.12, 3.13
Operating systems tested on:
macOS
Linked PRs
anextbefore calling_PyGen_SetStopIterationValue#128780anextbefore calling_PyGen_SetStopIterationValue(GH-128780) #128784anextbefore calling_PyGen_SetStopIterationValue(GH-128780) #128785_PyGen_SetStopIterationValue(follow-up to gh-128780) #128287PyErr_SetRaisedExceptionin_PyGen_SetStopIterationValue(GH-128287) #128789PyErr_SetRaisedExceptionin_PyGen_SetStopIterationValue(GH-128287) #128790