Commit graph

467 commits

Author SHA1 Message Date
Steve Lawrence
3edd9c828a ICU-22303 Support parsing infinity/NaN when decimal pattern match is required
If a DecimalFormat pattern contains a decimal point and
setDecimalPatternMatchRequired is true, then DecimalFormat parse() fails
to parse infinity/NaN representations. This is because infinity/NaN
parsing does not set the HAS_DECIMAL_SEPARATOR_FLAG and so the
RequireDecimalSeparatorValidator fails.

This modifies the RequireDecimalSeparatorValidator so that it does not
fail if the INFINITY or NAN flags are set, making it so decimal
separators are not required if the infinity/NaN representations are
parsed.
2025-03-19 16:19:41 -07:00
Markus Scherer
320220ef69 ICU-22954 intltest.h & IcuTestErrorCode usable without U_SHOW_CPLUSPLUS_API 2024-12-19 17:40:33 -08:00
Frank Tang
e025466e3a ICU-22983 Fix DecimalQuantity::shiftLeft ubsan issue
ICU-22983 Add java tests and comments
2024-11-27 17:33:34 -08:00
DraganBesevic
045350e7c1 ICU-22723 Integrate CLDR 46 release alpha0, part 4, fixes for exausting tests 2024-08-14 17:09:35 -07:00
DraganBesevic
d04154833c ICU-22723 Integrate CLDR 46 release alpha0, part 3, source files 2024-08-14 17:09:35 -07:00
Fredrik Roubert
0178a07a26 ICU-22793 Clang-Tidy: google-readability-casting
https://releases.llvm.org/17.0.1/tools/clang/tools/extra/docs/clang-tidy/checks/google/readability-casting.html
2024-07-04 22:32:12 +02:00
Fredrik Roubert
e017edc97d ICU-22621 Clang-Tidy: readability-qualified-auto
https://releases.llvm.org/17.0.1/tools/clang/tools/extra/docs/clang-tidy/checks/readability/qualified-auto.html
2024-03-19 15:55:56 +01:00
DraganBesevic
4f2cefb7ca ICU-22534 Integrate CLDR 45 release beta1 2024-03-18 20:49:00 -07:00
Fredrik Roubert
5401c12018 ICU-22621 Clang-Tidy: modernize-use-nullptr
https://releases.llvm.org/17.0.1/tools/clang/tools/extra/docs/clang-tidy/checks/modernize/use-nullptr.html
2024-03-15 14:31:54 +01:00
DraganBesevic
bb7352990e ICU-22325 CLDR 44 alpha2 integration to ICU part three, source files changes 2023-09-13 11:06:53 -07:00
Peter Edberg
2270c174a5 ICU-22325 CLDR release-44-alpha1 to main:
- binaries, binary-as-source, CLDR data sources;
  - CLDR test data & dtd, ICU lib/tool/test source updates.
