From d0e8f58b81d197e5c9d44038ea3887703fef94ba Mon Sep 17 00:00:00 2001 From: Jakub Jelinek Date: Tue, 8 Oct 2024 10:01:47 +0200 Subject: contrib, libcpp, libstdc++: Update to Unicode 16.0 It is autumn again and there is a new Unicode version 16.0. The following patch updates our Unicode stuff in contrib, libcpp and libstdc++ from that Unicode version. 2024-10-08 Jakub Jelinek contrib/ * unicode/README: Update glibc git commit hash, replace Unicode 15 or 15.1 versions with 16. * unicode/gen_libstdcxx_unicode_data.py: Use 160000 instead of 150100 in _GLIBCXX_GET_UNICODE_DATA test. * unicode/from_glibc/utf8_gen.py: Updated from glibc 064c708c78cc2a6b5802dce73108fc0c1c6bfc80 commit. * unicode/DerivedCoreProperties.txt: Updated from Unicode 16.0. * unicode/emoji-data.txt: Likewise. * unicode/PropList.txt: Likewise. * unicode/GraphemeBreakProperty.txt: Likewise. * unicode/DerivedNormalizationProps.txt: Likewise. * unicode/NameAliases.txt: Likewise. * unicode/UnicodeData.txt: Likewise. * unicode/EastAsianWidth.txt: Likewise. gcc/testsuite/ * c-c++-common/cpp/named-universal-char-escape-1.c: Add tests for some Unicode 16.0 characters, both normal and generated. libcpp/ * makeucnid.cc (write_copyright): Update Unicode Copyright years. * makeuname2c.cc (generated_ranges): Adjust Unicode version from 15.1 to 16.0. Add EGYPTIAN HIEROGLYPH- generated range, adjust indexes in following entries. (write_copyright): Update Unicode Copyright years. * generated_cpp_wcwidth.h: Regenerated. * ucnid.h: Regenerated. * uname2c.h: Regenerated. libstdc++-v3/ * include/bits/unicode.h (std::__unicode::__v15_1_0): Rename inline namespace to ... (std::__unicode::__v16_0_0): ... this. (_GLIBCXX_GET_UNICODE_DATA): Change from 150100 to 160000. * include/bits/unicode-data.h: Regenerated. * testsuite/ext/unicode/properties.cc: Check for _Gcb_SpacingMark on U+11F03 rather than U+1D16D as the latter lost SpacingMark property in Unicode 16.0. --- gcc/testsuite/c-c++-common/cpp/named-universal-char-escape-1.c | 4 ++++ 1 file changed, 4 insertions(+) (limited to 'gcc') diff --git a/gcc/testsuite/c-c++-common/cpp/named-universal-char-escape-1.c b/gcc/testsuite/c-c++-common/cpp/named-universal-char-escape-1.c index 054eb50..3651fdd 100644 --- a/gcc/testsuite/c-c++-common/cpp/named-universal-char-escape-1.c +++ b/gcc/testsuite/c-c++-common/cpp/named-universal-char-escape-1.c @@ -125,6 +125,7 @@ typedef __CHAR32_TYPE__ char32_t; || U'\U00011F0B' != U'\N{KAWI LETTER VOCALIC RR}' \ || U'\U0001342F' != U'\N{EGYPTIAN HIEROGLYPH V011D}' \ || U'\U00013451' != U'\N{EGYPTIAN HIEROGLYPH MODIFIER DAMAGED AT START AND BOTTOM}' \ + || U'\U00016D5B' != U'\N{KIRAT RAI LETTER MA}' \ || U'\U0001B132' != U'\N{HIRAGANA LETTER SMALL KO}' \ || U'\U0001B155' != U'\N{KATAKANA LETTER SMALL KO}' \ || U'\U0001D2C4' != U'\N{KAKTOVIK NUMERAL FOUR}' \ @@ -137,6 +138,7 @@ typedef __CHAR32_TYPE__ char32_t; || U'\U0001F7D9' != U'\N{NINE POINTED WHITE STAR}' \ || U'\U0001FA76' != U'\N{GREY HEART}' \ || U'\U0001FA88' != U'\N{FLUTE}' \ + || U'\U0001FA89' != U'\N{HARP}' \ || U'\U0001FABC' != U'\N{JELLYFISH}' \ || U'\uAC00' != U'\N{HANGUL SYLLABLE GA}' \ || U'\uAC02' != U'\N{HANGUL SYLLABLE GAGG}' \ @@ -166,6 +168,8 @@ typedef __CHAR32_TYPE__ char32_t; || U'\U0003134A' != U'\N{CJK UNIFIED IDEOGRAPH-3134A}' \ || U'\U00031350' != U'\N{CJK UNIFIED IDEOGRAPH-31350}' \ || U'\U000323AF' != U'\N{CJK UNIFIED IDEOGRAPH-323AF}' \ + || U'\U00013460' != U'\N{EGYPTIAN HIEROGLYPH-13460}' \ + || U'\U000143FA' != U'\N{EGYPTIAN HIEROGLYPH-143FA}' \ || U'\U00017000' != U'\N{TANGUT IDEOGRAPH-17000}' \ || U'\U000187F7' != U'\N{TANGUT IDEOGRAPH-187F7}' \ || U'\U00018D00' != U'\N{TANGUT IDEOGRAPH-18D00}' \ -- cgit v1.1