Skip to content

Test: lock fputcsv enum field Error parity (#5898) - #21206

Merged
PurHur merged 1 commit into
masterfrom
agent/advanced-stdlib-5898-fputcsv-enum-field
Jul 20, 2026
Merged

PurHur merged 1 commit into
masterfrom
agent/advanced-stdlib-5898-fputcsv-enum-field

Conversation

@PurHur

@PurHur PurHur commented Jul 20, 2026

Copy link
Copy Markdown
Owner

Summary

  • VmFputcsv::coerceFieldCell already throws Error: Object of class E could not be converted to string for enum fields (assign + void) — matches php-src php_fputcsv().
  • Add issue repro + compliance PHPT (fputcsv_enum_field[.phpt|_jit.phpt]) to lock the contract.

php-src: ext/standard/file.c php_fputcsv()
PHP impl: existing ext/standard/VmFputcsv.php (no new C)

Closes #5898

Test plan

Made with Cursor

VmFputcsv already throws Zend’s Error for enum cases in fields (assign and
void). Add repro + compliance PHPT so the php-src-strict contract stays green.

Co-authored-by: Cursor <cursoragent@cursor.com>
@PurHur
PurHur merged commit 4455ea9 into master Jul 20, 2026
@PurHur
PurHur deleted the agent/advanced-stdlib-5898-fputcsv-enum-field branch July 20, 2026 02:03
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.

Stdlib: fputcsv() fields array with enum case must Error like Zend (ext/standard/file.c)

1 participant