bpo-29524: Add Objects/call.c file by vstinner · Pull Request #12 · python/cpython
* Move all functions to call objects in a new Objects/call.c file. * Rename fast_function() to _PyFunction_FastCallKeywords(). * Copy null_error() from Objects/abstract.c * Inline type_error() in call.c to not have to copy it, it was only called once. * Export _PyEval_EvalCodeWithName() since it is now called from call.c.
paulmon added a commit to paulmon/cpython that referenced this pull request
isidentical referenced this pull request in isidentical/cpython
aisk
mentioned this pull request
miss-islington pushed a commit to miss-islington/cpython that referenced this pull request
This was referenced
Qanux
mentioned this pull request
SonicField added a commit to SonicField/cpython that referenced this pull request
…DE.md Bundle of two theologian-authored doc amendments per supervisor dispositions: CLAUDE.md (+2L) — Pre-Edit WT Integrity 'undiagnosed-recurring' honest framing per pythia python#105 (3) + supervisor 02:13:12Z + theologian 02:13:54Z. Acknowledges 5+ prior incidents closed at SYMPTOM layer without root-cause attribution; this 4-step discipline codifies reactive HALT, not automated detection. Detection still depends on agent noticing mid-edit. Recurrence-prevention claim does not exceed what text mechanizes; automated detection feasibility (file-watcher / git-hook) is fixup PIR territory and remains open. docs/tier8-class-b-cport-migrate-arm-spec.md (+93/-20) — pythia python#104 amendments per theologian 01:38:08Z + supervisor 01:38:26Z + 01:37:05Z: §1.1 container-shape transferability caveat (vector-pilot ≠ hash/ stack/allocator-shape pattern transferability) §5 python#11 NEW: bridge-count-delta acceptance (each pilot must NET- SUBTRACT bridges OR honestly add with W45 fixture coverage) §5 python#12 NEW: Phase B FORCING-FUNCTION (Tier 8 SECOND-PILOT block_map_ Step A BLOCKED until exception_table_ Phase B commit lands) Bundle scope: doc-only, no §3.5 BUILD MODE (no builder*.{cpp,h,c} touched). Atomic per supervisor 02:13:12Z + 01:38:26Z dispositions. Push 28 advances the Tier 8 Phase A resume deadline tracker per theologian 02:13:54Z + supervisor 02:13:12Z (push 28 OR session-end whichever first). If Alex disposition + fixup PIR not received by deadline, theologian amends Phase 3 closure summary fa8dfef to remove Tier 8 pilot citation + re-opens pythia python#103 escape question.
SonicField added a commit to SonicField/cpython that referenced this pull request
Per Tier 8 spec §5 python#5 + theologian 04:48:17Z + supervisor 04:48:47Z. Completes the exception_table_ pilot started in Phase A (6945b96) by deleting the transient C++ compatibility layer. DELETED: HIRBuilder::parseExceptionTable shim (builder.cpp:1243-1245 area + builder.h decl) HIRBuilder::findExceptionHandler shim (builder.cpp:1247-1258 area + builder.h decl) REWIRED: builder.cpp:1197 (translate setup) → inline call hir_builder_state_parse_exception_table_c(&state_, this) builder.cpp:2865 (emit_call_method_exception_handler_inline_c) → inline call hir_builder_state_find_exception_handler_c + phx_exception_table_at conversion preserves caller-contract HIRBuilder no longer has any accessor methods for exception_table_phx; all access via bridges (parse_exception_table_c + find_exception_handler_c + phx_exception_table_at). §5 python#5 acceptance criterion fully satisfied. ZERO new bridges (uses existing C bodies + inline phx_exception_table_at helper). Numstat (vs HEAD f33bde6): Python/jit/hir/builder.cpp +22 -27 (-5 NET) Python/jit/hir/builder.h +5 -10 (-5 NET) TOTAL: NET -10L, bridge-count delta 0, fixture delta 0. Per Tier 8 spec §5 python#11 acceptance: ZERO bridge additions ✓. Per Tier 8 spec §5 python#12 forcing-function: this commit IS the Phase B landing; block_map_ Phase A Step A NOW UNBLOCKED for next session. EXPANDED PRE-COMMIT GATE per supervisor 01:17:23Z (testkeeper 04:57:42Z): Stage 1 compile: BUILD_EXIT=0 Stage 2 §3.5 BUILD MODE: 4/4 PASS, post-restore clean, staged content INTACT (§3.5 fix b83f084 VINDICATED — cpp/h mtimes identical pre/post all 3 stages) Stage 3 per-bench gate: GEO 1.26x, all 4 floor criteria PASS (worst single-bench gen_simple 0.70x > 0.5x absolute floor) Phase 3 + Tier 8 (Phase A + B) cumulative: +257 + 37 - 10 = +284L. exception_table_ pilot COMPLETE — first Class B container fully migrated to pure-C with no C++-side accessor residue. Authorization: theologian 04:48:17Z cross-check + supervisor 04:48:47Z Step B GO + librarian 04:51:37Z broader sister-script audit CLEAN.
SonicField added a commit to SonicField/cpython that referenced this pull request
Closes pythia python#119 (a) PhxBlockMap hash-clustering coverage gap deferred from Phase A push 39 (theologian 11:20:24Z + supervisor 11:20:43Z DEFER: separate from Phase B for clean revert boundary; sequence-isolated per shepard 11:11:59Z). Gap: the previous block_map_resize_chain (10 if-return arms, ~25 block_starts) trips PhxBlockMap_resize at insert python#12 but does not exercise the 5 sequential resizes (16->32->64->128->256->512) that re._parser:Tokenizer.__next at 294 blocks drives in production (D2 measurement 2026-04-24). Fix: add block_map_n294_chain — 110-arm if-return chain (~330 block_starts) generated via exec to keep the source compact. force_compile must succeed across n=0/54/109/200 (3 in-range hits + 1 default-arm miss); proves Knuth multiplicative h=key*2654435761u clusters acceptably at production- scale BCOffset density. NO production code change. Pure test/fixture extension. Pre-commit discipline satisfied via testkeeper bash -n syntax lint + diff-scope confirmation (testkeeper 11:33:43Z): no C/C++ source touched, Phase B binary 4145fe3 remains current. Auth chain: theologian patch-shape APPROVE 11:33:03Z; testkeeper pre- commit lint PASS 11:33:43Z.