Commit graph

23322 commits

Author SHA1 Message Date
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
Peter Edberg
87fc840bf7 ICU-22220 CLDR release-43-alpha0 (with SurveyTool data) to ICU main 2023-02-06 14:46:14 -08:00
Fredrik Roubert
9fd2742dfa ICU-21833 Replace UChar with char16_t in C++ code. 2023-02-06 21:53:20 +01:00
Fredrik Roubert
2de88f9d9c ICU-21833 Replace UChar with char16_t in all C++ code. 2023-02-06 19:27:44 +01:00
allenwtsu
3f05361b41 ICU-22100 Modify ML model to improve Japanese phrase breaking performance 2023-02-03 13:07:53 -08:00
Fredrik Roubert
5560ee8870 ICU-21833 Replace nullptr with 0 when assigning to UChar.
This bug was originally introduced by ICU-4844 which erroneously
assigned NULL to UChar (which happens to work, even though it's
conceptually wrong).
2023-02-03 22:04:36 +01:00
HanatoK
fcd6e384bd ICU-22194 Change CharacterIterator.DONE to CharacterIterator::DONE in
doc

In C++, the enum inside a class should be accessed by "::" instead of
".".
2023-02-03 12:01:51 -08:00
Fredrik Roubert
2e0d30cfcf ICU-21833 Replace NULL with nullptr in all C++ code. 2023-02-03 20:20:38 +01:00
Frank Tang
a47717934a ICU-22252 Suppress Calendar Consistency
See #2298
2023-02-03 16:38:50 +01:00
allenwtsu
0b3b83a809 ICU-22100 Improve Japanese phrase breaking performance
See #2287
2023-01-31 00:29:41 -08:00
Mihai Nita
76df897b77 ICU-22226 Fix Calendar.getFirstDayOfWeek to honor -u-fw 2023-01-31 00:26:30 -08:00
Frank Tang
de0a28644b ICU-22251 Move sprintf to snprintf.
See #2291
2023-01-25 23:23:29 -08:00
Frank Tang
de9cb9a133 ICU-12725 Update u_isIDStart and u_isIDPart to TR31
ICU-12725 move to uprops.cpp

ICU-12725 change dependency

ICU-12725 Fix Java implementation
2023-01-25 12:02:53 -08:00
Frank Tang
bb0e745e25 ICU-22058 make pointer argument in floorDivide optional
Check the third argument and not set if it is a nullptr
2023-01-18 20:24:48 -08:00
Frank Yung-Fong Tang
da5b047dbe ICU-22242 Test to show incorrect calculation of 1890
See #2270
2023-01-18 12:05:34 -08:00
Frank Tang
cd1b772cbf ICU-22027 Add C++ Calendar API for Temporal
API proposal
https://docs.google.com/document/d/1UYriEzzExiLhi2RD3zjTsI5UQHv1dXaFqrct7yXNdCA/edit#heading=h.x9obor85vpx9

Design Doc
https://docs.google.com/document/d/15ViyC9s0k3VEDwBmAkKxxz4IadZ6QrAIoETkdkF0cVA/

ICU-22027 Adjust API to remove the mention of M00L for now.
2023-01-17 15:08:08 -08:00
Elango Cheran
d4ac09edbd ICU-12811 Replace local-maven-repo with data jar contents
See #2275
2023-01-17 11:09:29 -08:00
Shane F. Carr
89c1700424 ICU-22093 Polish for SimpleNumberFormatter
See #2277
2023-01-12 11:38:27 -06:00
Peter Edberg
ad82a6693a ICU-22220 integrate root exemplarCities chnages for CLDR release-43-m0 to ICU main 2023-01-12 08:57:35 -08:00
Peter Edberg
8d411e9b6a ICU-22220 integrate CLDR release-43-m0 to ICU main for 73, update maven-build files 2023-01-10 11:32:24 -08:00
allenwtsu
80fb309c8a ICU-22100 Remove unicode blocks from Japanese ML phrase breaking
See #2278
2023-01-09 17:38:51 -08:00
Thomas Köppe
0c6d7fc98d ICU-22222 Add explicit instantiation declarations
We exclude these declarations from MSVC, where they don't work because
the don't interact well with the U_I18N_API import/export macros
2023-01-07 00:03:38 +00:00
Fredrik Roubert
82115c060f ICU-22193 Make clang-release-build-and-test work with ubuntu-latest.
Contemporary implementations of the C++ standard library also use the
@deprecated annotation in its header files and these then get included
by the preprocessor when preprocessing the ICU header files, like this:

  /// @deprecated Non-standard. Use `is_null_pointer` instead.

