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
hash_algos() returns a string list array when assigned or passed to var_export(), but evaluates to NULL when nested directly as the haystack argument to in_array(). Zend returns true for in_array('md5', hash_algos(), true).
Workaround today: assign hash_algos() to a variable first.
Triage 2026-06-24: repro from issue description passes on current master (VM matches Zend). No code change needed in this batch — please close if maintainer confirms.
Root cause:#11409 (#11422) changed inlineCallArgProducerPassesByRefGuards to return $feedsConsumerArg, which rejected producers when operand identity did not link producer.result to callee slots (e.g. in_array('md5', hash_algos(), true)).
Fix: Keep scoped named-local/by-ref checks from #11409, but return true when no fed-arg violations (position/dead-temp matching still applies).
Activity
PurHur commentedon Jun 24, 2026
claim: PHP Compiler STD Lib — batch (issues #11313, #11322, #11323)
PurHur commentedon Jun 24, 2026
Already fixed on master before this batch —
in_array('md5', hash_algos(), true)returns true on VM (verified 2026-06-24).PurHur commentedon Jun 24, 2026
claim: PHP Compiler STD Lib — batch (issues #11313, #11365, #11366)
PurHur commentedon Jun 24, 2026
Triage 2026-06-24: repro from issue description passes on current master (VM matches Zend). No code change needed in this batch — please close if maintainer confirms.
Fix nested builtin FuncCall return null as callee argument (#11373). (#…
PurHur commentedon Jun 25, 2026
claim: cursor-agent-lane-c — batch (issues #11313, #11366, #9547) — compiler regression from #11409 inlineCallArgProducerPassesByRefGuards
Fix nested call operand regression from #11409 byRef guard (#11313). (#…
PurHur commentedon Jun 25, 2026
Merged via #11427.
Root cause: #11409 (#11422) changed
inlineCallArgProducerPassesByRefGuardstoreturn $feedsConsumerArg, which rejected producers when operand identity did not linkproducer.resultto callee slots (e.g.in_array('md5', hash_algos(), true)).Fix: Keep scoped named-local/by-ref checks from #11409, but return
truewhen no fed-arg violations (position/dead-temp matching still applies).Verification (VM matches Zend):