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 the default 8.2 reference profile (no PHP_COMPILER_PROFILE), several PHP 8.3/8.4-only builtins are registered and callable in this compiler while Zend 8.2 reports function_exists(...) === false. This breaks profile parity and lets user code detect the non-Zend runtime.
Activity
PurHur commentedon Jul 7, 2026
claim: cursor-agent-lane-b — starting this run
Fix forward-profile builtin leak on 8.2 reference profile (#17206) (#…
PurHur commentedon Jul 7, 2026
Merged via #17212.
Verification (reference profile):
php bin/vm.php test/repro/maintainer_gap_forward_profile_builtin_leak_82.php→okfunction_exists('mb_trim')bothfalseon unsetPHP_COMPILER_PROFILEForward profile preserved:
PHP_COMPILER_PROFILE=8.4repros formb_trim,crc32cgreenCompliance guard:
test/compliance/cases/stdlib/profile_gate/forward_profile_builtin_leak_82.phptPurHur commentedon Jul 7, 2026
claim: PHP Compiler STD Lib — starting this run
Merge origin/master into agent/issue-17206-forward-profile-builtin-leak
PurHur commentedon Jul 7, 2026
Merged via #17212 — forward-profile builtins (
mb_trim,crc32c,hebrevc,attribute_exists,class_uses_recursive) no longer leak on unset 8.2 reference profile.Verification (master):
```bash
./script/docker-exec.sh -- bash -lc 'source script/php-env.sh && php bin/vm.php test/repro/maintainer_gap_forward_profile_builtin_leak_82.php'
ok
./script/docker-exec.sh -- bash -lc 'source script/php-env.sh && php bin/vm.php -r "var_dump(function_exists("mb_trim"), function_exists("crc32c"), function_exists("hebrevc"), function_exists("attribute_exists"), function_exists("class_uses_recursive"));"'
bool(false) x5
```
chore: drop stale maintainer_gap repros + note branch hygiene (jul08 …