Skip to content

AOT: ReflectionExtension::getINIEntries thin proxy matches Zend (#34165) - #34168

Merged
PurHur merged 1 commit into
masterfrom
agent/issue-34165-reflection-extension-getinientries-aot
Aug 23, 2026
Merged

AOT: ReflectionExtension::getINIEntries thin proxy matches Zend (#34165)#34168
PurHur merged 1 commit into
masterfrom
agent/issue-34165-reflection-extension-getinientries-aot

Conversation

@PurHur

@PurHur PurHur commented Aug 23, 2026

Copy link
Copy Markdown
Owner

Summary

  • Thin AOT returned NULL for ReflectionExtension::getINIEntries() (ExternalMethod); Zend/VM return the ini directive map (date → count 5 with date.timezone).
  • Add JIT/AOT Call + Runtime that bakes extension→local-value maps via VmIniIntrospection (bounded module list; peer #34162 getConstants).
  • Register reflectionextension::getinientries, spine requires, repro + unit test.

php-src: ext/reflection/php_reflection.czim_ReflectionExtension_getINIEntries

Closes #34165

Test plan

  • ./script/aot-smoke.sh → 8/8
  • ./script/phpunit.sh --filter Issue34165ReflectionExtensionGetINIEntriesAotTest → OK (4 tests, 15 assertions)
  • ./script/docker-exec.sh -- bash -lc 'PHP_COMPILER_HELPER_RUNTIME_O=0 php bin/compile.php -o /tmp/x.bin test/repro/issue_34165_reflection_extension_getinientries_aot.php && /tmp/x.bin'type=array count=5 date.timezone=1 date.default_latitude=1
  • php script/check-selfhost-spine-coverage-sync.php → OK

Made with Cursor

…).

Thin AOT returned NULL for getINIEntries(); bake extension→ini local-value
maps via VmIniIntrospection (peer getConstants #34162).

Co-authored-by: Cursor <cursoragent@cursor.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

AOT: ReflectionExtension::getINIEntries returns NULL — thin AOT omits proxy (ext/reflection/php_reflection.c)

1 participant