Re: [PATCHv2] do not throw in std::make_exception_ptr

2016-10-21 Thread Jonathan Wakely
On 21/10/16 13:57 +0100, Jonathan Wakely wrote: On 21/10/16 15:33 +0300, Gleb Natapov wrote: On Fri, Oct 21, 2016 at 02:58:26PM +0300, Gleb Natapov wrote: On Fri, Oct 21, 2016 at 12:44:39PM +0100, Jonathan Wakely wrote: On 21/10/16 14:36 +0300, Gleb Natapov wrote: > On Thu, Oct 20, 2016 at 11:

Re: [PATCHv2] do not throw in std::make_exception_ptr

2016-10-21 Thread Jonathan Wakely
On 21/10/16 15:33 +0300, Gleb Natapov wrote: On Fri, Oct 21, 2016 at 02:58:26PM +0300, Gleb Natapov wrote: On Fri, Oct 21, 2016 at 12:44:39PM +0100, Jonathan Wakely wrote: > On 21/10/16 14:36 +0300, Gleb Natapov wrote: > > On Thu, Oct 20, 2016 at 11:53:49PM -0400, Ryan Burn wrote: > > > Are exce

Re: [PATCHv2] do not throw in std::make_exception_ptr

2016-10-21 Thread Gleb Natapov
On Fri, Oct 21, 2016 at 02:58:26PM +0300, Gleb Natapov wrote: > On Fri, Oct 21, 2016 at 12:44:39PM +0100, Jonathan Wakely wrote: > > On 21/10/16 14:36 +0300, Gleb Natapov wrote: > > > On Thu, Oct 20, 2016 at 11:53:49PM -0400, Ryan Burn wrote: > > > > Are exception classes required to support emplac

Re: [PATCHv2] do not throw in std::make_exception_ptr

2016-10-21 Thread Gleb Natapov
On Fri, Oct 21, 2016 at 12:44:39PM +0100, Jonathan Wakely wrote: > On 21/10/16 14:36 +0300, Gleb Natapov wrote: > > On Thu, Oct 20, 2016 at 11:53:49PM -0400, Ryan Burn wrote: > > > Are exception classes required to support emplace new construction > > > like that? With this change, Intel's TBB libr

Re: [PATCHv2] do not throw in std::make_exception_ptr

2016-10-21 Thread Jonathan Wakely
On 21/10/16 12:44 +0100, Jonathan Wakely wrote: On 21/10/16 14:36 +0300, Gleb Natapov wrote: On Thu, Oct 20, 2016 at 11:53:49PM -0400, Ryan Burn wrote: Are exception classes required to support emplace new construction like that? With this change, Intel's TBB library no longer compiles because

Re: [PATCHv2] do not throw in std::make_exception_ptr

2016-10-21 Thread Jonathan Wakely
On 21/10/16 14:36 +0300, Gleb Natapov wrote: On Thu, Oct 20, 2016 at 11:53:49PM -0400, Ryan Burn wrote: Are exception classes required to support emplace new construction like that? With this change, Intel's TBB library no longer compiles because its exception class declares it's own new operato

Re: [PATCHv2] do not throw in std::make_exception_ptr

2016-10-21 Thread Gleb Natapov
On Thu, Oct 20, 2016 at 11:53:49PM -0400, Ryan Burn wrote: > Are exception classes required to support emplace new construction > like that? With this change, Intel's TBB library no longer compiles > because its exception class declares it's own new operator (see > https://github.com/wjakob/tbb/blo

Re: [PATCHv2] do not throw in std::make_exception_ptr

2016-10-20 Thread Ryan Burn
Are exception classes required to support emplace new construction like that? With this change, Intel's TBB library no longer compiles because its exception class declares it's own new operator (see https://github.com/wjakob/tbb/blob/master/include/tbb/tbb_exception.h): class tbb_exception : publ

Re: [PATCHv2] do not throw in std::make_exception_ptr

2016-08-22 Thread Jonathan Wakely
On 21/08/16 15:20 +0300, Gleb Natapov wrote: Jonathan, Is this version OK with you? I've committed the attached version, which just adds some whitespace and fixes the testsuite_abi.cc test. Thanks very much for the improvement to the code. commit f80c0cc401fc34b424662286bedc559d0e2bb243 Auth

Re: [PATCHv2] do not throw in std::make_exception_ptr

2016-08-21 Thread Gleb Natapov
Jonathan, Is this version OK with you? On Fri, Aug 05, 2016 at 07:49:24AM +0300, Gleb Natapov wrote: > Instead of throwing an exception allocate its memory and initialize it > explicitly. Makes std::make_exception_ptr more efficient since no stack > unwinding is needed. > > v1->v2: > - fix inde

Re: [PATCHv2] do not throw in std::make_exception_ptr

2016-08-05 Thread Gleb Natapov
On Fri, Aug 05, 2016 at 07:56:02AM +0200, Daniel Krügler wrote: > 2016-08-05 6:49 GMT+02:00 Gleb Natapov : > > Instead of throwing an exception allocate its memory and initialize it > > explicitly. Makes std::make_exception_ptr more efficient since no stack > > unwinding is needed. > > [..] > > >

Re: [PATCHv2] do not throw in std::make_exception_ptr

2016-08-04 Thread Daniel Krügler
2016-08-05 6:49 GMT+02:00 Gleb Natapov : > Instead of throwing an exception allocate its memory and initialize it > explicitly. Makes std::make_exception_ptr more efficient since no stack > unwinding is needed. [..] > +#ifndef _CXXABI_INIT_EXCEPTION_H > +#define _CXXABI_INIT_EXCEPTION_H 1 > + > +

[PATCHv2] do not throw in std::make_exception_ptr

2016-08-04 Thread Gleb Natapov
Instead of throwing an exception allocate its memory and initialize it explicitly. Makes std::make_exception_ptr more efficient since no stack unwinding is needed. v1->v2: - fix indentation - drop static from __dest_thunk - use static_cast instead of reinterpret_cast * libsupc++/exception (std