Nikita Popov
5240f8391f
Fixed bug #80425
...
Rename the methods in MessageFormatAdapter to make sure they don't
clash with anything defined by icu itself, which may be a problem
if icu is linked statically.
2020-11-27 10:02:00 +01:00
Christoph M. Becker
77b6e95d92
Split tests for compatibility with ICU 68.1
2020-11-06 17:42:39 +01:00
Philip Hofstetter
74cf2eb83f
intl: report more information about message pattern parse errors
...
The message patterns can be pretty complex, so reporting a generic
U_PARSE_ERROR without any additional information makes it needlessly
hard to fix erroneous patterns.
This commit makes use of the additional UParseError* parameter to
umsg_open to retrieve more details about the parse error to report that
to the user via intl_get_error_message()
Additional improve error reporting from the IntlMessage constructor.
Previously, all possible failures when calling IntlMessage::__construct()
would be masked away with a generic "Constructor failed" message.
This would include invalid patterns.
This commit makes sure that the underlying error that caused the
constructor failure is reported as part of the IntlException error
message.
Closes GH-6325.
2020-10-12 16:42:41 +02:00
Christoph M. Becker
46d2a981dd
Update intl test suite for ICU 67.1
...
Cherry-picked from c915c60171 .
2020-06-05 10:51:51 +02:00
Nikita Popov
6d19acf54b
Use type-checked ref assignment in UConverter
2020-02-28 10:21:50 +01:00
Nikita Popov
58b17906f5
Apply tidy formatting
...
Mostly reindent PHP scripts to spaces.
2020-02-03 13:41:31 +01:00
Christoph M. Becker
42e67881c9
Merge branch 'PHP-7.3' into PHP-7.4
...
* PHP-7.3:
Relax test expectation
2020-02-03 13:05:09 +01:00
Christoph M. Becker
b93e4aa11c
Relax test expectation
...
Since we're dealing with floating point numbers, precision issues may
hit us, and actually it's not necessary to check for the exact number
anyway, because it is not exact in the first place. Therefore, we
relax the test expectations.
2020-02-03 13:03:54 +01:00
Christoph M. Becker
57b9eca83d
Merge branch 'PHP-7.3' into PHP-7.4
...
* PHP-7.3:
Fix #79212 : NumberFormatter::format() may detect wrong type
2020-02-03 12:29:43 +01:00
Christoph M. Becker
c2935499b1
Fix #79212 : NumberFormatter::format() may detect wrong type
...
We have to convert to number *before* detecting the type, to cater to
internal objects implementing `cast_object`.
We also get rid of the fallback behavior of using `FORMAT_TYPE_INT32`,
because that can no longer happen; after `convert_scalar_to_number_ex`
the type is either `IS_LONG` or `IS_DOUBLE`. We cater explicitly to
the `IS_ARRAY` case what also avoids triggering a type confusion when
`::TYPE_INT64` is passed as `$type`.
2020-02-03 12:28:32 +01:00
Christoph M. Becker
505cc77cbe
Fix #78912 : INTL Support for accounting format
...
We provide `NumberFormatter::CURRENCY_ACCOUNTING` to wrap
`UNUM_CURRENCY_ACCOUNTING `[1].
[1] <https://unicode-org.github.io/icu-docs/apidoc/released/icu4c/unum_8h.html#a4eb4d3ff13bd506e7078b2be4052266dae97cdd7ed612d07d251021c076efb1c5 >
2019-12-09 16:34:56 +01:00
Stanislav Malyshev
686a24c1eb
Merge branch 'PHP-7.3' into PHP-7.4
...
* PHP-7.3:
Fix bug #78804 - Segmentation fault in Locale::filterMatches
2019-11-11 23:08:44 -08:00
Stanislav Malyshev
ea2a125789
Merge branch 'PHP-7.2' into PHP-7.3
...
* PHP-7.2:
Fix bug #78804 - Segmentation fault in Locale::filterMatches
2019-11-11 23:08:38 -08:00
Stanislav Malyshev
2c9926f156
Fix bug #78804 - Segmentation fault in Locale::filterMatches
2019-11-11 22:32:35 -08:00
Nikita Popov
93a9b56c90
Skip IntlTimeZone::getOffset() error tests on non-x86
...
I'm not totally sure, but I have a strong suspicion that the fact
that this produces an error is an artifact of undefined cast behavior
(which will yield INDVAL on x86 but saturate on ARM). INF seems to
be the only value that results in an error even on x86 (variations
like -INF or NAN succeed).
It might make sense to just remove this test entirely, but for now
let's skip it on non-x86.
2019-10-24 15:26:11 +02:00
Tyson Andre
38f388fba4
Fix miscellaneous typos in docs
2019-10-19 19:19:28 +02:00
Christoph M. Becker
884b780667
Merge branch 'PHP-7.3' into PHP-7.4
...
* PHP-7.3:
Split intl tests for ICU 65
2019-10-04 13:54:49 +02:00
Christoph M. Becker
1ce8c805e2
Merge branch 'PHP-7.2' into PHP-7.3
...
* PHP-7.2:
Split intl tests for ICU 65
2019-10-04 13:53:58 +02:00
Christoph M. Becker
545412a6cd
Split intl tests for ICU 65
2019-10-04 13:53:22 +02:00
Fabien Villepinte
0aa3acc6c4
Fix borked SKIPIFs
2019-09-30 17:51:41 +02:00
Nikita Popov
a31256d52c
Merge branch 'PHP-7.3' into PHP-7.4
2019-09-25 10:34:33 +02:00
Nikita Popov
915fe2fdc6
Merge branch 'PHP-7.2' into PHP-7.3
2019-09-25 10:34:25 +02:00
Jinesh Patel
d2331cc3f2
Fix hash key length in umsg_parse_format()
...
Fix array length passed to zend_hash_str_find_ptr() casting from
UChar array to char array requires mul by sizeof(UChar).
2019-09-25 10:30:33 +02:00
Remi Collet
d78ffd54ef
Merge branch 'PHP-7.3' into PHP-7.4
...
* PHP-7.3:
Raise minimal GCC version, Test with 4.8 is OK With 4.4: error: #pragma GCC diagnostic not allowed inside functions
2019-09-10 16:29:44 +02:00
Remi Collet
664b1a3f57
Merge branch 'PHP-7.2' into PHP-7.3
...
* PHP-7.2:
Raise minimal GCC version, Test with 4.8 is OK With 4.4: error: #pragma GCC diagnostic not allowed inside functions
2019-09-10 16:29:30 +02:00
Remi Collet
c43fc204b1
Raise minimal GCC version,
...
Test with 4.8 is OK
With 4.4: error: #pragma GCC diagnostic not allowed inside functions
2019-09-10 16:28:35 +02:00
Fabien Villepinte
ced5bb7d88
Add the last missing SKIPIF
2019-09-04 08:53:35 +02:00
Christoph M. Becker
eeb910911d
Merge branch 'PHP-7.3' into PHP-7.4
...
* PHP-7.3:
Suppress deprecation warning on IDNA2003 ICU methods for clang
2019-08-23 12:22:28 +02:00
Christoph M. Becker
c9d31941e4
Merge branch 'PHP-7.2' into PHP-7.3
...
* PHP-7.2:
Suppress deprecation warning on IDNA2003 ICU methods for clang
2019-08-23 12:21:57 +02:00
Christoph M. Becker
ff7029b65b
Suppress deprecation warning on IDNA2003 ICU methods for clang
2019-08-23 12:18:58 +02:00
Sara Golemon
bd62f5ac47
Merge branch 'PHP-7.3' into PHP-7.4
...
* PHP-7.3:
Suppress deprecation warning on IDNA2003 ICU methods
2019-08-16 12:41:32 -04:00
Sara Golemon
a192499d2a
Merge branch 'PHP-7.2' into PHP-7.3
...
* PHP-7.2:
Suppress deprecation warning on IDNA2003 ICU methods
2019-08-16 12:41:02 -04:00
Sara Golemon
725f439778
Suppress deprecation warning on IDNA2003 ICU methods
2019-08-16 12:40:20 -04:00
Sara Golemon
4d3be2a995
Merge branch 'PHP-7.3' into PHP-7.4
...
* PHP-7.3:
Revert "Move to non deprecated API on suitable ICU versions"
2019-08-16 11:40:01 -04:00
Sara Golemon
9b9814fa77
Revert "Move to non deprecated API on suitable ICU versions"
...
This reverts commit 13a2f2d041 .
The APIs used by this commit aren't entirely equivalent to the original ones.
2019-08-16 11:39:05 -04:00
George Peter Banyard
1c1de0c41a
Convert all php_error_docref0 to php_error_docref
...
Closes GH-4394
2019-07-13 02:05:17 +02:00
Nikita Popov
b53bb3c15b
Fix UConverter leak
2019-06-25 14:28:58 +02:00
Nikita Popov
77f7ec5152
Fix TimeZone leak in intl MessageFormat
...
I'm just giving each format a distinct owned object here ... sharing
it looks complicated.
2019-06-25 14:28:58 +02:00
Nikita Popov
608097a901
Fix various instances of memcpy null ub
2019-06-19 17:27:09 +02:00
Dmitry Stogov
457392fa64
Cheaper checks for exceptions thrown from __toString()
2019-06-06 01:47:22 +03:00
Nikita Popov
a31f46421d
Allow exceptions in __toString()
...
RFC: https://wiki.php.net/rfc/tostring_exceptions
And convert some object to string conversion related recoverable
fatal errors into Error exceptions.
Improve exception safety of internal code performing string
conversions.
2019-06-05 14:25:07 +02:00
Anatol Belski
793fd6bce9
Fix expect section
2019-06-01 14:50:14 +02:00
Anatol Belski
2205546edf
Merge branch 'PHP-7.2' into PHP-7.3
...
* PHP-7.2:
Change ZPP only if compiled with ICU >= 64
Update tests for ICU 64
2019-06-01 02:26:07 +02:00
Anatol Belski
ee153deb1f
Change ZPP only if compiled with ICU >= 64
2019-06-01 02:18:56 +02:00
Nikita Popov
b01d9fdab1
Update tests for ICU 64
...
(cherry picked from commit 8a8bc5c452 )
2019-06-01 02:17:16 +02:00
Thomas Gerbet
bfc10978ef
SimpleXMLElement and ResourceBundle implement Countable
...
Both classes already have a count() method and are considered
countable by \is_countable().
2019-05-31 18:59:19 +02:00
Nikita Popov
8a8bc5c452
Update tests for ICU 64
2019-05-31 15:39:03 +02:00
Dmitry Stogov
83804519df
Replace ZVAL_COPY() and ZVAL_COPY_VALUE() for IS_OBJECT by cheaper macros
2019-05-28 20:10:02 +03:00
Peter Kokot
f95b27c6f6
Convert CRLF to LF
...
These files are tracked with CRLF line endings in Git and can be
converted to LF. Neither are parts of tests or code itself.
2019-05-13 03:51:00 +02:00
Peter Kokot
6abc6baa2a
[ci skip] Migrate intl error conventions docs to Markdown
2019-05-12 23:24:03 +02:00