Skip to content

Stdlib: withhold grapheme_levenshtein() — Zend never ships it (#22661) - #22677

Merged
PurHur merged 1 commit into
masterfrom
fix/22661-grapheme-levenshtein-phantom
Jul 23, 2026
Merged

PurHur merged 1 commit into
masterfrom
fix/22661-grapheme-levenshtein-phantom

Conversation

@PurHur

@PurHur PurHur commented Jul 23, 2026

Copy link
Copy Markdown
Owner

Summary

php-src reference: ext/intl/grapheme/grapheme.stub.php
PHP impl: lib/CompilerVersion.php, ext/intl/Module.php

Test plan

  • php bin/vm.php test/repro/maintainer_gap_grapheme_levenshtein_phantom.php → ok
  • PHP_COMPILER_PROFILE=8.4 php bin/vm.php test/repro/maintainer_gap_grapheme_levenshtein_phantom.php → ok
  • AOT: PHP_COMPILER_HELPER_RUNTIME_O=1 php bin/compile.php -o /tmp/glev_phantom … && /tmp/glev_phantom → ok (default + PROFILE=8.4)
  • ./script/phpunit.sh --filter grapheme_levenshtein → OK (6 tests)
  • ./script/check-generated-docs.sh → OK after matrix/inventory regen

Gate probe (this run)

Made with Cursor

Match php-src grapheme.stub.php / mb_ucwords phantom gate: always-false
supports/advertises so function_exists stays false on every profile.

Co-authored-by: Cursor <cursoragent@cursor.com>
@PurHur
PurHur merged commit 24ea5ef into master Jul 23, 2026
1 of 2 checks passed
@PurHur
PurHur deleted the fix/22661-grapheme-levenshtein-phantom branch July 23, 2026 15:08
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: grapheme_levenshtein() phantom on all profiles — Zend/php-src never ships it (ext/intl/grapheme)

1 participant