Part A — parity issues filed (4)
| Issue |
Summary |
| #32226 |
Language: extract(['this' => 1]) in a method reassigns $this — Zend "Cannot re-assign $this" (ext/standard/array.c) |
| #32227 |
Language: function f() { static::foo(); } (also self:: / parent::) compiles if unused — Zend "Cannot use "static" when no class scope is active" (zend_compile.c) |
| #32228 |
Language: const true = 1 / false / null (any case) compiles — Zend "Cannot redeclare constant 'true'" (zend_compile.c) |
| #32229 |
Language: $GLOBALS = [] / += / unset($GLOBALS) compiles — Zend "$GLOBALS can only be modified using the $GLOBALS[$name] = $value syntax" (zend_compile.c; sibling of #15627 &$GLOBALS) |
All labeled implementation-ready. #32226–#32229 are language IR (worker lanes skipping SOAP/DOM/LDAP/Reflection can claim). #32226 is runtime Error inside extract(); the other three are compile fatals (silent accept, rc=0 vs Zend 255).
Repros: test/repro/maintainer_gap_extract_this.php, maintainer_gap_static_call_no_scope.php (+ self_call / parent_call), maintainer_gap_const_true.php (+ false / null), maintainer_gap_globals_assign.php (+ globals_plus_assign / unset_globals).
#32208 leftover: extract-$this is now #32226. $$name = 1 with $name = 'this' already Errors on VM (runtime, Zend "Cannot re-assign $this") — wording/path differ; not filed.
Nearby not filed as a fifth:
Part B — PR triage
Queue health
Verification (maintainer)
Probed Zend 8.2.32 vs php bin/vm.php / php bin/jit.php via ./script/docker-exec.sh @ 3633ba3bb9.
Did not run release-readiness.sh, compliance shards, or bootstrap link.
Part A — parity issues filed (4)
extract(['this' => 1])in a method reassigns$this— Zend "Cannot re-assign $this" (ext/standard/array.c)function f() { static::foo(); }(alsoself::/parent::) compiles if unused — Zend "Cannot use "static" when no class scope is active" (zend_compile.c)const true = 1/false/null(any case) compiles — Zend "Cannot redeclare constant 'true'" (zend_compile.c)$GLOBALS = []/+=/unset($GLOBALS)compiles — Zend "$GLOBALS can only be modified using the $GLOBALS[$name] = $value syntax" (zend_compile.c; sibling of #15627&$GLOBALS)All labeled
implementation-ready. #32226–#32229 are language IR (worker lanes skipping SOAP/DOM/LDAP/Reflection can claim). #32226 is runtime Error insideextract(); the other three are compile fatals (silent accept, rc=0 vs Zend 255).Repros:
test/repro/maintainer_gap_extract_this.php,maintainer_gap_static_call_no_scope.php(+self_call/parent_call),maintainer_gap_const_true.php(+false/null),maintainer_gap_globals_assign.php(+globals_plus_assign/unset_globals).#32208 leftover: extract-
$thisis now #32226.$$name = 1with$name = 'this'already Errors on VM (runtime, Zend "Cannot re-assign $this") — wording/path differ; not filed.Nearby not filed as a fifth:
extract(..., EXTR_SKIP)with keythissucceeds on Zend and rc=255 on VM in one probe — invert of Language: extract(['this'=>1]) in method reassigns $this — Zend Cannot re-assign $this (ext/standard/array.c) #32226; confirm before filing.static::class/self::classin a function already compile-abort on VM; message still "in the global scope" vs Zend "when no class scope is active" (closed Language: self/parent outside class — "Cannot use … in the global scope" vs Zend "Cannot access … when no class scope is active" (Zend/zend_execute.c) #29096 wording).Part B — PR triage
Closes #; left for explicit merge.Closes #.continue/breakover-deep diagnostic) claimed this run by Worker lane C — leave.const true/$GLOBALSassign /static::in functions, plus extract-$this.Queue health
$thisidentity lost after extract).Verification (maintainer)
Probed Zend 8.2.32 vs
php bin/vm.php/php bin/jit.phpvia./script/docker-exec.sh@3633ba3bb9.$thisre-assign; VM/JIT printaccepted.acceptedfor unusedf(). Callingf()is a runtime Error on VM — Zend never compiles.Cannot redeclare constant 'true'/'false'/'null'(case preserved); VM/JIT printaccepted.define('true', 1)already warns on both.$GLOBALSsyntax fatal for=,+=,unset($GLOBALS); VM/JIT printaccepted. Indexed$GLOBALS['x'] = 1and&$GLOBALS(Language: $ref = &$GLOBALS must compile-time fatal — VM executes (Zend/zend_compile.c) #15627) already match.Did not run
release-readiness.sh, compliance shards, or bootstrap link.