Category
stdlib · php-src-strict · regression (re-#4942)
Problem
Zend 8.2 accepts get_defined_functions(exclude_disabled: true) and returns the usual ['internal'=>…,'user'=>…] shape. On the php-compiler VM (reference profile, no PHP_COMPILER_PROFILE), the same call fatals with unknown named parameter — the builtin is registered with zero parameters.
| Repro |
Zend 8.2+ |
VM (2026-07-06) |
get_defined_functions(exclude_disabled: true) |
callable, array shape |
Error: Unknown named parameter $exclude_disabled ❌ |
php-src reference
PHP implementation target
ext/standard/ builtin registration + VmReflection / get_defined_functions handler — accept optional exclude_disabled bool on profiles where Zend advertises it; filter disabled internal symbols like php-src
lib/CompilerVersion.php — profile gate must match Zend function_exists/signature on reference profile
Repro
./script/docker-exec.sh -- bash -lc 'source script/php-env.sh && php bin/vm.php test/repro/maintainer_gap_get_defined_functions_exclude_disabled_reference.php'
# fail: Error: Unknown named parameter $exclude_disabled
Done when
Category
stdlib· php-src-strict · regression (re-#4942)Problem
Zend 8.2 accepts
get_defined_functions(exclude_disabled: true)and returns the usual['internal'=>…,'user'=>…]shape. On the php-compiler VM (reference profile, noPHP_COMPILER_PROFILE), the same call fatals with unknown named parameter — the builtin is registered with zero parameters.get_defined_functions(exclude_disabled: true)Error: Unknown named parameter $exclude_disabled❌php-src reference
ext/standard/basic_functions.c—PHP_FUNCTION(get_defined_functions)/$exclude_disabledfilterPHP implementation target
ext/standard/builtin registration +VmReflection/get_defined_functionshandler — accept optionalexclude_disabledbool on profiles where Zend advertises it; filter disabled internal symbols like php-srclib/CompilerVersion.php— profile gate must match Zendfunction_exists/signature on reference profileRepro
Done when
get_defined_functions(exclude_disabled: true)callable on reference profile; shape matches Zend.phptguard undertest/compliance/cases/stdlib/