On Tue, 21 Mar 2017, Ville Voutilainen wrote:
On 20 March 2017 at 04:27, Jason Merrill <ja...@redhat.com> wrote:
On Sun, Mar 19, 2017 at 6:19 PM, Ville Voutilainen
<ville.voutilai...@gmail.com> wrote:
I ran the tests for g++.dg/init thus far. Does this patch make sense?
The condition needs to be a lot more specific: DR 1748 only applies to
the non-allocating forms in [new.delete.placement], not to other
placement allocation functions.
Round 2:
The new tests tested on Linux-x64, finishing testing with the full suite on
Linux-PPC64.
2017-03-20 Ville Voutilainen <ville.voutilai...@gmail.com>
gcc/
PR c++/35878
* cp/init.c (build_new_1): Don't do a null check for
a namespace-scope non-replaceable placement new
in C++17 mode unless -fcheck-new is provided.
It looks strange to me. Why not change the definition of check_new instead
of changing the condition that uses it? One of the tests for
flag_check_new is redundant. In C++17 mode, you test for NULL return from
throwing operator new, why? This is a DR, doesn't it mean that it should
apply to all modes? Or is the hope that limiting it to an experimental
mode might let it pass in stage 4?
--
Marc Glisse