CVS commit: src/external/gpl3/gcc/dist/libstdc++-v3/config/locale/dragonfly
Module Name:src Committed By: rin Date: Thu Sep 14 03:50:58 UTC 2023 Modified Files: src/external/gpl3/gcc/dist/libstdc++-v3/config/locale/dragonfly: c_locale.h Log Message: gcc: c_locale.h (c++locale.h): Drop unnecessary include This has no longer been required since rev 1.6: http://cvsweb.netbsd.org/bsdweb.cgi/src/external/gpl3/gcc/dist/libstdc++-v3/config/locale/dragonfly/c_locale.h#rev1.6 where __convert_from_v() migrated to .cc file, and direct call for vsnprintf_l(3) from this header file was removed. To generate a diff of this commit: cvs rdiff -u -r1.7 -r1.8 \ src/external/gpl3/gcc/dist/libstdc++-v3/config/locale/dragonfly/c_locale.h Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/external/gpl3/gcc/dist/libstdc++-v3/config/locale/dragonfly/c_locale.h diff -u src/external/gpl3/gcc/dist/libstdc++-v3/config/locale/dragonfly/c_locale.h:1.7 src/external/gpl3/gcc/dist/libstdc++-v3/config/locale/dragonfly/c_locale.h:1.8 --- src/external/gpl3/gcc/dist/libstdc++-v3/config/locale/dragonfly/c_locale.h:1.7 Sun Jul 30 05:51:43 2023 +++ src/external/gpl3/gcc/dist/libstdc++-v3/config/locale/dragonfly/c_locale.h Thu Sep 14 03:50:58 2023 @@ -44,8 +44,6 @@ #include #ifndef __NetBSD__ #include -#else -#include #endif #define _GLIBCXX_NUM_CATEGORIES 0
CVS commit: src/external/gpl3/gcc/dist/libstdc++-v3/config/locale/dragonfly
Module Name:src Committed By: rin Date: Thu Sep 14 03:50:58 UTC 2023 Modified Files: src/external/gpl3/gcc/dist/libstdc++-v3/config/locale/dragonfly: c_locale.h Log Message: gcc: c_locale.h (c++locale.h): Drop unnecessary include This has no longer been required since rev 1.6: http://cvsweb.netbsd.org/bsdweb.cgi/src/external/gpl3/gcc/dist/libstdc++-v3/config/locale/dragonfly/c_locale.h#rev1.6 where __convert_from_v() migrated to .cc file, and direct call for vsnprintf_l(3) from this header file was removed. To generate a diff of this commit: cvs rdiff -u -r1.7 -r1.8 \ src/external/gpl3/gcc/dist/libstdc++-v3/config/locale/dragonfly/c_locale.h Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
CVS commit: src/external/gpl3/gcc/dist/libstdc++-v3/include
Module Name:src Committed By: mrg Date: Mon Jul 31 01:46:04 UTC 2023 Modified Files: src/external/gpl3/gcc/dist/libstdc++-v3/include/bits: uniform_int_dist.h src/external/gpl3/gcc/dist/libstdc++-v3/include/ext: numeric_traits.h Log Message: catch up two places with our local s/__is_signed/__is_signed_val/ change. To generate a diff of this commit: cvs rdiff -u -r1.1.1.10 -r1.2 \ src/external/gpl3/gcc/dist/libstdc++-v3/include/bits/uniform_int_dist.h cvs rdiff -u -r1.11 -r1.12 \ src/external/gpl3/gcc/dist/libstdc++-v3/include/ext/numeric_traits.h Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
CVS commit: src/external/gpl3/gcc/dist/libstdc++-v3/include
Module Name:src Committed By: mrg Date: Mon Jul 31 01:46:04 UTC 2023 Modified Files: src/external/gpl3/gcc/dist/libstdc++-v3/include/bits: uniform_int_dist.h src/external/gpl3/gcc/dist/libstdc++-v3/include/ext: numeric_traits.h Log Message: catch up two places with our local s/__is_signed/__is_signed_val/ change. To generate a diff of this commit: cvs rdiff -u -r1.1.1.10 -r1.2 \ src/external/gpl3/gcc/dist/libstdc++-v3/include/bits/uniform_int_dist.h cvs rdiff -u -r1.11 -r1.12 \ src/external/gpl3/gcc/dist/libstdc++-v3/include/ext/numeric_traits.h Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/external/gpl3/gcc/dist/libstdc++-v3/include/bits/uniform_int_dist.h diff -u src/external/gpl3/gcc/dist/libstdc++-v3/include/bits/uniform_int_dist.h:1.1.1.10 src/external/gpl3/gcc/dist/libstdc++-v3/include/bits/uniform_int_dist.h:1.2 --- src/external/gpl3/gcc/dist/libstdc++-v3/include/bits/uniform_int_dist.h:1.1.1.10 Sun Jul 30 05:21:19 2023 +++ src/external/gpl3/gcc/dist/libstdc++-v3/include/bits/uniform_int_dist.h Mon Jul 31 01:46:04 2023 @@ -247,8 +247,8 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION { using _Up_traits = __gnu_cxx::__int_traits<_Up>; using _Wp_traits = __gnu_cxx::__int_traits<_Wp>; - static_assert(!_Up_traits::__is_signed, "U must be unsigned"); - static_assert(!_Wp_traits::__is_signed, "W must be unsigned"); + static_assert(!_Up_traits::__is_signed_val, "U must be unsigned"); + static_assert(!_Wp_traits::__is_signed_val, "W must be unsigned"); static_assert(_Wp_traits::__digits == (2 * _Up_traits::__digits), "W must be twice as wide as U"); Index: src/external/gpl3/gcc/dist/libstdc++-v3/include/ext/numeric_traits.h diff -u src/external/gpl3/gcc/dist/libstdc++-v3/include/ext/numeric_traits.h:1.11 src/external/gpl3/gcc/dist/libstdc++-v3/include/ext/numeric_traits.h:1.12 --- src/external/gpl3/gcc/dist/libstdc++-v3/include/ext/numeric_traits.h:1.11 Sun Jul 30 05:51:44 2023 +++ src/external/gpl3/gcc/dist/libstdc++-v3/include/ext/numeric_traits.h Mon Jul 31 01:46:04 2023 @@ -210,7 +210,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION struct __numeric_traits_floating<__ibm128> { static const int __max_digits10 = 33; - static const bool __is_signed = true; + static const bool __is_signed_val = true; static const int __digits10 = 31; static const int __max_exponent10 = 308; }; @@ -224,7 +224,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION struct __numeric_traits_floating<__ieee128> { static const int __max_digits10 = 36; - static const bool __is_signed = true; + static const bool __is_signed_val = true; static const int __digits10 = 33; static const int __max_exponent10 = 4932; };
Re: CVS commit: src/external/gpl3/gcc/dist/libstdc++-v3
Hi, Christos Zoulas writes: > Thank you. What's left now is to re-run mknative to regenerate the defs.mk > file for libstdc++. > mrg@ is going to do it for all archs at once because it will require an > UPDATING entry to > mention to clean in /usr/src/external/gpl3/lib/libstdc++. Once that is done > and all the archs > are building, I will issue pull-ups for -9. Thanks for your explanation. I am waiting the fix. And I am happy to hear the fix will be included in netbsd-9. > Best, > > christos > >> On Aug 1, 2019, at 3:30 AM, Ryo ONODERA wrote: >> >> Hi, >> >> "Christos Zoulas" writes: >> >>> Module Name:src >>> Committed By: christos >>> Date: Wed Jul 31 16:40:26 UTC 2019 >>> >>> Modified Files: >>> src/external/gpl3/gcc/dist/libstdc++-v3: configure >>> >>> Log Message: >>> Manually patch the locale configuration to use the dragonfly code instead >>> of generic. >>> >>> >>> To generate a diff of this commit: >>> cvs rdiff -u -r1.11 -r1.12 src/external/gpl3/gcc/dist/libstdc++-v3/configure >>> >>> Please note that diffs are not public domain; they are subject to the >>> copyright notices on the relevant files. >> >> Some other changes in your g++locale.diff are required to >> enable DragonFly code. >> Are there any plans to commit the others? >> >> Thanks for your great works. >> >> -- >> Ryo ONODERA // r...@tetera.org >> PGP fingerprint = 82A2 DC91 76E0 A10A 8ABB FD1B F404 27FA C7D1 15F3 > -- Ryo ONODERA // r...@tetera.org PGP fingerprint = 82A2 DC91 76E0 A10A 8ABB FD1B F404 27FA C7D1 15F3
Re: CVS commit: src/external/gpl3/gcc/dist/libstdc++-v3
Hi, "Christos Zoulas" writes: > Module Name: src > Committed By: christos > Date: Wed Jul 31 16:40:26 UTC 2019 > > Modified Files: > src/external/gpl3/gcc/dist/libstdc++-v3: configure > > Log Message: > Manually patch the locale configuration to use the dragonfly code instead > of generic. > > > To generate a diff of this commit: > cvs rdiff -u -r1.11 -r1.12 src/external/gpl3/gcc/dist/libstdc++-v3/configure > > Please note that diffs are not public domain; they are subject to the > copyright notices on the relevant files. Some other changes in your g++locale.diff are required to enable DragonFly code. Are there any plans to commit the others? Thanks for your great works. -- Ryo ONODERA // r...@tetera.org PGP fingerprint = 82A2 DC91 76E0 A10A 8ABB FD1B F404 27FA C7D1 15F3
CVS commit: src/external/gpl3/gcc/dist/libstdc++-v3
Module Name:src Committed By: christos Date: Wed Jul 31 16:40:26 UTC 2019 Modified Files: src/external/gpl3/gcc/dist/libstdc++-v3: configure Log Message: Manually patch the locale configuration to use the dragonfly code instead of generic. To generate a diff of this commit: cvs rdiff -u -r1.11 -r1.12 src/external/gpl3/gcc/dist/libstdc++-v3/configure Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/external/gpl3/gcc/dist/libstdc++-v3/configure diff -u src/external/gpl3/gcc/dist/libstdc++-v3/configure:1.11 src/external/gpl3/gcc/dist/libstdc++-v3/configure:1.12 --- src/external/gpl3/gcc/dist/libstdc++-v3/configure:1.11 Sat Jan 19 07:10:12 2019 +++ src/external/gpl3/gcc/dist/libstdc++-v3/configure Wed Jul 31 12:40:25 2019 @@ -15848,7 +15848,7 @@ fi darwin*) enable_clocale_flag=darwin ;; - dragonfly* | freebsd*) + dragonfly* | freebsd* | netbsd*) enable_clocale_flag=dragonfly ;; openbsd*) @@ -15997,8 +15997,8 @@ $as_echo "darwin" >&6; } ;; dragonfly) - { $as_echo "$as_me:${as_lineno-$LINENO}: result: dragonfly or freebsd" >&5 -$as_echo "dragonfly or freebsd" >&6; } + { $as_echo "$as_me:${as_lineno-$LINENO}: result: dragonfly or freebsd or netbsd" >&5 +$as_echo "dragonfly or freebsd or netbsd" >&6; } CLOCALE_H=config/locale/dragonfly/c_locale.h CLOCALE_CC=config/locale/dragonfly/c_locale.cc
CVS commit: src/external/gpl3/gcc/dist/libstdc++-v3
Module Name:src Committed By: christos Date: Wed Jul 31 16:40:26 UTC 2019 Modified Files: src/external/gpl3/gcc/dist/libstdc++-v3: configure Log Message: Manually patch the locale configuration to use the dragonfly code instead of generic. To generate a diff of this commit: cvs rdiff -u -r1.11 -r1.12 src/external/gpl3/gcc/dist/libstdc++-v3/configure Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
CVS commit: src/external/gpl3/gcc/dist/libstdc++-v3
Module Name:src Committed By: christos Date: Wed Jul 31 16:39:02 UTC 2019 Modified Files: src/external/gpl3/gcc/dist/libstdc++-v3: acinclude.m4 Log Message: Use the dragonfly locale code for NetBSD too. To generate a diff of this commit: cvs rdiff -u -r1.6 -r1.7 src/external/gpl3/gcc/dist/libstdc++-v3/acinclude.m4 Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/external/gpl3/gcc/dist/libstdc++-v3/acinclude.m4 diff -u src/external/gpl3/gcc/dist/libstdc++-v3/acinclude.m4:1.6 src/external/gpl3/gcc/dist/libstdc++-v3/acinclude.m4:1.7 --- src/external/gpl3/gcc/dist/libstdc++-v3/acinclude.m4:1.6 Sat Jan 19 07:10:12 2019 +++ src/external/gpl3/gcc/dist/libstdc++-v3/acinclude.m4 Wed Jul 31 12:39:02 2019 @@ -2416,7 +2416,7 @@ AC_DEFUN([GLIBCXX_ENABLE_CLOCALE], [ darwin*) enable_clocale_flag=darwin ;; - dragonfly* | freebsd*) + dragonfly* | freebsd* | netbsd*) enable_clocale_flag=dragonfly ;; openbsd*) @@ -2512,7 +2512,7 @@ AC_DEFUN([GLIBCXX_ENABLE_CLOCALE], [ ;; dragonfly) - AC_MSG_RESULT(dragonfly or freebsd) + AC_MSG_RESULT(dragonfly or freebsd or netbsd) CLOCALE_H=config/locale/dragonfly/c_locale.h CLOCALE_CC=config/locale/dragonfly/c_locale.cc
CVS commit: src/external/gpl3/gcc/dist/libstdc++-v3
Module Name:src Committed By: christos Date: Wed Jul 31 16:39:02 UTC 2019 Modified Files: src/external/gpl3/gcc/dist/libstdc++-v3: acinclude.m4 Log Message: Use the dragonfly locale code for NetBSD too. To generate a diff of this commit: cvs rdiff -u -r1.6 -r1.7 src/external/gpl3/gcc/dist/libstdc++-v3/acinclude.m4 Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
CVS commit: src/external/gpl3/gcc/dist/libstdc++-v3
Module Name:src Committed By: christos Date: Tue Jul 30 20:28:50 UTC 2019 Modified Files: src/external/gpl3/gcc/dist/libstdc++-v3/config/locale/generic: time_members.cc src/external/gpl3/gcc/dist/libstdc++-v3/include/bits: locale_facets_nonio.h Log Message: Add a forward declaration for the specialized __timepunct destructor that the dragonfly code needs to avoid "instantiation before specialization", and an empty implementation for the generic code. To generate a diff of this commit: cvs rdiff -u -r1.1.1.5 -r1.2 \ src/external/gpl3/gcc/dist/libstdc++-v3/config/locale/generic/time_members.cc cvs rdiff -u -r1.1.1.6 -r1.2 \ src/external/gpl3/gcc/dist/libstdc++-v3/include/bits/locale_facets_nonio.h Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
CVS commit: src/external/gpl3/gcc/dist/libstdc++-v3
Module Name:src Committed By: christos Date: Tue Jul 30 20:28:50 UTC 2019 Modified Files: src/external/gpl3/gcc/dist/libstdc++-v3/config/locale/generic: time_members.cc src/external/gpl3/gcc/dist/libstdc++-v3/include/bits: locale_facets_nonio.h Log Message: Add a forward declaration for the specialized __timepunct destructor that the dragonfly code needs to avoid "instantiation before specialization", and an empty implementation for the generic code. To generate a diff of this commit: cvs rdiff -u -r1.1.1.5 -r1.2 \ src/external/gpl3/gcc/dist/libstdc++-v3/config/locale/generic/time_members.cc cvs rdiff -u -r1.1.1.6 -r1.2 \ src/external/gpl3/gcc/dist/libstdc++-v3/include/bits/locale_facets_nonio.h Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/external/gpl3/gcc/dist/libstdc++-v3/config/locale/generic/time_members.cc diff -u src/external/gpl3/gcc/dist/libstdc++-v3/config/locale/generic/time_members.cc:1.1.1.5 src/external/gpl3/gcc/dist/libstdc++-v3/config/locale/generic/time_members.cc:1.2 --- src/external/gpl3/gcc/dist/libstdc++-v3/config/locale/generic/time_members.cc:1.1.1.5 Sat Jan 19 05:14:12 2019 +++ src/external/gpl3/gcc/dist/libstdc++-v3/config/locale/generic/time_members.cc Tue Jul 30 16:28:50 2019 @@ -205,6 +205,10 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION _M_data->_M_amonth11 = L"Nov"; _M_data->_M_amonth12 = L"Dec"; } + template<> +__timepunct::~__timepunct() + { + } #endif _GLIBCXX_END_NAMESPACE_VERSION Index: src/external/gpl3/gcc/dist/libstdc++-v3/include/bits/locale_facets_nonio.h diff -u src/external/gpl3/gcc/dist/libstdc++-v3/include/bits/locale_facets_nonio.h:1.1.1.6 src/external/gpl3/gcc/dist/libstdc++-v3/include/bits/locale_facets_nonio.h:1.2 --- src/external/gpl3/gcc/dist/libstdc++-v3/include/bits/locale_facets_nonio.h:1.1.1.6 Sat Jan 19 05:14:12 2019 +++ src/external/gpl3/gcc/dist/libstdc++-v3/include/bits/locale_facets_nonio.h Tue Jul 30 16:28:50 2019 @@ -328,6 +328,8 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION #ifdef _GLIBCXX_USE_WCHAR_T template<> +__timepunct::~__timepunct(); + template<> void __timepunct::_M_initialize_timepunct(__c_locale __cloc);
CVS commit: src/external/gpl3/gcc/dist/libstdc++-v3/src/c++11
Module Name:src Committed By: christos Date: Tue Jul 30 20:24:59 UTC 2019 Modified Files: src/external/gpl3/gcc/dist/libstdc++-v3/src/c++11: ctype.cc Log Message: There is no specialized constructor for ctype so the destructor ends up trying to free uninitialized memory for _M_c_locale_ctype. To generate a diff of this commit: cvs rdiff -u -r1.1.1.3 -r1.2 \ src/external/gpl3/gcc/dist/libstdc++-v3/src/c++11/ctype.cc Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/external/gpl3/gcc/dist/libstdc++-v3/src/c++11/ctype.cc diff -u src/external/gpl3/gcc/dist/libstdc++-v3/src/c++11/ctype.cc:1.1.1.3 src/external/gpl3/gcc/dist/libstdc++-v3/src/c++11/ctype.cc:1.2 --- src/external/gpl3/gcc/dist/libstdc++-v3/src/c++11/ctype.cc:1.1.1.3 Sat Jan 19 05:14:05 2019 +++ src/external/gpl3/gcc/dist/libstdc++-v3/src/c++11/ctype.cc Tue Jul 30 16:24:58 2019 @@ -53,7 +53,11 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION ctype::~ctype() { +#if 0 +// There is no constructor for the char specialization, and +// _M_c_locale_ctype is uninitialized, found by jemalloc _S_destroy_c_locale(_M_c_locale_ctype); +#endif if (_M_del) delete[] this->table(); }
CVS commit: src/external/gpl3/gcc/dist/libstdc++-v3/src/c++11
Module Name:src Committed By: christos Date: Tue Jul 30 20:24:59 UTC 2019 Modified Files: src/external/gpl3/gcc/dist/libstdc++-v3/src/c++11: ctype.cc Log Message: There is no specialized constructor for ctype so the destructor ends up trying to free uninitialized memory for _M_c_locale_ctype. To generate a diff of this commit: cvs rdiff -u -r1.1.1.3 -r1.2 \ src/external/gpl3/gcc/dist/libstdc++-v3/src/c++11/ctype.cc Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
CVS commit: src/external/gpl3/gcc/dist/libstdc++-v3/config/locale/dragonfly
Module Name:src Committed By: christos Date: Mon Jul 29 08:03:48 UTC 2019 Modified Files: src/external/gpl3/gcc/dist/libstdc++-v3/config/locale/dragonfly: codecvt_members.cc Log Message: Remove extra paren To generate a diff of this commit: cvs rdiff -u -r1.3 -r1.4 \ src/external/gpl3/gcc/dist/libstdc++-v3/config/locale/dragonfly/codecvt_members.cc Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/external/gpl3/gcc/dist/libstdc++-v3/config/locale/dragonfly/codecvt_members.cc diff -u src/external/gpl3/gcc/dist/libstdc++-v3/config/locale/dragonfly/codecvt_members.cc:1.3 src/external/gpl3/gcc/dist/libstdc++-v3/config/locale/dragonfly/codecvt_members.cc:1.4 --- src/external/gpl3/gcc/dist/libstdc++-v3/config/locale/dragonfly/codecvt_members.cc:1.3 Mon Jul 29 03:59:47 2019 +++ src/external/gpl3/gcc/dist/libstdc++-v3/config/locale/dragonfly/codecvt_members.cc Mon Jul 29 04:03:47 2019 @@ -232,7 +232,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION const extern_type* __tmp_from = __from; size_t __conv = mbsnrtowcs_l(__to, &__from, __from_chunk_end - __from, - __max, &__state), + __max, &__state, (locale_t)_M_c_locale_codecvt); if (__conv == static_cast(-1)) {
CVS commit: src/external/gpl3/gcc/dist/libstdc++-v3/config/locale/dragonfly
Module Name:src Committed By: christos Date: Mon Jul 29 08:03:48 UTC 2019 Modified Files: src/external/gpl3/gcc/dist/libstdc++-v3/config/locale/dragonfly: codecvt_members.cc Log Message: Remove extra paren To generate a diff of this commit: cvs rdiff -u -r1.3 -r1.4 \ src/external/gpl3/gcc/dist/libstdc++-v3/config/locale/dragonfly/codecvt_members.cc Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
CVS commit: src/external/gpl3/gcc/dist/libstdc++-v3/config/locale/dragonfly
Module Name:src Committed By: christos Date: Mon Jul 29 07:59:47 UTC 2019 Modified Files: src/external/gpl3/gcc/dist/libstdc++-v3/config/locale/dragonfly: codecvt_members.cc Log Message: remove extra paren To generate a diff of this commit: cvs rdiff -u -r1.2 -r1.3 \ src/external/gpl3/gcc/dist/libstdc++-v3/config/locale/dragonfly/codecvt_members.cc Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
CVS commit: src/external/gpl3/gcc/dist/libstdc++-v3/config/locale/dragonfly
Module Name:src Committed By: christos Date: Mon Jul 29 07:59:47 UTC 2019 Modified Files: src/external/gpl3/gcc/dist/libstdc++-v3/config/locale/dragonfly: codecvt_members.cc Log Message: remove extra paren To generate a diff of this commit: cvs rdiff -u -r1.2 -r1.3 \ src/external/gpl3/gcc/dist/libstdc++-v3/config/locale/dragonfly/codecvt_members.cc Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/external/gpl3/gcc/dist/libstdc++-v3/config/locale/dragonfly/codecvt_members.cc diff -u src/external/gpl3/gcc/dist/libstdc++-v3/config/locale/dragonfly/codecvt_members.cc:1.2 src/external/gpl3/gcc/dist/libstdc++-v3/config/locale/dragonfly/codecvt_members.cc:1.3 --- src/external/gpl3/gcc/dist/libstdc++-v3/config/locale/dragonfly/codecvt_members.cc:1.2 Sun Jul 28 13:41:21 2019 +++ src/external/gpl3/gcc/dist/libstdc++-v3/config/locale/dragonfly/codecvt_members.cc Mon Jul 29 03:59:47 2019 @@ -149,7 +149,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION for (;; ++__to_next, __from += __conv) { __conv = mbrtowc_l(__to_next, __from, __from_end - __from, - &__tmp_state), (locale_t)_M_c_locale_codecvt); + &__tmp_state, (locale_t)_M_c_locale_codecvt); if (__conv == static_cast(-1) || __conv == static_cast(-2)) break;
CVS commit: src/external/gpl3/gcc/dist/libstdc++-v3/config/locale/dragonfly
Module Name:src Committed By: christos Date: Sun Jul 28 17:41:21 UTC 2019 Modified Files: src/external/gpl3/gcc/dist/libstdc++-v3/config/locale/dragonfly: c_locale.cc c_locale.h codecvt_members.cc ctype_members.cc monetary_members.cc numeric_members.cc time_members.cc Added Files: src/external/gpl3/gcc/dist/libstdc++-v3/config/locale/dragonfly: xlocale_port.h Log Message: Factor out the uselocale() calls by providing the _l missing functions as inlines in xlocale_port.h except in c_locale.{cc,h} because the header gets installed. To generate a diff of this commit: cvs rdiff -u -r1.1.1.3 -r1.2 \ src/external/gpl3/gcc/dist/libstdc++-v3/config/locale/dragonfly/c_locale.cc \ src/external/gpl3/gcc/dist/libstdc++-v3/config/locale/dragonfly/ctype_members.cc cvs rdiff -u -r1.1.1.2 -r1.2 \ src/external/gpl3/gcc/dist/libstdc++-v3/config/locale/dragonfly/c_locale.h \ src/external/gpl3/gcc/dist/libstdc++-v3/config/locale/dragonfly/codecvt_members.cc \ src/external/gpl3/gcc/dist/libstdc++-v3/config/locale/dragonfly/monetary_members.cc \ src/external/gpl3/gcc/dist/libstdc++-v3/config/locale/dragonfly/numeric_members.cc \ src/external/gpl3/gcc/dist/libstdc++-v3/config/locale/dragonfly/time_members.cc cvs rdiff -u -r0 -r1.1 \ src/external/gpl3/gcc/dist/libstdc++-v3/config/locale/dragonfly/xlocale_port.h Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/external/gpl3/gcc/dist/libstdc++-v3/config/locale/dragonfly/c_locale.cc diff -u src/external/gpl3/gcc/dist/libstdc++-v3/config/locale/dragonfly/c_locale.cc:1.1.1.3 src/external/gpl3/gcc/dist/libstdc++-v3/config/locale/dragonfly/c_locale.cc:1.2 --- src/external/gpl3/gcc/dist/libstdc++-v3/config/locale/dragonfly/c_locale.cc:1.1.1.3 Sat Jan 19 05:14:12 2019 +++ src/external/gpl3/gcc/dist/libstdc++-v3/config/locale/dragonfly/c_locale.cc Sun Jul 28 13:41:21 2019 @@ -34,7 +34,9 @@ #include #include #include +#ifndef __NetBSD__ #include +#endif namespace std _GLIBCXX_VISIBILITY(default) { Index: src/external/gpl3/gcc/dist/libstdc++-v3/config/locale/dragonfly/ctype_members.cc diff -u src/external/gpl3/gcc/dist/libstdc++-v3/config/locale/dragonfly/ctype_members.cc:1.1.1.3 src/external/gpl3/gcc/dist/libstdc++-v3/config/locale/dragonfly/ctype_members.cc:1.2 --- src/external/gpl3/gcc/dist/libstdc++-v3/config/locale/dragonfly/ctype_members.cc:1.1.1.3 Sat Jan 19 05:14:12 2019 +++ src/external/gpl3/gcc/dist/libstdc++-v3/config/locale/dragonfly/ctype_members.cc Sun Jul 28 13:41:21 2019 @@ -33,6 +33,8 @@ #include #include +#include "xlocale_port.h" + #ifndef _ISbit #define _ISbit(bit) ((bit) < 8 ? ((1 << (bit)) << 8) : ((1 << (bit)) >> 8)) #endif @@ -96,9 +98,11 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION case graph: __ret = wctype_l("graph", (locale_t)_M_c_locale_ctype); break; +#ifndef __NetBSD__ case blank: __ret = wctype_l("blank", (locale_t)_M_c_locale_ctype); break; +#endif default: __ret = __wmask_type(); } @@ -135,6 +139,60 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION return __hi; } + bool + ctype:: + do_is(mask __m, char_type __c) const + { +bool __ret = false; +// Generically, 15 (instead of 11) since we don't know the numerical +// encoding of the various categories in /usr/include/ctype.h. +const size_t __bitmasksize = 15; +for (size_t __bitcur = 0; __bitcur <= __bitmasksize; ++__bitcur) + if (__m & _M_bit[__bitcur] + && iswctype(__c, _M_wmask[__bitcur])) + { + __ret = true; + break; + } +return __ret; + } + + const wchar_t* + ctype:: + do_is(const wchar_t* __lo, const wchar_t* __hi, mask* __vec) const + { +for (;__lo < __hi; ++__vec, ++__lo) + { + // Generically, 15 (instead of 11) since we don't know the numerical + // encoding of the various categories in /usr/include/ctype.h. + const size_t __bitmasksize = 15; + mask __m = 0; + for (size_t __bitcur = 0; __bitcur <= __bitmasksize; ++__bitcur) + if (iswctype(*__lo, _M_wmask[__bitcur])) + __m |= _M_bit[__bitcur]; + *__vec = __m; + } +return __hi; + } + + const wchar_t* + ctype:: + do_scan_is(mask __m, const wchar_t* __lo, const wchar_t* __hi) const + { +while (__lo < __hi && !this->do_is(__m, *__lo)) + ++__lo; +return __lo; + } + + const wchar_t* + ctype:: + do_scan_not(mask __m, const char_type* __lo, const char_type* __hi) const + { +while (__lo < __hi && this->do_is(__m, *__lo) != 0) + ++__lo; +return __lo; + } + wchar_t ctype:: do_widen(char __c) const @@ -159,9 +217,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION { if (__wc >= 0 && __wc < 128 && _M_narrow_ok) return _M_narrow[__wc]; -__c_locale __old = (__c_locale)uselocale((locale_t)_M_c_locale_ctype); -const int __c = wctob(__wc); -uselocale((locale_t)__old); +const int __c =