You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
On current master (d11a1be + spine sync to 4146), the full compiler_lib_spine_smoke bundle no longer compiles through the AOT emit path: bin/compile.php -o … main.php dies with Cannot assign to a value (thrown at lib/JIT.php:12225, the ASSIGN lowering guard). Consequently make bootstrap-gen0-refresh-sidecar cannot produce an honest native emit, and the committed gen-0 sidecar stamp cannot be refreshed — it is already stale on master (stamp e7d7c34b from the 4114-era #16732, spine now 4146).
Isolation so far (pinned container)
Every recently ADDED lib/ext file (last ~40 commits, 30 files incl. the DOM NamedNodeMap batch, curl_file, ClassUsesRecursive, DatePeriod ISO8601) compiles CLEAN as a mini bundle → the breaker is in a MODIFIED file or a whole-bundle interaction.
bin/lint.php passes on all suspects individually (lint's LintCompiler pass does not reach this JIT lowering).
The stale prelinked sidecar fallback binary also crashes (free(): invalid pointer), so the NO_ZEND arm is broken too.
Repro
php bin/compile.php -o /tmp/spine test/selfhost/compiler_lib_spine_smoke/main.php
# → Cannot assign to a value
Impact
check-selfhost-spine-sidecar-sync is red on master and cannot be healed by refresh until this is fixed.
Spine-growth PRs can still sync counts/coverage/footnotes but must ship without an honest stamp refresh.
Done when
Full spine bundle compiles via bin/compile.php (breaker identified — binary-search the 4146 requires from lib/JIT.php:12225 with a debug dump of the offending Op/file)
make bootstrap-gen0-refresh-sidecar green, stamp matches bundle SHA
Summary
On current master (d11a1be + spine sync to 4146), the full
compiler_lib_spine_smokebundle no longer compiles through the AOT emit path:bin/compile.php -o … main.phpdies withCannot assign to a value(thrown at lib/JIT.php:12225, the ASSIGN lowering guard). Consequentlymake bootstrap-gen0-refresh-sidecarcannot produce an honest native emit, and the committed gen-0 sidecar stamp cannot be refreshed — it is already stale on master (stamp e7d7c34b from the 4114-era #16732, spine now 4146).Isolation so far (pinned container)
bin/lint.phppasses on all suspects individually (lint's LintCompiler pass does not reach this JIT lowering).c:main_before_php— possibly related, possibly Compiler SIGSEGV: ++/-- lowering crashes on null locals and under the FunctionStatic phpunit filter #16565-class.free(): invalid pointer), so the NO_ZEND arm is broken too.Repro
Impact
check-selfhost-spine-sidecar-syncis red on master and cannot be healed by refresh until this is fixed.Done when
🤖 Generated with Claude Code