In order to work as expected, testtagsguards.sh must therefore be
updated to ignore @deprecated annotations unless they're for ICU.
2022-12-19 10:56:01 +09:00
Fredrik Roubert
2a6f06cb4c ICU-22193 Make run-with-stubdata work with ubuntu-latest.
It remains unknown when and why this changed, but nowadays the required
data files are to be found in a subdirectory named "build".
2022-12-16 10:06:32 +09:00
Markus Scherer
0cbf969cf7 ICU-22193 fix some CI test failures 2022-12-13 11:18:44 -08:00
Peter Edberg
7e083e34fb ICU-22220 BRS73RC Update version number to 73.0.1 2022-12-04 21:14:41 -08:00
L. E. Segovia
ba8e4087ca ICU-22203 Windows: enable C-code generation with overridden entry point 2022-12-02 11:45:09 -08:00
L. E. Segovia
e7aad77f31 ICU-22204 toolutil: Fix crash when trying to generate MinGW assembly 2022-12-02 10:42:24 -08:00
Shuhei Iitsuka
b6b7b045e9 ICU-22100 Incorporate BudouX into ICU (C++) 2022-12-02 10:11:06 -08:00
Manish Goregaokar
d02b30fc3f ICU-20115 ICU4C: Move SimpleDateFormat over to SimpleNumberFormatter 2022-12-01 09:40:55 -08:00
yumaoka
cecd19e9ba ICU-22217 TZ Database 2022g updates 2022-11-30 22:08:08 -05:00
Shane F. Carr
a2854b615a ICU-22093 ICU4C: Add SimpleNumber and SimpleNumberFormatter
See #2241
2022-11-28 20:28:50 -08:00
Victor Chang
194236a1b4 ICU-22214 Fix set pointer to false in sprpdata.c 2022-11-28 14:48:18 -08:00
Frank Tang
da5d3e0c5b ICU-22206 Fix unsafe mix of UBool
Fix "unsafe mix of type 'UBool' and type 'bool' in operation:
2022-11-18 10:36:55 -08:00
Eli Kobrin
8b7ef3d908 ICU-22198 Fix stack buffer overflow. 2022-11-16 11:29:32 -08:00
Frank Tang
9c1fb785b3 ICU-22164 Replace switch+getType with subclass
See #2215

fix
2022-11-11 14:49:16 -08:00
Frank Tang
b0ab1171ad ICU-10752 Spread (s|g)etRelativeYear to subclass
Remove the switch statment implementaiton in
Calendar::(g|s)etRelatedYear
and move the code into each subclass as proper OOP style.
2022-11-09 13:18:24 -08:00
Markus Scherer
b00562e989 ICU-22191 writesrc.cpp: enable PRI formatting constants on all compilers 2022-11-09 04:38:00 +00:00
Jungshik Shin
05dc2ac924 ICU-22119 Add lw=phrase for Korean using line_*_phrase_cj
brkitr/ko.txt is created to use line_*_.cj.txt for both
lw=phrase and lw != phrase cases for Korean. This is the simplest
way to fix ICU-22119 taking advantage of the fact that ICU
does not have a Korean dictionary so we don't have to worry about
adding the list of Korean particles to keep them attached to the
preceeding word.

The downside is that it only works when the locale is ko or ja while
it should work in any locale. Another is it makes ICU deviate from
CSS3 by using the same CJ (conditonal Japanese) rules for Korean as
well. However, CSS3 spec is wrong on that point and should be changed.
See https://unicode-org.atlassian.net/browse/CLDR-4931 .
2022-11-07 22:30:49 +00:00
Andy Heninger
67a7e2caf0 ICU-21180 RuleBasedBreakIterator, refactor init.
In class RuleBasedBreakIterator, refactor how object initialization is handled
by the various constructors, taking advantage of C++11's ability to directly
initialize data members in the class declaration.

This will simplify ongoing maintenance of the code by eliminating the need
to keep initialization lists synchronized with the class data members.
This is being done now in preparation for additional changes to fix problems
with the handling of memory allocation failures.
2022-11-02 16:25:41 -07:00
yumaoka
2d19377a8d ICU-22196 TZ Database 2022f updates 2022-11-01 20:21:18 -04:00
Markus Scherer
436f5a7df5 ICU-22194 runConfigureICU computer->compiler
@josephshen found that the help text here has the wrong word, and I dropped the ball on his PR #2217 :-(
2022-10-31 16:18:18 -07:00
Frank Tang
294b26eb7a ICU-22159 Merge inDaylightTime to Calendar
All the subclass implementation of inDaylightTime are the same
so just move to a base class implementation.
2022-10-31 08:42:51 -07:00
Frank Tang
9f3feed545 ICU-22160 clean up Calendar code
Remove unnecessary BuddhistCalendar::handleComputeMonthStart
Remove unnecessary include
2022-10-31 08:41:54 -07:00
Sergey Fedorov
2b77e39fbb ICU-22191 writesrc.cpp: fix cinttypes header and place after C headers 2022-10-28 08:41:22 -07:00
Andy Heninger
866254ef12 ICU-21180 BreakIterator, change all NULL to nulptr
In the C++ break iterator code, change all use of NULL to nullptr.
This is in preparation for follow-on PRs to improve out-of-memory error handling
in Break Iterators, keeping use of nullptr consistent between old and new
or updated code.
2022-10-26 18:55:48 -07:00
Peter Edberg
ff3514f257 ICU-21958 integrate CLDR release-42-beta5 to ICU main for 72 2022-10-13 16:23:11 -07:00
gnrunge
f949713ce8 ICU-22177 Replace angular brackets in include with double quotes. 2022-10-13 13:51:05 -07:00
yumaoka
00a4cdbd5b ICU-22178 Update ICU tzdata to 2022e 2022-10-12 21:07:34 -04:00
Peter Edberg
c6c01f4b79 ICU-21958 integrate CLDR release-42-beta4 to ICU main for 72 2022-10-11 19:44:30 -07:00