From: dr-carlos <77367421+dr-carlos@users.noreply.github.com> Date: Thu, 20 Nov 2025 04:08:08 +0000 (+1030) Subject: gh-141489: Simplify closure/freevar iteration in `annotationlib._build_closure()... X-Git-Tag: v3.15.0a3~343 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=a35c683da55e77c96828fd0421640787337cfc64;p=thirdparty%2FPython%2Fcpython.git gh-141489: Simplify closure/freevar iteration in `annotationlib._build_closure()` (#141490) --- diff --git a/Lib/annotationlib.py b/Lib/annotationlib.py index 33907b1fc2a5..a5788cdbfae3 100644 --- a/Lib/annotationlib.py +++ b/Lib/annotationlib.py @@ -844,14 +844,9 @@ def call_annotate_function(annotate, format, *, owner=None, _is_evaluate=False): def _build_closure(annotate, owner, is_class, stringifier_dict, *, allow_evaluation): if not annotate.__closure__: return None, None - freevars = annotate.__code__.co_freevars new_closure = [] cell_dict = {} - for i, cell in enumerate(annotate.__closure__): - if i < len(freevars): - name = freevars[i] - else: - name = "__cell__" + for name, cell in zip(annotate.__code__.co_freevars, annotate.__closure__, strict=True): cell_dict[name] = cell new_cell = None if allow_evaluation: