[patch] Leave errno unchanged by successful std::stoi etc

2015-09-29 Thread Jonathan Wakely
We set errno=0 in __gnu_cxx::__stoa in order to reliably detect when it gets set to ERANGE. This restores the previous value when the conversion is successful. Tested powerpc64le-linux, committed to trunk. commit 412f75dc37b1048e14996c9caafa46c00db8eb30 Author: Jonathan Wakely Date: Tue Sep

Re: [patch] Leave errno unchanged by successful std::stoi etc

2015-09-29 Thread Jonathan Wakely
On 29/09/15 17:25 +0200, Jakub Jelinek wrote: On Tue, Sep 29, 2015 at 04:15:41PM +0100, Jonathan Wakely wrote: We set errno=0 in __gnu_cxx::__stoa in order to reliably detect when it gets set to ERANGE. This restores the previous value when the conversion is successful. Tested powerpc64le

Re: Elimitate duplication of get_catalogs in different abi

2015-09-30 Thread Jonathan Wakely
On 29/09/15 21:49 +0200, François Dumont wrote: Indeed, I just rerun all tests with success. I am re-attaching the patch. 2015-09-30 François Dumont Jonathan Wakely * config/locale/gnu/messages_members.cc (Catalog_info, Catalogs): Move... * config/locale/gnu/c

Re: [patch] libstdc++/67747 Allocate space for dirent::d_name

2015-09-30 Thread Jonathan Wakely
On 29/09/15 12:54 -0600, Martin Sebor wrote: On 09/29/2015 05:37 AM, Jonathan Wakely wrote: POSIX says that dirent::d_name has an unspecified length, so calls to readdir_r must pass a buffer with enough trailing space for {NAME_MAX}+1 characters. I wasn't doing that, which works OK on GNU/

Re: [patch] Leave errno unchanged by successful std::stoi etc

2015-09-30 Thread Jonathan Wakely
On 29/09/15 10:50 -0600, Martin Sebor wrote: On 09/29/2015 10:15 AM, Jakub Jelinek wrote: On Tue, Sep 29, 2015 at 05:10:20PM +0100, Jonathan Wakely wrote: That looks wrong to me, you only restore errno if you don't throw :(. If you throw, then errno might remain 0, which is IMHO undesi

Re: [patch] Leave errno unchanged by successful std::stoi etc

2015-10-01 Thread Jonathan Wakely
commit 502928c8061343e82e982e06299c11d465f64b6c Author: Jonathan Wakely Date: Wed Sep 30 14:10:58 2015 +0100 Save-and-restore errno more carefully in libstdc++ * doc/xml/manual/diagnostics.xml: Document use of errno. * config/locale/generic/c_locale.cc (_Save_errno): New

Re: [patch] libstdc++/67747 Allocate space for dirent::d_name

2015-10-01 Thread Jonathan Wakely
On 30/09/15 09:30 -0600, Martin Sebor wrote: On 09/30/2015 05:01 AM, Jonathan Wakely wrote: On 29/09/15 12:54 -0600, Martin Sebor wrote: On 09/29/2015 05:37 AM, Jonathan Wakely wrote: POSIX says that dirent::d_name has an unspecified length, so calls to readdir_r must pass a buffer with

Re: [PATCH] Clarify __atomic_compare_exchange_n docs

2015-10-01 Thread Jonathan Wakely
On 01/10/15 12:28 +0100, Andrew Haley wrote: On 09/29/2015 04:21 PM, Sandra Loosemore wrote: What is "weak compare_exchange", and what is "the strong variation", and how do they differ in terms of behavior? It's in C++11 29.6.5: Remark: The weak compare-and-exchange operations may fail spurio

Re: [PATCH] Clarify __atomic_compare_exchange_n docs

2015-10-01 Thread Jonathan Wakely
On 01/10/15 18:34 +0100, Andrew Haley wrote: On 10/01/2015 06:32 PM, Jonathan Wakely wrote: I would suggest we don't try to reproduce the standard definition, but just say the weak version can fail spuriously and the strong can't. IMHO this isn't the place to educate people in

Re: [PATCH] Clarify __atomic_compare_exchange_n docs

2015-10-01 Thread Jonathan Wakely
On 01/10/15 11:57 -0600, Sandra Loosemore wrote: H, yes. Looking at the section as a whole, is it a bug in the implementation that the built-ins only "approximately match" the C++11 requirements? AFAIK they exactly match, so I don't know why the docs say that. If there were an exact corr

Re: [patch] libstdc++/67747 Allocate space for dirent::d_name

2015-10-01 Thread Jonathan Wakely
On 01/10/15 18:23 +0100, Jonathan Wakely wrote: +struct op_delete { + void operator()(void* p) const { ::operator delete(p); } +}; +std::unique_ptr<::dirent*, op_delete> ptr; Oops, that should be dirent not dirent* i.e. std::unique_ptr<::dirent, op_delete> ptr

Re: [PATCH] Clarify __atomic_compare_exchange_n docs

2015-10-01 Thread Jonathan Wakely
There's a typo in an example too. diff --git a/gcc/doc/extend.texi b/gcc/doc/extend.texi index ce1b4ae..599ad87 100644 --- a/gcc/doc/extend.texi +++ b/gcc/doc/extend.texi @@ -9471,7 +9471,7 @@ alignment. A value of 0 indicates typical alignment should be used. The compiler may also ignore this

Re: [patch] libstdc++/67747 Allocate space for dirent::d_name

