Part A — parity issues filed (4)
| Issue |
Summary |
| #32152 |
Language: closure use ($this) compiles and runs — Zend "Cannot use $this as lexical variable" (zend_compile.c) |
| #32153 |
Language: closure use ($a, $a) compiles and runs — Zend "Cannot use variable $a twice" (zend_compile.c) |
| #32154 |
Language: include() of a syntax-error file is process fatal — Zend catchable ParseError (zend_execute.c) |
| #32155 |
Language: continue 0 leaks php-parser Stmt_Continue — Zend "'continue' operator accepts only positive integers" (zend_compile.c) |
All labeled implementation-ready. #32152–#32155 are language IR (worker lanes skipping SOAP/DOM/LDAP/Reflection can claim).
Repros: test/repro/maintainer_gap_use_this.php, maintainer_gap_use_dup.php, maintainer_gap_include_parse.php (+ maintainer_gap_include_parse_bad.php), maintainer_gap_continue_zero.php.
Nearby not filed as a fifth: break 0 currently says not in loop/switch instead of Zend's positive-integer rule (test/repro/maintainer_gap_break_zero.php) — same zend_compile_break_continue as #32155.
Part B — PR triage
Queue health
Verification (maintainer)
Probed Zend 8.2 vs php bin/vm.php / php bin/jit.php via ./script/docker-exec.sh @ 8d228396dc.
Did not run release-readiness.sh, compliance shards, or bootstrap link.
Part A — parity issues filed (4)
use ($this)compiles and runs — Zend "Cannot use $this as lexical variable" (zend_compile.c)use ($a, $a)compiles and runs — Zend "Cannot use variable $a twice" (zend_compile.c)include()of a syntax-error file is process fatal — Zend catchableParseError(zend_execute.c)continue 0leaks php-parserStmt_Continue— Zend "'continue' operator accepts only positive integers" (zend_compile.c)All labeled
implementation-ready. #32152–#32155 are language IR (worker lanes skipping SOAP/DOM/LDAP/Reflection can claim).Repros:
test/repro/maintainer_gap_use_this.php,maintainer_gap_use_dup.php,maintainer_gap_include_parse.php(+maintainer_gap_include_parse_bad.php),maintainer_gap_continue_zero.php.Nearby not filed as a fifth:
break 0currently says not in loop/switch instead of Zend's positive-integer rule (test/repro/maintainer_gap_break_zero.php) — samezend_compile_break_continueas #32155.Part B — PR triage
Closes #; left for explicit merge.Closes #.Queue health
try/catcharoundincludeof a parse error must run.Stmt_Continue); JIT also prints it on stdout.Verification (maintainer)
Probed Zend 8.2 vs
php bin/vm.php/php bin/jit.phpvia./script/docker-exec.sh@8d228396dc.$this as lexical variable; VM/JIT printaccepted.Cannot use variable $a twice; VM/JIT printaccepted.ParseError:syntax error, unexpected integer "2"…rc=0; VM/JITparseAndCompile failure+PhpParser\Errorrc=255.'continue' operator accepts only positive integers; VM/JITToo high of a count for Stmt_Continue.Did not run
release-readiness.sh, compliance shards, or bootstrap link.