From @encukou: Thanks for the fix. Since it's a blocker I merged it, even though I'd have one more review comment: It would be good to add this to the new test, and improve the behaviour (the error is quite opaque): ```python class MoreFieldsThanTypes(ast.AST): _fields = ('a', 'b') _field_types = {'a': int | None} a: int | None = None b: int | None = None ``` _Originally posted by @encukou in https://github.com/python/cpython/issues/117266#issuecomment-2024873895_ Based on https://github.com/robotframework/robotframework/issues/5091#issuecomment-2033207000, we should also document `_field_types`. <!-- gh-linked-prs --> ### Linked PRs * gh-118212 <!-- /gh-linked-prs -->