2015-10-01 Thread Jonathan Wakely
On 01/10/15 19:38 +0100, Jonathan Wakely wrote: On 01/10/15 18:23 +0100, Jonathan Wakely wrote: +struct op_delete { + void operator()(void* p) const { ::operator delete(p); } +}; +std::unique_ptr<::dirent*, op_delete> ptr; Oops, that should be dirent not dirent* i.e.

Re: [patch] libstdc++/67747 Allocate space for dirent::d_name

2015-10-02 Thread Jonathan Wakely
On 02/10/15 14:16 +0200, Florian Weimer wrote: On 09/29/2015 01:37 PM, Jonathan Wakely wrote: POSIX says that dirent::d_name has an unspecified length, so calls to readdir_r must pass a buffer with enough trailing space for {NAME_MAX}+1 characters. I wasn't doing that, which works OK o

[PATCH] Stop including in gcc/system.h

2015-10-02 Thread Jonathan Wakely
ges and including is not likely to be all that's needed to build a current GCC! Bootstrapped on linux-gnu, openbsd5.0, dragonfly4.2, and aix7.1.2.0, pre-approved by Richi on IRC, committed to trunk. commit 5c1eeabb69319ed6fe6ab57621b6dd9a4ff0193b Author: Jonathan Wakely Date:

Re: [patch] libstdc++/67747 Allocate space for dirent::d_name

2015-10-02 Thread Jonathan Wakely
On 02/10/15 14:41 +0200, Florian Weimer wrote: On 10/02/2015 02:34 PM, Jonathan Wakely wrote: On 02/10/15 14:16 +0200, Florian Weimer wrote: On 09/29/2015 01:37 PM, Jonathan Wakely wrote: POSIX says that dirent::d_name has an unspecified length, so calls to readdir_r must pass a buffer with

Re: [patch] libstdc++/67747 Allocate space for dirent::d_name

2015-10-02 Thread Jonathan Wakely
On 02/10/15 10:57 -0600, Martin Sebor wrote: On 10/02/2015 06:34 AM, Jonathan Wakely wrote: On 02/10/15 14:16 +0200, Florian Weimer wrote: On 09/29/2015 01:37 PM, Jonathan Wakely wrote: POSIX says that dirent::d_name has an unspecified length, so calls to readdir_r must pass a buffer with

[patch] Allow Filesystem TS to compile without wchar_t

2015-10-02 Thread Jonathan Wakely
This guards all uses of wchar_t with _GLIBCXX_USE_WCHAR_T. There's also a second patch that improves a testsuite helper function slightly. Tested powerpc64le-linux, x86_64dragonfly, powerpc-aix. Committed to trunk. commit e765e9d79405c7979f656460b995e6237900eea3 Author: Jonathan Wakely

[patch] Fix comment in libstdc++-v3/acinclude.m4

2015-10-02 Thread Jonathan Wakely
Fix an incorrectly spelled option in a comment. Committed to trunk. commit be72d20163bef9efd626d6c5337fef6e652683ae Author: Jonathan Wakely Date: Fri Oct 2 22:44:50 2015 +0100 * acinclude.m4 (GLIBCXX_ENABLE_DEBUG_FLAGS): Fix comment. diff --git a/libstdc++-v3/acinclude.m4 b/libstdc

[patch] Use noexcept instead of _GLIBCXX_NOEXCEPT

2015-10-02 Thread Jonathan Wakely
There's no need to use the _GLIBCXX_NOEXCEPT macro in code that is only compiled when __cplusplus >= 201103L, just use noexcept directly. Tested powerpc64le-linux (both ABIs), committed to trunk. commit 5c1cf3fcbfa60abf8d8a174336982a548e23c64e Author: Jonathan Wakely Date: Fri Oct

[patch] Fix tests that fail with old std::string

2015-10-02 Thread Jonathan Wakely
These tests only work with the new std::string, but the preprocessor test was in the wrong place. Tested powerpc64le-linux, committed to trunk. commit 482100af94e90eaa6fb3c865e30bc907f6691f59 Author: Jonathan Wakely Date: Fri Oct 2 23:16:27 2015 +0100 * testsuite/21_strings

[patch] Enable dual ABI for Filesystem TS

2015-10-02 Thread Jonathan Wakely
powerpc64le-linux (both ABIs), committed to trunk. commit 6440319e03405094f8746d8dad1d2f21579e1414 Author: Jonathan Wakely Date: Fri Oct 2 20:41:08 2015 +0100 Enable dual ABI for Filesystem library * src/filesystem/Makefile.am: Add cxx11_abi_sources. * src/filesystem/Makefile.in

[patch] Fix testsuite failures with --disable-wchar_t

2015-10-02 Thread Jonathan Wakely
This fixes some FAILs seen with --disable-wchar_t, and for targets where that's the default. Tested powerpc64le-linux, committed to trunk. commit e559cc2e962b0d7ec394d38c767f7d212da276aa Author: Jonathan Wakely Date: Sat Oct 3 00:28:00 2015 +0100 Fix testsuite failures with --di

[patch] Two tiny libstdc++ cleanups

2015-10-03 Thread Jonathan Wakely
linux, committed to trunk. commit f1c83d9bbd77d4c22b22051b409efbe12968d653 Author: Jonathan Wakely Date: Sat Oct 3 00:56:55 2015 +0100 Remove pretty printing for 'any' with allocators * python/libstdcxx/v6/printers.py (StdExpAnyPrinter): Remove support for _Manag

