Go to file
Frank Tang 35dfdf1d02 ICU-21043 Fix calendar problems
This PR fixes
ICU-21043 Erroneous date display in indian calendar of all dates prior to 0001-01-01.
ICU-21044 Hebrew Calendar calculation is incorrect when the year < 1
ICU-21045 Erroneous date display in islamic and islamic-rgsa calendars of all dates prior to 0622-07-18.
ICU-21046 Erroneous date display in islamic-umalqura calendar of all dates prior to  -195366-07-23.

The problem in the indiancal.cpp is
* ICU-21043 the gregorian/julain convesion is wrong. Swith to use
i18n/gregoimp.h fix the problem.

The problem in the hebrwcal.cpp is
* ICU-21044 Use ClockMath::floorDivid to replace x / y for x maybe <  0
also need to fix incorrect value in test file

The problem in the islamcal.cpp:
* ICU-21045: The math of % negative number for year and month is wrong.
* ICU-21046: Not use int64_t methods and caused int32_t overflow while the year is a
huge negative number. Cast to int64_t to force using the int64_t version
for the math fix the problem.

Also add tests to exhaust test 8000 years for all calendar. In quick
mode, only test 2.5 years.

Switch to 0-based month. fix TZ for test.
2020-09-10 00:21:18 -07:00
.ci-builds ICU-21108 Add build using VS2015 toolset, fix job names. 2020-09-08 13:58:38 -07:00
.github ICU-20198 Add issue browse link to PR template. (#200) 2018-10-09 14:05:33 -05:00
docs ICU-21267 stop defining & using FALSE & TRUE macros in public headers 2020-09-09 15:13:56 -07:00
icu4c ICU-21043 Fix calendar problems 2020-09-10 00:21:18 -07:00
icu4j ICU-21249 integrate CLDR release-38-alpha1 to ICU trunk 2020-09-04 15:05:22 -07:00
tools ICU-21257 remove #License fragment from license URLs 2020-09-04 10:02:17 -07:00
vendor/double-conversion ICU-21249 Updating double-conversion for ICU 68 2020-08-26 19:09:54 -05:00
.appveyor.yml ICU-21265 Increase git fetch depth on CI builds to allow rebuilding older commits. 2020-09-03 16:59:48 -07:00
.cpyskip.txt ICU-20088 User Guide migration: Add navigation structure and TOC for Jekyll, fix formatting issues, etc. 2020-08-17 10:44:44 -07:00
.gitattributes ICU-20953 Tell GitHub to treat JSON as JSONC to fix syntax highlighting for comments. 2020-02-05 11:33:53 -08:00
.gitignore ICU-21078 Improve instructions and gitignore files for cldr-to-icu. 2020-06-16 20:09:46 +02:00
.travis.yml ICU-21104 Add build bots using Ubuntu 18.04 with C++14 2020-05-08 18:34:15 -07:00
KEYS ICU-20975 update KEYS 2020-03-09 18:22:38 -07:00
README.md ICU-20088 User Guide migration: Add navigation structure and TOC for Jekyll, fix formatting issues, etc. 2020-08-17 10:44:44 -07:00

International Components for Unicode

This is the repository for the International Components for Unicode. The ICU project is under the stewardship of The Unicode Consortium.

ICU Logo

Build Status (master branch)

Build Status
TravisCI Build Status
Azure Pipelines Build Status
Azure Pipelines (Exhaustive Tests) Build Status
Azure Pipelines (Valgrind ICU4C) Build Status
AppVeyor Build status
Fuzzing Fuzzing Status

Subdirectories and Information

License

Please see ./icu4c/LICENSE (C and J are under an identical license file.)

Copyright © 2016 and later Unicode, Inc. and others. All Rights Reserved. Unicode and the Unicode Logo are registered trademarks of Unicode, Inc. in the U.S. and other countries. Terms of Use and License