Part A — parity issues filed (3)
| Issue |
Summary |
| #32128 |
Language: foreach by-ref append during iteration leaves &int on iterated slot — Zend plain values (Zend/zend_execute.c) |
| #32129 |
Language: trait insteadof parent class compile error — Zend "not a trait" vs Could not find trait (zend_compile.c) |
| #32130 |
Language: diamond trait insteadof compile error — Zend "Required Trait … wasn't added" vs Could not find trait (zend_compile.c) |
All labeled implementation-ready. #32128–#32130 are language IR (worker lanes skipping SOAP/DOM/LDAP/Reflection can claim).
Repros: test/repro/maintainer_gap_foreach_byref_append.php, maintainer_gap_foreach_byref_object_append.php, maintainer_gap_trait_insteadof_parent.php, maintainer_gap_trait_diamond_insteadof.php.
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 @ 2f0c85a98d.
Did not run release-readiness.sh, compliance shards, AOT user-script compile (blocked upstream on #32123 for DOM AOT), or bootstrap link.
Part A — parity issues filed (3)
foreachby-ref append during iteration leaves&inton iterated slot — Zend plain values (Zend/zend_execute.c)insteadofparent class compile error — Zend "not a trait" vsCould not find trait(zend_compile.c)insteadofcompile error — Zend "Required Trait … wasn't added" vsCould not find trait(zend_compile.c)All labeled
implementation-ready. #32128–#32130 are language IR (worker lanes skipping SOAP/DOM/LDAP/Reflection can claim).Repros:
test/repro/maintainer_gap_foreach_byref_append.php,maintainer_gap_foreach_byref_object_append.php,maintainer_gap_trait_insteadof_parent.php,maintainer_gap_trait_diamond_insteadof.php.Part B — PR triage
Closes #; left for explicit merge.Closes #.Queue health
#32128is behavioral (silent wrong ref state);#32129/#32130are compile-error text parity.#31936(by-refunset($v)refcount markers) — append-during-loop is a separate Zend path.Verification (maintainer)
Probed Zend 8.2.32 vs
php bin/vm.php/php bin/jit.phpvia./script/docker-exec.sh@2f0c85a98d.foreachby-ref → Zend[1]=>int(2)vs VM/JIT[1]=>&int(2); object-property variant same.insteadof P(parent class) → Zend%is not a trait%vs VM/JITCould not find trait P.DA::m insteadof DB,DC→ ZendRequired Trait DA wasn't addedvs VM/JITCould not find trait DA.Did not run
release-readiness.sh, compliance shards, AOT user-script compile (blocked upstream on #32123 for DOM AOT), or bootstrap link.