[patch] Update template instantiation documentation

2015-10-03 Thread Jonathan Wakely
selective explicit instantations as needed). It also changes another mention of -frepo to use a different C++-only option, to further de-emphasize -frepo. OK for trunk? commit b115ee74b5aa8cf7e191456b609fa14bb6890e3d Author: Jonathan Wakely Date: Mon Sep 1 15:50:24 2014 +0100 Update t

[patch] Document value of __cplusplus for C++14

2015-10-03 Thread Jonathan Wakely
Committed to trunk as obvious. Should it go on gcc-5-branch too? commit b06d72cb9f0b5fa3f052afaca99393658095624d Author: Jonathan Wakely Date: Sat Oct 3 01:28:01 2015 +0100 Document value of __cplusplus for C++14 * doc/cpp.texi (Standard Predefined Macros): Document value of

Re: [PATCH] Clarify __atomic_compare_exchange_n docs

2015-10-03 Thread Jonathan Wakely
Here's the latest version of the patch, including the typo fix. commit 96468d6b7e782501459bad306b31d45bc0ba5155 Author: Jonathan Wakely Date: Sat Oct 3 13:59:47 2015 +0100 Clarify __atomic_compare_exchange effects * doc/extend.texi (__atomic Builtins): Clarify compare_exc

Re: [patch] Update template instantiation documentation

2015-10-03 Thread Jonathan Wakely
On 03/10/15 09:49 -0700, Andrew Pinski wrote: Add "And Mac OS X" to that too. So people don't use that against us for the reason why Apple went to clang/LLVM. Will do.

Re: [patch] Update template instantiation documentation

2015-10-03 Thread Jonathan Wakely
On 03/10/15 10:44 -0600, Sandra Loosemore wrote: Thanks for tackling this. I remember thinking that this section looked bit-rotted when I was reviewing the manual earlier this year. Your patch looks like a step in the right direction, but can I get you to fix a couple other things while you'r

Re: [v3 PATCH] PR 67844

2015-10-05 Thread Jonathan Wakely
On 05/10/15 06:59 +0300, Ville Voutilainen wrote: PR 67844. * include/std/tuple (_TC::_NonNestedTuple): Eagerly reject conversions from tuple types same as the target tuple. * testsuite/20_util/tuple/67844.cc: New. OK for trunk with a copyright header on the testcase. Thanks for the

Re: [patch] Update template instantiation documentation

2015-10-05 Thread Jonathan Wakely
On 03/10/15 10:44 -0600, Sandra Loosemore wrote: On 10/03/2015 06:47 AM, Jonathan Wakely wrote: https://gcc.gnu.org/onlinedocs/gcc/Template-Instantiation.html currently says that using -frepo "is your best option for application code written for the Borland model, as it just works."

[wwwdocs] Suggest UBsan in https://gcc.gnu.org/bugs/

2015-10-06 Thread Jonathan Wakely
For many non-bugs UBsan is at least as likely to reveal it as -fno-strict-aliasing -fwrapv -fno-aggressive-loop-optimizations so we should tell people to try that before wasting time in Bugzilla. OK for wwwdocs? Index: htdocs/bugs/index.html ===

[wwwdocs] Update C++ conformance status

2015-10-06 Thread Jonathan Wakely
People are being scared off by the experimental status on https://gcc.gnu.org/projects/cxx0x.html e.g. https://gcc.gnu.org/ml/gcc/2015-10/msg00025.html This makes it clear C++11 in 5.1 is no longer experimental. We also have a "Standard Conformance" section for G++ in https://gcc.gnu.org/bugs/

Re: [wwwdocs] Suggest UBsan in https://gcc.gnu.org/bugs/

2015-10-06 Thread Jonathan Wakely
On 06/10/15 11:54 +0100, Jonathan Wakely wrote: For many non-bugs UBsan is at least as likely to reveal it as -fno-strict-aliasing -fwrapv -fno-aggressive-loop-optimizations so we should tell people to try that before wasting time in Bugzilla. OK for wwwdocs? Index: htdocs/bugs/index.html

Re: Additional headers under include/experimental/

2015-10-06 Thread Jonathan Wakely
On 03/07/14 11:35 +0100, Jonathan Wakely wrote: I'm working on parts of the Filesystem TS and think it makes sense to split it up into separate headers for path, directory utils and the free functions, then include those from , otherwise it's going to be a whopper. Currently I&

Re: vector lightweight debug mode

2015-10-07 Thread Jonathan Wakely
On 07/10/15 21:38 +0200, François Dumont wrote: Hi I completed vector assertion mode. Here is the result of the new test you will find in the attached patch. With debug mode: /home/fdt/dev/gcc/build_git/x86_64-unknown-linux-gnu/libstdc++-v3/include/debug/safe_iterator.h:375: Error: attempt t

[patch] Backport C++ Filesystem TS fixes to gcc-5-branch

2015-10-07 Thread Jonathan Wakely
only meant to be in my local tree not checked in! Tested powerpc64le-linux, committed to gcc-5-branch. commit aa25633dc15bdea41959ce3da3ba101fcb31bfbf Author: Jonathan Wakely Date: Fri Oct 2 22:06:38 2015 +0100 Backport Filesystem TS fixes from mainline. PR libstdc++/67173

Re: Additional headers under include/experimental/

