Re: [PATCH] PR libstdc++/88782 avoid ODR problems in std::make_shared

2019-01-21 Thread Jonathan Wakely
On 18/01/19 21:28 +, Jonathan Wakely wrote: The old version of _Sp_counted_ptr_inplace::_M_get_deleter (up to GCC 8.2.0) expects to be passed a real std::typeinfo object, so mixing that with the new definition of the __shared_ptr constructor (which always passes the fake tag) leads to accessi

Re: [PATCH] PR libstdc++/88782 avoid ODR problems in std::make_shared

2019-01-21 Thread Jonathan Wakely
On 21/01/19 11:32 +, Jonathan Wakely wrote: On 21/01/19 12:16 +0100, Richard Biener wrote: On Mon, Jan 21, 2019 at 12:08 PM Jonathan Wakely wrote: On 21/01/19 09:13 +0100, Richard Biener wrote: On Fri, Jan 18, 2019 at 10:29 PM Jonathan Wakely wrote: The old version of _Sp_counted_ptr_

Re: [PATCH] PR libstdc++/88782 avoid ODR problems in std::make_shared

2019-01-21 Thread Jonathan Wakely
On 21/01/19 12:16 +0100, Richard Biener wrote: On Mon, Jan 21, 2019 at 12:08 PM Jonathan Wakely wrote: On 21/01/19 09:13 +0100, Richard Biener wrote: >On Fri, Jan 18, 2019 at 10:29 PM Jonathan Wakely wrote: >> >> The old version of _Sp_counted_ptr_inplace::_M_get_deleter (up to GCC >> 8.2.0)

Re: [PATCH] PR libstdc++/88782 avoid ODR problems in std::make_shared

2019-01-21 Thread Richard Biener
On Mon, Jan 21, 2019 at 12:08 PM Jonathan Wakely wrote: > > On 21/01/19 09:13 +0100, Richard Biener wrote: > >On Fri, Jan 18, 2019 at 10:29 PM Jonathan Wakely wrote: > >> > >> The old version of _Sp_counted_ptr_inplace::_M_get_deleter (up to GCC > >> 8.2.0) expects to be passed a real std::typein

Re: [PATCH] PR libstdc++/88782 avoid ODR problems in std::make_shared

2019-01-21 Thread Jonathan Wakely
On 21/01/19 09:13 +0100, Richard Biener wrote: On Fri, Jan 18, 2019 at 10:29 PM Jonathan Wakely wrote: The old version of _Sp_counted_ptr_inplace::_M_get_deleter (up to GCC 8.2.0) expects to be passed a real std::typeinfo object, so mixing that with the new definition of the __shared_ptr const

Re: [PATCH] PR libstdc++/88782 avoid ODR problems in std::make_shared

2019-01-21 Thread Richard Biener
On Fri, Jan 18, 2019 at 10:29 PM Jonathan Wakely wrote: > > The old version of _Sp_counted_ptr_inplace::_M_get_deleter (up to GCC > 8.2.0) expects to be passed a real std::typeinfo object, so mixing that > with the new definition of the __shared_ptr constructor (which always > passes the fake tag)