summaryrefslogtreecommitdiff
path: root/deps/icu-small/source/common/unicode/platform.h
diff options
context:
space:
mode:
authorSteven R. Loomis <srloomis@us.ibm.com>2018-10-17 09:43:52 -0700
committerSteven R. Loomis <srloomis@us.ibm.com>2018-10-24 08:27:36 -0700
commit6786ff4d3688512d8b717ec24188818ac5493d0b (patch)
treeab18b7a66afee52420fe0bedf7b38eb93f671373 /deps/icu-small/source/common/unicode/platform.h
parentd8f2d2726143ecfbf99b90b7bbbc6f41b3cd95fc (diff)
downloadandroid-node-v8-6786ff4d3688512d8b717ec24188818ac5493d0b.tar.gz
android-node-v8-6786ff4d3688512d8b717ec24188818ac5493d0b.tar.bz2
android-node-v8-6786ff4d3688512d8b717ec24188818ac5493d0b.zip
deps: icu 63.1 bump (CLDR 34)
- Full release notes: http://site.icu-project.org/download/63 Fixes: https://github.com/nodejs/node/issues/22344 PR-URL: https://github.com/nodejs/node/pull/23715 Reviewed-By: Refael Ackermann <refack@gmail.com> Reviewed-By: Richard Lau <riclau@uk.ibm.com> Reviewed-By: Gus Caplan <me@gus.host> Reviewed-By: Michael Dawson <michael_dawson@ca.ibm.com>
Diffstat (limited to 'deps/icu-small/source/common/unicode/platform.h')
-rw-r--r--deps/icu-small/source/common/unicode/platform.h26
1 files changed, 15 insertions, 11 deletions
diff --git a/deps/icu-small/source/common/unicode/platform.h b/deps/icu-small/source/common/unicode/platform.h
index d9636580c3..ee0d8b7a00 100644
--- a/deps/icu-small/source/common/unicode/platform.h
+++ b/deps/icu-small/source/common/unicode/platform.h
@@ -38,7 +38,7 @@
* and/or from other macros that are predefined by the compiler
* or defined in standard (POSIX or platform or compiler) headers.
*
- * As a temporary workaround, you can add an explicit <code>#define</code> for some macros
+ * As a temporary workaround, you can add an explicit \#define for some macros
* before it is first tested, or add an equivalent -D macro definition
* to the compiler's command line.
*
@@ -207,6 +207,9 @@
# define CYGWINMSVC
#endif
*/
+#ifdef U_IN_DOXYGEN
+# define CYGWINMSVC
+#endif
/**
* \def U_PLATFORM_USES_ONLY_WIN32_API
@@ -417,6 +420,9 @@
#ifndef __has_cpp_attribute
# define __has_cpp_attribute(x) 0
#endif
+#ifndef __has_declspec_attribute
+# define __has_declspec_attribute(x) 0
+#endif
#ifndef __has_builtin
# define __has_builtin(x) 0
#endif
@@ -493,13 +499,8 @@ namespace std {
*/
#ifdef U_NOEXCEPT
/* Use the predefined value. */
-#elif defined(_HAS_EXCEPTIONS) && !_HAS_EXCEPTIONS /* Visual Studio */
-# define U_NOEXCEPT
-#elif U_CPLUSPLUS_VERSION >= 11 || __has_feature(cxx_noexcept) || __has_extension(cxx_noexcept) \
- || (defined(_MSC_VER) && _MSC_VER >= 1900) /* Visual Studio 2015 */
-# define U_NOEXCEPT noexcept
#else
-# define U_NOEXCEPT
+# define U_NOEXCEPT noexcept
#endif
/**
@@ -519,6 +520,8 @@ namespace std {
(__has_feature(cxx_attributes) && __has_warning("-Wimplicit-fallthrough"))
# define U_FALLTHROUGH [[clang::fallthrough]]
# endif
+#elif defined(__GNUC__) && (__GNUC__ >= 7)
+# define U_FALLTHROUGH __attribute__((fallthrough))
#endif
#ifndef U_FALLTHROUGH
@@ -763,7 +766,8 @@ namespace std {
#elif U_HAVE_CHAR16_T \
|| (defined(__xlC__) && defined(__IBM_UTF_LITERAL) && U_SIZEOF_WCHAR_T != 2) \
|| (defined(__HP_aCC) && __HP_aCC >= 035000) \
- || (defined(__HP_cc) && __HP_cc >= 111106)
+ || (defined(__HP_cc) && __HP_cc >= 111106) \
+ || (defined(U_IN_DOXYGEN))
# define U_DECLARE_UTF16(string) u ## string
#elif U_SIZEOF_WCHAR_T == 2 \
&& (U_CHARSET_FAMILY == 0 || (U_PF_OS390 <= U_PLATFORM && U_PLATFORM <= U_PF_OS400 && defined(__UCS2__)))
@@ -782,6 +786,8 @@ namespace std {
/* Use the predefined value. */
#elif defined(U_STATIC_IMPLEMENTATION)
# define U_EXPORT
+#elif defined(_MSC_VER) || (__has_declspec_attribute(dllexport) && __has_declspec_attribute(dllimport))
+# define U_EXPORT __declspec(dllexport)
#elif defined(__GNUC__)
# define U_EXPORT __attribute__((visibility("default")))
#elif (defined(__SUNPRO_CC) && __SUNPRO_CC >= 0x550) \
@@ -789,8 +795,6 @@ namespace std {
# define U_EXPORT __global
/*#elif defined(__HP_aCC) || defined(__HP_cc)
# define U_EXPORT __declspec(dllexport)*/
-#elif defined(_MSC_VER)
-# define U_EXPORT __declspec(dllexport)
#else
# define U_EXPORT
#endif
@@ -806,7 +810,7 @@ namespace std {
#ifdef U_IMPORT
/* Use the predefined value. */
-#elif defined(_MSC_VER)
+#elif defined(_MSC_VER) || (__has_declspec_attribute(dllexport) && __has_declspec_attribute(dllimport))
/* Windows needs to export/import data. */
# define U_IMPORT __declspec(dllimport)
#else