2023-08-22 14:40:51 -07:00
Markus Scherer
b6dcc95d3c ICU-21833 remove redundant void parameter lists
See #2351
2023-03-02 09:31:57 -08:00
Frank Tang
638acd0c38 ICU-21374 Add a CFI build bot for ICU4C
Add the github action bot to build with cfi
Also fix all the known issues which require the change from C style cast to
static_cast inside the i18n and common directory while we are sure about
the object. and use
C++ style dynamic_cast for base-to-derive cast in other code inside i18n
and common and in test code or tool.
Change to use const_cast for casting between const / non-const
2023-02-06 15:47:14 -08:00
Fredrik Roubert
2de88f9d9c ICU-21833 Replace UChar with char16_t in all C++ code. 2023-02-06 19:27:44 +01:00
Fredrik Roubert
2e0d30cfcf ICU-21833 Replace NULL with nullptr in all C++ code. 2023-02-03 20:20:38 +01:00
Frank Tang
de0a28644b ICU-22251 Move sprintf to snprintf.
See #2291
2023-01-25 23:23:29 -08:00
Fredrik Roubert
030fa1a479 ICU-21148 Consistently use standard lowercase true/false everywhere.
This is the normal standard way in C, C++ as well as Java and there's no
longer any reason for ICU to be different. The various internal macros
providing custom boolean constants can all be deleted and code as well
as documentation can be updated to use lowercase true/false everywhere.
2022-09-07 20:56:33 +02:00
Peter Edberg
dcd19ae9bc ICU-21957 integrate CLDR release-42-alpha0 (first with Survey Tool data) to ICU main for 72 (#2142) 2022-07-29 15:32:45 -07:00
Rich Gillam
58a51495dd ICU-22088 Various fixes to make dealing with NUMBERING_SYSTEM formatters easier. 2022-07-28 16:18:01 -07:00
Peter Edberg
64b3548126 ICU-21957 integrate CLDR release-42-m1 (early milestone) to ICU main for 72 (rebased on main) +
FormattedStringBuilderTest::testInsertOverflow infolns,logKnownIssue skip for CI exhaustive crash
2022-05-27 13:50:43 -07:00
Shane F. Carr
4059be5964 ICU-21908 Add incrementExact to ICU4C Precision
See #1979
2022-02-23 20:18:16 -07:00
Peter Edberg
2f8749a026 ICU-21900 integrate CLDR release-41-alpha0 to ICU main for 71 front-load 2022-02-07 22:02:36 -08:00
Shane F. Carr
f39cf84d62 ICU-21556 Support currency as decimal separator in patterns
See #1711
2021-09-22 12:34:05 -05:00
Shane F. Carr
fd5c76edbd ICU-20425 Strip trailing zeros from Java rounding increment
See #1726
2021-09-21 22:28:06 -05:00
Peter Varga
80d42a13fc ICU-21734 Add missing overrides in tests 2021-09-07 13:56:33 -07:00
Peter Edberg
49dda34fb1 ICU-21581 integrate CLDR 40a0 to ICU trunk 2021-08-18 23:59:19 -07:00
luz paz
73eca0a9c9 ICU-21580 Fix typos in icu4c/
Found via `codespell -q 3 -L ans,anumber,atleast,ba,bre,hace,nd,nin,ois,rsource,som,sur,tht -S icu4c/source/data/zone,icu4c/source/data/lang`
ICU-21580 Fix source (related) typos
ICU-21580 Revert extraneous auto-encoding
ICU-21580 Re-add previous reverted fix without auto-encoding
2021-07-19 13:22:38 -05:00
gnrunge
563f8b550a ICU-21431 Adds a check to an ICU4C unit test to prevent a segmentation fault
if this test runs without ICU data.
2020-12-08 14:25:42 -08:00
Corey Taylor
0912b85193 ICU-10997 Port test case for 10997 currency formatting to icu4c 2020-11-05 23:17:33 -06:00
Shane F. Carr
7111def494 ICU-21249 Fix logKnownIssue for ICU-13574 2020-09-15 12:27:44 -05:00
gnrunge
b6ff1393d5 ICU-21268 Add error checks to avoid segmentation faults if tests run with stubdata only.
ICU-21268 Use 'nullptr' instead of NULL when checking for pointer value.

ICU-21268: Fixes error message.

ICU-21268 Style fixes (space before '{').
2020-09-08 18:22:29 -07:00
Peter Edberg
e618a1cc2d ICU-21249 integrate CLDR release 38 alpha0 to ICU trunk 2020-09-02 10:23:14 -07:00
Shane F. Carr
59cdbe1f53 ICU-21232 Improve performance of DecimalFormat#parse on long numbers 2020-08-27 14:33:05 -05:00
Hugo van der Merwe
6b595d1c01 ICU-21076 Delete unneeded MeasureUnit data & code 2020-08-05 01:48:32 +02:00
John Wilcock
6fe86f3934 ICU-21173 Add support for more currency variants. ICU4C equivalent of…
See #1184
2020-07-03 04:51:15 +02:00
John Wilcock
9219c6ae03 ICU-13733 Added test for mismatching currency format for strict-mode parsing
See #1169
2020-06-30 02:22:57 +02:00
Frank Tang
e7bd5b1cef ICU-21109 minimum grouping digits in DecimalFormat
See #1152
2020-06-11 14:32:52 -07:00
Shane F. Carr
3ff6627ce6 ICU-21134 Copy additional data when toNumberFormatter is used
See #1156
2020-05-28 22:33:58 -05:00
Elango Cheran
3fb3929f80 ICU-21040 Fix segfaults in no data tests 2020-04-10 13:56:10 -07:00
Shane F. Carr
b186f2cff6 ICU-20912 Make C/J Currency consistent on lowercase/uppercase currency equality
- Adds additional tests for Currency equality behavior
2020-03-25 12:21:34 -05:00
Shane F. Carr
fc6612cc56 ICU-20920 Add support for CLDR 37 unit identifiers in ICU4C
See #964
2020-03-24 14:15:19 -05:00
Shane Carr
1e24bcd721 ICU-20956 Fix monetary symbol getters in DecimalFormat
See #987
2020-03-23 20:12:14 -05:00
Shane Carr
e572de5516 ICU-20961 Return correct currency plural pattern from DecimalFormat 2020-03-04 19:43:57 -08:00
Elango Cheran
2b32778611 ICU-13734 Adding tests for DecimalFormat strict mode handling of flexible whitespace 2019-10-09 17:52:40 -07:00
Elango Cheran
3b99d07581 ICU-13735 Adding tests for DecimalFormat grouping getters 2019-09-27 11:05:32 -07:00
Peter Edberg
e25796f6e5 ICU-20801 integrate CLDR release-36-alpha2, update MeasureUnits (#809) 2019-09-06 14:07:36 -07:00
Markus Scherer
d3315d98ef ICU-20783 use C++ covariant return types 2019-08-23 11:45:36 -07:00
Andy Heninger
5f837abd40 ICU-13533 Fix address sanitizer failures found with no-data ICU testing. 2019-08-19 13:29:32 -07:00
Fredrik Roubert
b4b2378931 ICU-20601 Wrap ICU test compound macros in do { } while.
This does the same for the ICU test code as was done for the
public ICU API in commit 480bec3ea6.
2019-08-15 22:01:42 +02:00
Fredrik Roubert
c78d9fa137 ICU-20601 Add missing semicolons.
These are the same changes for the C++ code as was done for the C code
by commit aa60d4292e.
2019-08-15 12:30:21 +02:00