c6fd07cdec
When C code includes the ICU headers, the UChar type is defined to be uint16_t. But when C++ code includes the headers, UChar is char16_t even when U_SHOW_CPLUSPLUS_API has been set to 0. Apart from arguably being an inconsistency in the API, this means that C++98 or C++03 code can't use the C API even though C99 code can. So, change unicode/umachine.h to check not just whether __cplusplus is defined but the value of U_CPLUSPLUS_VERSION when deciding how to typedef UChar. |
||
---|---|---|
.ci-builds | ||
.github | ||
docs | ||
icu4c | ||
icu4j | ||
tools | ||
vendor/double-conversion | ||
.appveyor.yml | ||
.cpyskip.txt | ||
.gitattributes | ||
.gitignore | ||
.travis.yml | ||
KEYS | ||
README.md |
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.
Build Status (master branch)
Build | Status |
---|---|
TravisCI | |
Azure Pipelines | |
Azure Pipelines (Exhaustive Tests) | |
AppVeyor | |
Fuzzing |
Subdirectories and Information
icu4c/
ICU for C/C++icu4j/
ICU for Javatools/
Toolsvendor/
Vendor dependencies
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