Category
php-in-php
Problem
get_class_methods() has PHP registry work in ext/standard/ but AOT still ships lib/AOT/runtime/phpc_class_methods.c (~201 lines) for method enumeration. Zend walks the class table in PHP — same should compile through this pipeline.
php-src reference
Repro
./script/docker-exec.sh -- bash -lc 'wc -l lib/AOT/runtime/phpc_class_methods.c
rg -n phpc_class_methods lib/AOT/Linker.php ext/standard/
php bin/vm.php -r "var_export(get_class_methods(stdClass::class));" 2>&1 | grep -v Deprecated | head -3
'
Scope
ext/standard/get_class_methods.php (and JitGetClassMethods.php if present)
lib/JIT/Builtin/ — drop C symbol registration
- Delete
lib/AOT/runtime/phpc_class_methods.c
Done when
- C file removed; linker clean.
- VM/JIT/AOT:
get_class_methods on stdClass, user class, interface — list matches Zend ordering/filter semantics for $filter flag.
- PR notes ~201 lines removed from
runtime/.
Related
Labels
php-in-php, stdlib, implementation-ready
Category
php-in-phpProblem
get_class_methods()has PHP registry work inext/standard/but AOT still shipslib/AOT/runtime/phpc_class_methods.c(~201 lines) for method enumeration. Zend walks the class table in PHP — same should compile through this pipeline.php-src reference
ext/standard/basic_functions.c—PHP_FUNCTION(get_class_methods)Zend/zend_API.c—zend_get_class_methodsRepro
Scope
ext/standard/get_class_methods.php(andJitGetClassMethods.phpif present)lib/JIT/Builtin/— drop C symbol registrationlib/AOT/runtime/phpc_class_methods.cDone when
get_class_methodsonstdClass, user class, interface — list matches Zend ordering/filter semantics for$filterflag.runtime/.Related
get_object_varshooks — separateLabels
php-in-php,stdlib,implementation-ready