The home of the ICU project source code.
Find a file
Fredrik Roubert 480bec3ea6 ICU-20601 Wrap public ICU API compound macros in do { } while.
This is the normal way of making compound macros behave like statements
and allowing macro invocations that look like function calls to work
just like if they were function calls.

Before ICU 65, function-like, multi-statement ICU macros were just
defined as series of statements wrapped in { } blocks and the caller
could choose to either treat them as if they were actual functions and
end the invocation with a trailing ; creating an empty statement after
the block or else omit this trailing ; using the knowledge that the
macro would expand to { }.

To continue supporting code that depends on that old behaviour, on being
able to omit the trailing ; when invoking one of these macros, the new
surrounding do { } while is done through preprocessor defines that can
easily be overridden at compile time, when needed.
2019-08-15 19:17:25 +02:00
.ci-builds ICU-20524 Adding variables for relative file replacement directory. 2019-08-14 00:25:26 -07:00
.github ICU-20198 Add issue browse link to PR template. (#200) 2018-10-09 14:05:33 -05:00
docs ICU-20524 Adding variables for relative file replacement directory. 2019-08-14 00:25:26 -07:00
icu4c ICU-20601 Wrap public ICU API compound macros in do { } while. 2019-08-15 19:17:25 +02:00
icu4j ICU-20627 Adding getAvailableLocalesByType, ICU4C and ICU4J. 2019-08-14 20:45:27 -07:00
tools ICU-20553 Updating commit checker docs; makes --rev-range required. 2019-04-17 13:42:35 -07:00
vendor/double-conversion ICU-20439 Updating double-conversion. 2019-03-18 21:17:22 -07:00
.appveyor.yml ICU-20434 ICU4C AppVeyor CI builds failing on Cygwin 3.0.0. Use Cygwin to 2.11 for now. 2019-02-18 21:54:44 -08:00
.cpyskip.txt ICU-20217 Replaces seed corpus zip files with the original txt files. 2019-02-01 16:07:25 -08:00
.gitattributes ICU-20017 Fix line endings in Visual Studio *.props files. (#101) 2018-09-27 14:27:39 -07:00
.gitignore ICU-20712 Add support for building Windows UWP ARM/ARM64 data DLLs. 2019-08-13 17:03:33 -07:00
.travis.yml ICU-20766 Fix failing TravisCI build for ICU4J due to missing ANT. 2019-08-08 18:13:20 -07:00
README.md ICU-20033 Add a top-level README.md (#11) 2018-09-27 14:27:37 -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

Build Status
TravisCI Build Status
Win x64 Release Build status
Win x86 Release Build 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