[php-src] PHP-8.4: ext/iconv/tests/eucjp2iso2022jp.phpt: skip for "unknown" iconv

Michael Orlitzky via Gina Peter Banyard <[email protected]>
Newsgroups gmane.comp.php.cvs.general
Message-ID <[email protected]>
Author: Michael Orlitzky (orlitzky)
Committer: Gina Peter Banyard (Girgias)
Date: 2026-07-08T18:36:36+01:00

Commit: https://github.com/php/php-src/commit/ebbfb3c02bcd42bb21ceddb71a26010c1f486d0b
Raw diff: https://github.com/php/php-src/commit/ebbfb3c02bcd42bb21ceddb71a26010c1f486d0b.diff

ext/iconv/tests/eucjp2iso2022jp.phpt: skip for "unknown" iconv

This test does a byte comparison of the expected ISO-2022-JP encoding
with the result of iconv(). The ISO-2022-JP encoding, however, is
stateful; there are many ways to arrive at a correct answer. Musl is
known to have an inefficient encoding that causes it to fail this
test, so we add a SKIPIF for the "unknown" iconv implementation that
musl has.

Nothing is wrong here per se, but to support the musl output (and that
of other iconvs), an expert would need to verify it.

Changed paths:
  M  ext/iconv/tests/eucjp2iso2022jp.phpt


Diff:

diff --git a/ext/iconv/tests/eucjp2iso2022jp.phpt b/ext/iconv/tests/eucjp2iso2022jp.phpt
index 6c1a8ec1214b..c3260c370f08 100644
--- a/ext/iconv/tests/eucjp2iso2022jp.phpt
+++ b/ext/iconv/tests/eucjp2iso2022jp.phpt
@@ -2,6 +2,16 @@
 EUC-JP to ISO-2022-JP
 --EXTENSIONS--
 iconv
+--SKIPIF--
+<?php
+// ISO-2022-JP is a stateful encoding, so the right answer is not
+// unique. In particular, musl (type "unknown") is known to have an
+// inefficient encoding for it that does not agree with the expected
+// output below.
+if (ICONV_IMPL == "unknown") {
+    die("skip byte-comparison of stateful encoding with unknown iconv");
+}
+?>
 --INI--
 error_reporting=2039
 --FILE--
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.