2015-10-09 Thread Jonathan Wakely
On 06/10/15 15:12 +0100, Jonathan Wakely wrote: On 03/07/14 11:35 +0100, Jonathan Wakely wrote: I'm working on parts of the Filesystem TS and think it makes sense to split it up into separate headers for path, directory utils and the free functions, then include those from , otherwise

Re: [PATCH] Random shuffle moveable: container size

2015-10-13 Thread Jonathan Wakely
On 08/10/15 10:35 -0300, Aurelio Remonda wrote: This patch reduces the size of the array A (the array that contains the values being shuffled) so the test can pass while running the stdlibc++ testsuite. Ahem! The project's name is libstdc++ !!! :-) It also make some minor changes such as: *D

Re: [PATCH] reduce size penalty for including C++11 on x86 systems

2015-10-13 Thread Jonathan Wakely
On 13/10/15 21:44 -0400, Nathan Froyd wrote: Including in C++11 mode (typically done for std::{min,max,swap}) includes , for std::uniform_int_distribution. On x86 platforms, manages to drag in through x86's opt_random.h header, and has gotten rather large recently with the addition of AVX in

Re: [PATCH] mark libstdc++ tests unsupported if they fail with "relocation truncated"

2015-10-15 Thread Jonathan Wakely
On 13/10/15 10:12 +0100, Szabolcs Nagy wrote: Dejagnu tweak: Check the compiler output in libstdc++-dg-test using ${tool}_check_unsupported_p and mark the output unsupported accordingly to avoid "relocation truncated" failures cluttering the test results on aarch64-none-elf with -mcmodel=tiny. (g

Re: [PATCH] Random shuffle moveable: container size

2015-10-16 Thread Jonathan Wakely
Committed to trunk, thanks for the patch.

[patch] Document options for building and linking to libstdc++fs.a

2015-10-16 Thread Jonathan Wakely
This documents how to use the Filsystem TS library. Committed to trunk. commit 2d8dfef4311b51a2743f5ab722d467792c7c32dd Author: Jonathan Wakely Date: Fri Oct 16 14:53:46 2015 +0100 Document options for Filesystem TS library * doc/xml/manual/configure.xml: Document

[patch] Define Feature-test macro for std::bool_constant

2015-10-21 Thread Jonathan Wakely
The latest feature-testing document defines the __cpp_lib_bool_constant macro, so this uncomments the placeholder I left in . Tested powerpc64le-linux, committed to trunk. commit 00ce7154a868daa8195d5bbc0b04370edf3e0de8 Author: Jonathan Wakely Date: Wed Oct 21 07:34:28 2015 +0100

[patch] Make std::async return deferred if thread creation fails

2015-10-24 Thread Jonathan Wakely
: Jonathan Wakely Date: Sat Oct 24 21:47:43 2015 +0100 Return deferred future if thread cannot be run * include/std/future (async): Use deferred function on exception. * testsuite/30_threads/async/except.cc: New. diff --git a/libstdc++-v3/include/std/future b/libstdc++-v3/include/std

[patch] Define std::invoke()

2015-10-24 Thread Jonathan Wakely
This implements C++17's std::invoke(), as a call to std::__invoke() so we can also use it in C++11 and C++14. This includes the resolution of LWG 2219 which was just passed in Kona. Tested powerpc64le-linux, committed to trunk. commit 9eb38ac574c84c515c98db57abc73581d50a45dd Author: Jon

Re: TR1 Special Math

2015-10-24 Thread Jonathan Wakely
On 8 May 2015 at 15:05, Ed Smith-Rowland <3dw...@verizon.net> wrote: > On 05/07/2015 12:06 PM, Jonathan Wakely wrote: >> >> Hi Ed, >> >> The C++ committee is considering the >> http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2015/n4437.pdf >> propo

Re: TR1 Special Math

2015-10-25 Thread Jonathan Wakely
On 25 October 2015 at 17:46, Ed Smith-Rowland <3dw...@verizon.net> wrote: > On 10/24/2015 11:38 PM, Jonathan Wakely wrote: >> >> On 8 May 2015 at 15:05, Ed Smith-Rowland <3dw...@verizon.net> wrote: >>> >>> On 05/07/2015 12:06 PM, Jonathan Wakely wrote:

Re: [v3 PATCH] Make the default constructors of tuple and pair conditionally explicit.

2015-11-03 Thread Jonathan Wakely
On 3 November 2015 at 02:37, Paolo Carlini wrote: > Hi, > > On 11/02/2015 09:20 PM, Ville Voutilainen wrote: >> >> On 2 November 2015 at 21:20, Paolo Carlini >> wrote: >>> >>> Can we follow the terse style already used elsewhere (eg, >>> __is_direct_constructible_new_safe) thus directly inherit fr

Re: [PATCH] Add configure flag for operator new (std::nothrow)

2015-11-03 Thread Jonathan Wakely
On 4 November 2015 at 01:55, Martin Sebor wrote: > On 11/03/2015 05:35 AM, Aurelio Remonda wrote: >> >> Currently, whenever operator new (std::nothrow) fails to allocate memory, >> it'll >> check if there is a new-handler function available. If there is, it'll >> call >> the handler and then try to

Re: [PATCH] Add configure flag for operator new (std::nothrow)

2015-11-03 Thread Jonathan Wakely
On 4 November 2015 at 02:11, Daniel Gutson wrote: > Since this is a nothrow new, we thought that probably the system > might not be exceptions-friendly (such as certain embedded systems), > so we wanted to provide the new_handler the ability to do something else > other than trying to allocate memo

Re: [PATCH] Add configure flag for operator new (std::nothrow)

2015-11-03 Thread Jonathan Wakely
On 4 November 2015 at 11:50, Jonathan Wakely wrote: > On 4 November 2015 at 02:11, Daniel Gutson wrote: >> Since this is a nothrow new, we thought that probably the system >> might not be exceptions-friendly (such as certain embedded systems), >> so we wanted to provide the ne

Re: [PATCH] Add configure flag for operator new (std::nothrow)

2015-11-05 Thread Jonathan Wakely
On 5 November 2015 at 20:52, Daniel Gutson wrote: > Real use cases: statistics and logging. It's a (one time) callback > reporting that something went wrong, > but not intended to fix things e.g. by attempting to free more memory. Why can't that be done by replacing operator new with a user-define

Re: [PATCH] Add configure flag for operator new (std::nothrow)

2015-11-05 Thread Jonathan Wakely
On 5 November 2015 at 23:31, Daniel Gutson wrote: > On Thu, Nov 5, 2015 at 2:11 PM, Jonathan Wakely wrote: >> On 5 November 2015 at 20:52, Daniel Gutson wrote: >>> Real use cases: statistics and logging. It's a (one time) callback >>> reporting that something wen

Re: [PATCH] Add configure flag for operator new (std::nothrow)

2015-11-05 Thread Jonathan Wakely
On 6 November 2015 at 09:02, Daniel Gutson wrote: > > El 5/11/2015 22:56, "Jonathan Wakely" escribió: >> >> On 5 November 2015 at 23:31, Daniel Gutson >> wrote: >> > On Thu, Nov 5, 2015 at 2:11 PM, Jonathan Wakely >> > wrote: >> >&g

[patch] Tweak comments in libstdc++ header

2015-11-10 Thread Jonathan Wakely
Minor grammatical fix. Committed to trunk. commit 1d82192ff38f4d0777ed57e8c05f3d1659e98649 Author: Jonathan Wakely Date: Tue Nov 10 08:41:57 2015 + * include/bits/functional_hash.h: Fix grammar in comment. diff --git a/libstdc++-v3/include/bits/functional_hash.h b/libstdc++-v3

Re: Remove instantiations when no concept check

2015-11-10 Thread Jonathan Wakely
On 09/11/15 22:14 +0100, François Dumont wrote: Hi I just committed this trivial cleanup. 2015-11-09 François Dumont * include/bits/stl_algo.h (partial_sort_copy): Instantiate std::iterator_traits only if concept checks. (lower_bound): Likewise. (upper_bound): Likewise.

Re: [PATCH] Add configure flag for operator new (std::nothrow)

2015-11-10 Thread Jonathan Wakely
On 06/11/15 09:59 +, Pedro Alves wrote: On 11/06/2015 01:56 AM, Jonathan Wakely wrote: On 5 November 2015 at 23:31, Daniel Gutson The issue is, as I understand it, to do the actual work of operator new, i.e. allocate memory. It should force us to copy most of the code of the original

[patch] Update C++17 library implementation status

2015-11-10 Thread Jonathan Wakely
Committed to trunk. commit 49c7ea7c21cb4592233904cc1a4eb293ac6d851c Author: Jonathan Wakely Date: Tue Nov 10 14:03:39 2015 + Update C++17 library implementation status * doc/xml/manual/status_cxx2017.xml: Update. * doc/html/*: Regenerate. diff --git a/libstdc++-v3/doc

[patch] libstdc++/68190 Fix return type of heterogeneous find for sets

2015-11-10 Thread Jonathan Wakely
This converts the return type of heterogeneous find members to the correct set iterator type. Tested powerpc64le-linux, committed to trunk. Will commit to the gcc-5-branch too. commit d84e13dd8a7d47016bdfc5a9f45d8658a9d16ed9 Author: Jonathan Wakely Date: Tue Nov 10 14:59:00 2015 +

[patch] libstdc++/56158 Extend valid values of iostream bitmask types

2015-11-11 Thread Jonathan Wakely
can't run the testsuite with ubsan anyway? commit ac2fc08a638c7f01ecb5b9e9b3d3a58caf031534 Author: Jonathan Wakely Date: Wed Nov 11 09:25:38 2015 + Extend valid values of iostream bitmask types PR libstdc++/56158 * include/bits/ios_base.h (_Ios_Fmtflags, _Ios_Openmod

[patch] libstdc++/64651 allow rethrow_exception to be found by ADL

2015-11-11 Thread Jonathan Wakely
4f23d Author: Jonathan Wakely Date: Wed Nov 11 09:56:22 2015 + PR libstdc++/64651 * libsupc++/exception_ptr.h (rethrow_exception): Add using-declaration to __exception_ptr namespace. * testsuite/18_support/exception_ptr/rethrow_exception.cc: Test ADL. Remove unnecessary

Re: [v3 PATCH] LWG 2510, make the default constructors of library tag types explicit.

2015-11-11 Thread Jonathan Wakely
On 10/11/15 22:01 +0200, Ville Voutilainen wrote: LWG 2510, make the default constructors of library tag types explicit. * include/bits/mutex.h (defer_lock_t, try_lock_t, adopt_lock_t): Add an explicit default constructor. * include/bits/stl_pair.h (piecewise_construct_t): Likewise

Re: State of support for the ISO C++ Transactional Memory TS and remanining work

2015-11-11 Thread Jonathan Wakely
On 11/11/15 15:04 +, Szabolcs Nagy wrote: yes, non-experimental (since you were talking about libstdc++ changes to complete the support for the TS). The TS is experimental. That's the nature of all C++ TSs. Completing the TS support does not mean anything is non-experimental.

[patch] libstdc++/60421 (again) Loop in std::this_thread sleep functions

2015-11-11 Thread Jonathan Wakely
the new overflow-checking built-ins. Tested powerpc64le-linux, committed to trunk. commit 1773ceda34abcbe088048786ac869ee1740ce1d9 Author: Jonathan Wakely Date: Wed Nov 11 16:16:55 2015 + Loop in std::this_thread sleep functions PR libstdc++/60421 * include/std/thread

Re: [v3 PATCH] LWG 2510, make the default constructors of library tag types explicit.

2015-11-11 Thread Jonathan Wakely
list would use explicit constructor 'constexpr std::nothrow_t::nothrow_t()' const std::nothrow_t std::nothrow = { }; ^ see https://gcc.gnu.org/ml/gcc-regression/2015-11/ Fixed by this patch. commit 97c2da9d4cc11bd5dae077ccb5fda4e72f7c34d5 Auth

[v3 patch] GSoC: implement polymorphic memory resources

2015-11-11 Thread Jonathan Wakely
al. I intend to commit these patches before stage 1 ends. commit 8ed54c84edbdebe30cb16ab97b54a4d157be67c2 Author: Jonathan Wakely Date: Wed Nov 11 18:58:51 2015 + Implement C++ LFTSv1 polymorphic memory resources 2015-11-11 Fan You * include/Makefile.am:

Re: [libstdc++ testsuite][patch] many locale tests only SUPPORTED on linux, start making these portable

2015-11-11 Thread Jonathan Wakely
are many more modifications that could be made to the test themselves to make them portable to non-linux systems but I think they are better made with separate patches. Andreas Tobler has done a lot of review and testing on both FreeBSD and linux (to verify no regressions), and Jonathan Wakely has do

Re: [libstdc++ testsuite][patch] many locale tests only SUPPORTED on linux, start making these portable

2015-11-11 Thread Jonathan Wakely
On 11/11/15 22:53 +0100, John Marino wrote: On 11/11/2015 10:51 PM, Jonathan Wakely wrote: On 16/10/15 11:21 +0200, John Marino wrote: The only significant comment was: e.g. `"de_DE" => "de_DE@ISO8859-15` should be `e.g. "de_DE" => "de_DE.ISO8859-15"`

Re: [v3 PATCH] Implement D0013R2, logical type traits.

2015-11-11 Thread Jonathan Wakely
On 12/11/15 00:06 +0200, Ville Voutilainen wrote: --- a/gcc/testsuite/g++.dg/cpp0x/Wattributes1.C +++ b/gcc/testsuite/g++.dg/cpp0x/Wattributes1.C @@ -5,4 +5,4 @@ #include __attribute__((visibility("hidden")))void*operator new(std::size_t); // { dg-warning "visibility attribute ignored" } -// {

Pointless configure checks for macros

2015-11-12 Thread Jonathan Wakely
-11-12 Jonathan Wakely PR libstdc++/68307 * config/os/mingw32-w64/error_constants.h: Uncomment all error codes supported by mingw-w64. Is there any problem doing this? diff --git a/libstdc++-v3/config/os/mingw32-w64/error_constants.h b/libstdc++-v3/config/os/mingw32-w64

[patch] Fix doxygen @file comment in libstdc++ header

2015-11-12 Thread Jonathan Wakely
A trivial patch, I didn't edit the @file when I moved this file to the new bits sub-directory. Committed as obvious. commit 1229ad46adf4d9a74b3da4e354120ebaa1be8eb1 Author: Jonathan Wakely Date: Thu Nov 12 10:07:08 2015 + * include/experimental/bits/string_view.tcc: Fix do

Re: [PATCH] Enable libstdc++ numeric conversions on Cygwin

2015-11-12 Thread Jonathan Wakely
On 12/11/15 11:40 +, Jonathan Wakely wrote: On 18/09/15 12:01 -0400, Jennifer Yao wrote: Forgot to include the patch. On Fri, Sep 18, 2015 at 11:17 AM, Jennifer Yao wrote: A number of functions in libstdc++ are guarded by the _GLIBCXX_USE_C99 preprocessor macro, which is only defined on

Re: [v3 PATCH] Implement D0013R2, logical type traits.

2015-11-12 Thread Jonathan Wakely
On 12/11/15 00:46 +0200, Ville Voutilainen wrote: On 12 November 2015 at 00:18, Jonathan Wakely wrote: So I think we want to define them again, independently, in , even though it might lead to ambiguities Here. Tested again on Linux-PPC64. 2015-11-11 Ville Voutilainen Implement

Re: [v3 PATCH] LWG 2510, make the default constructors of library tag types explicit.

2015-11-12 Thread Jonathan Wakely
On 12/11/15 15:23 +0100, Gerald Pfeifer wrote: On Wed, 11 Nov 2015, Jonathan Wakely wrote: Fixed by this patch. Thanks, Jonathan! Unfortunately bootstrap is still broken (on i386-unknown-freebsd11.0 at least): Different issue. In file included from /scratch/tmp/gerald/gcc-HEAD/libstdc

Re: [PATCH] Enable libstdc++ numeric conversions on Cygwin

2015-11-12 Thread Jonathan Wakely
On 12/11/15 13:39 +, Jonathan Wakely wrote: One downside of this change is that we introduce some (hopefully safe) ODR violations, where inline functions and templates that depend on _GLIBCXX_USE_C99_FOO might now be defined differently in C++98 and C++11 code. Previously they had the same

Re: [v3 PATCH] LWG 2510, make the default constructors of library tag types explicit.

2015-11-12 Thread Jonathan Wakely
On 12/11/15 14:36 +, Jonathan Wakely wrote: On 12/11/15 15:23 +0100, Gerald Pfeifer wrote: On Wed, 11 Nov 2015, Jonathan Wakely wrote: Fixed by this patch. Thanks, Jonathan! Unfortunately bootstrap is still broken (on i386-unknown-freebsd11.0 at least): Different issue. In file

Re: [patch] libstdc++/56158 Extend valid values of iostream bitmask types

2015-11-12 Thread Jonathan Wakely
On 12/11/15 08:48 -0700, Martin Sebor wrote: On 11/11/2015 02:48 AM, Jonathan Wakely wrote: As described in the PR, we have operator~ overloads defined for enumeration types which produce values outside the range of valid values for the type. In C++11 that can be trivially solved by giving the

Re: [PATCH] Enable libstdc++ numeric conversions on Cygwin

2015-11-12 Thread Jonathan Wakely
On 12/11/15 12:24 -0500, Jennifer Yao wrote: On 12/11/15 13:39 +, Jonathan Wakely wrote: One downside of this change is that we introduce some (hopefully safe) ODR violations, where inline functions and templates that depend on _GLIBCXX_USE_C99_FOO might now be defined differently in C++98

Re: [patch] libstdc++/56158 Extend valid values of iostream bitmask types

2015-11-13 Thread Jonathan Wakely
On 12/11/15 11:09 -0700, Martin Sebor wrote: On 11/12/2015 10:08 AM, Jonathan Wakely wrote: On 12/11/15 08:48 -0700, Martin Sebor wrote: On 11/11/2015 02:48 AM, Jonathan Wakely wrote: As described in the PR, we have operator~ overloads defined for enumeration types which produce values

Re: [patch] libstdc++/56158 Extend valid values of iostream bitmask types

2015-11-13 Thread Jonathan Wakely
On 13/11/15 08:39 +, Jonathan Wakely wrote: On 12/11/15 11:09 -0700, Martin Sebor wrote: On 11/12/2015 10:08 AM, Jonathan Wakely wrote: On 12/11/15 08:48 -0700, Martin Sebor wrote: On 11/11/2015 02:48 AM, Jonathan Wakely wrote: As described in the PR, we have operator~ overloads defined

[patch] GSoC: Implement std::experimental::shared_ptr

2015-11-13 Thread Jonathan Wakely
ved the _Weak_friend helper class. - fixed some tests that used operator-> on shared_ptr. Thanks very much to Fan You, and to TIm Shen and Google. Tested powerpc64le-linux, committed to trunk. commit 3fba7e7d7aa6b7c65474db313d58c17273406d5c Author: Jonathan Wakely Date: Fri Nov

Re: [patch] GSoC: Implement std::experimental::shared_ptr

2015-11-13 Thread Jonathan Wakely
On 13/11/15 11:09 +, Jonathan Wakely wrote: This is the other piece of work done by Fan You for the Google Summer of Code (and mentored by Tim). This implements experimental::shared_ptr from the Library Fundamentals TS, which differs from std::shared_ptr by supporting arrays, i.e

[patch] Implement std::experimental::source_location (sort of)

2015-11-13 Thread Jonathan Wakely
This is a non-conforming implementation of https://rawgit.com/cplusplus/fundamentals-ts/v2/fundamentals-ts.html#reflection.src_loc It doesn't provide any column numbers, and fails to meet the requirement that using current() in a NSDMI will refer to the location of the constructor ... but maybe i

Re: [PATCH] Enable libstdc++ numeric conversions on Cygwin

2015-11-13 Thread Jonathan Wakely
On 12/11/15 13:39 +, Jonathan Wakely wrote: On 12/11/15 11:40 +, Jonathan Wakely wrote: On 18/09/15 12:01 -0400, Jennifer Yao wrote: Forgot to include the patch. On Fri, Sep 18, 2015 at 11:17 AM, Jennifer Yao wrote: A number of functions in libstdc++ are guarded by the

Re: [libstdc++ testsuite][patch] many locale tests only SUPPORTED on linux, start making these portable

2015-11-13 Thread Jonathan Wakely
On 11/11/15 22:12 +, Jonathan Wakely wrote: On 11/11/15 22:53 +0100, John Marino wrote: On 11/11/2015 10:51 PM, Jonathan Wakely wrote: On 16/10/15 11:21 +0200, John Marino wrote: The only significant comment was: e.g. `"de_DE" => "de_DE@ISO8859-15` shou

Re: [patch] update locale support fro FreeBSD

2015-11-13 Thread Jonathan Wakely
On 12/11/15 23:32 +0100, Andreas Tobler wrote: All, with the work from Jennifer Yao and John Marino we can now update the locale support on FreeBSD to the level of DragonFly. Results of this work can be found on the results list. Here my small addendum to make it work on FreeBSD. Is this ok

Re: TR1 Special Math

2015-11-13 Thread Jonathan Wakely
On 25 October 2015 at 20:48, Jonathan Wakely wrote: > On 25 October 2015 at 17:46, Ed Smith-Rowland <3dw...@verizon.net> wrote: >> On 10/24/2015 11:38 PM, Jonathan Wakely wrote: >>> >>> On 8 May 2015 at 15:05, Ed Smith-Rowland <3dw...@verizon.net> wrote: >

[patch] Define std::experimental::randint etc.

2015-11-13 Thread Jonathan Wakely
Another piece of the Library Fundamentals v2 TS, as specified by https://rawgit.com/cplusplus/fundamentals-ts/v2/fundamentals-ts.html#rand.util.randint Tested powerpc64le-linux, committed to trunk. commit 3a59dc1453e5d273e6943a0928fc7722488ae654 Author: Jonathan Wakely Date: Fri Nov 13 16:26

Re: [PATCH] 21_strings/basic_string/capacity/wchar_t/18654.cc

2015-11-13 Thread Jonathan Wakely
On 13 November 2015 at 23:53, David Edelsohn wrote: > On Fri, Nov 13, 2015 at 1:40 PM, David Edelsohn wrote: >> http://www.cplusplus.com/reference/string/basic_string/reserve/ >> >> "Note that the resulting string capacity may be equal or greater than n." >> >> The current testcase verifies that

Re: [patch] update locale support fro FreeBSD

2015-11-14 Thread Jonathan Wakely
On 13/11/15 15:28 +, Jonathan Wakely wrote: On 12/11/15 23:32 +0100, Andreas Tobler wrote: All, with the work from Jennifer Yao and John Marino we can now update the locale support on FreeBSD to the level of DragonFly. Results of this work can be found on the results list. Here my

Re: [patch] GSoC: Implement std::experimental::shared_ptr

2015-11-14 Thread Jonathan Wakely
On 14/11/15 08:19 -0500, David Edelsohn wrote: I can provide the pre-processed source file if needed. I should be able to fix it just from the errors - thanks.

Re: [PATCH] Enable libstdc++ numeric conversions on Cygwin

2015-11-14 Thread Jonathan Wakely
On 14/11/15 09:37 +0100, Christophe Lyon wrote: Hi, this commit makes the GCC build to fail for targets using newlib Doh, this was supposed to *help* newlib! I'll deal with it asap.

Re: [PATCH] Enable libstdc++ numeric conversions on Cygwin

2015-11-14 Thread Jonathan Wakely
On 14/11/15 09:37 +0100, Christophe Lyon wrote: Hi, this commit makes the GCC build to fail for targets using newlib (I tested arm-none-eabi and aarch64-none-elf) I'm seeing errors such as: In file included from /tmp/9122162_8.tmpdir/aci-gcc-fsf/builds/gcc-fsf-gccsrc/obj-aarch64_be-none-elf/gcc3

Re: [PATCH] 21_strings/basic_string/capacity/wchar_t/18654.cc

2015-11-14 Thread Jonathan Wakely
On 14 November 2015 at 00:56, Jonathan Wakely wrote: > On 13 November 2015 at 23:53, David Edelsohn wrote: >> On Fri, Nov 13, 2015 at 1:40 PM, David Edelsohn wrote: >>> http://www.cplusplus.com/reference/string/basic_string/reserve/ >>> >>> "Note that t

Re: [PATCH] Enable libstdc++ numeric conversions on Cygwin

2015-11-15 Thread Jonathan Wakely
c7247fd99b1f70eec04f Author: Jonathan Wakely Date: Sun Nov 15 11:03:54 2015 + PR libstdc++/68353 fix _GLIBCXX_USE_C99_WCHAR test PR libstdc++/68353 * include/bits/basic_string.h: Test value of _GLIBCXX_USE_C99_WCHAR not whether it is defined. * include/ext/vstrin

Re: [PATCH] Enable libstdc++ numeric conversions on Cygwin

2015-11-16 Thread Jonathan Wakely
On 15/11/15 16:38 -0500, Jennifer Yao wrote: I just finished running the testsuite on x86_64-pc-cygwin for Jonathan's latest patch and compared the results against an older (about two months old) run, and so far I'm not seeing any regressions. Granted, this is strictly preliminary; I'm currently

Re: vector lightweight debug mode

2015-11-16 Thread Jonathan Wakely
On 15/11/15 22:12 +0100, François Dumont wrote: Here is a last version I think. I completed the debug light mode by adding some check on iterator ranges. Even if check are light I made some changes to make sure that internally vector is not using methods instrumented with those checks. Th

Re: [PATCH] libstdc++: Fix libstdc++/67440: pretty-printing of a const set fails

2015-11-16 Thread Jonathan Wakely
On 16/11/15 21:04 +, Doug Evans wrote: Hi. Apologies for the delay. https://gcc.gnu.org/bugzilla/show_bug.cgi?id=67440 Tested with current trunk. 2015-11-16 Doug Evans PR libstdc++/67440 * python/libstdcxx/v6/printers.py (find_type): Handle "const" in type name.

[wwwdocs] Update libstdc++ release notes in gcc-6/changes.html

2015-11-17 Thread Jonathan Wakely
Committed to cvs. Index: htdocs/gcc-6/changes.html === RCS file: /cvs/gcc/wwwdocs/htdocs/gcc-6/changes.html,v retrieving revision 1.42 diff -u -r1.42 changes.html --- htdocs/gcc-6/changes.html 15 Nov 2015 08:01:27 - 1.42 +++ htdo

<    12   13   14   15   16   17   18   19   20   21   >