Skip to content

Stdlib: vsprintf/vprintf Reflection names values (#23333) - #31591

Merged
PurHur merged 1 commit into
masterfrom
agent/issue-23333-vsprintf-vprintf-param-names
Aug 16, 2026
Merged

Stdlib: vsprintf/vprintf Reflection names values (#23333)#31591
PurHur merged 1 commit into
masterfrom
agent/issue-23333-vsprintf-vprintf-param-names

Conversation

@PurHur

@PurHur PurHur commented Aug 16, 2026

Copy link
Copy Markdown
Owner

Summary

  • Override BuiltinParamNames for vsprintf / vprintf so Reflection reports Zend stub names format,values (InternalArgInfo still says args)
  • Named values: calls work; legacy args: is rejected
  • php-src ref: ext/standard/basic_functions.stub.php

Lane C note: language/behavioral IR empty; claimed Reflection signature parity with lane-overflow note (STD Lib queue unclaimed). Prior pattern: #23308 / #31566.

Closes #23333

Test plan

  • ./script/docker-exec.sh -- bash -lc 'php bin/vm.php test/repro/issue_23333_vsprintf_vprintf_reflection.php'
  • ./script/phpunit.sh --filter 'Issue23333VsprintfVprintfReflectionTest|VsprintfVprintfReflection23333'

Verification output

vsprintf:format,values
vprintf:format,values
a-b
ok
Unknown named parameter $args
OK (4 tests, 8 assertions)

Made with Cursor

Match php-src basic_functions.stub.php so named values: works under php-src-strict; reject legacy args:.

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.

Regression: vsprintf/vprintf Reflection names args — Zend values; named args rejected (ext/standard/basic_functions.stub.php)

1 participant