aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJakub Jelinek <jakub@redhat.com>2017-03-21 07:30:48 +0000
committerJakub Jelinek <jakub@redhat.com>2017-03-21 07:30:48 +0000
commitd449e0ee7ae1a4a556b68be854022663cce36f04 (patch)
tree6d3e5797881b1ebb3cb74a2adf14bca57898e98f
parent048ecdc26c796439848bb4c17008f42a4b6fc46c (diff)
PR c++/35878
* init.c (std_placement_new_fn_p, build_new_1): Formatting fixes. * g++.dg/init/pr35878_1.C: Rewrite directives to scan optimized dump instead of assembler. * g++.dg/init/pr35878_2.C: Likewise. * g++.dg/init/pr35878_3.C: Likewise. git-svn-id: https://gcc.gnu.org/svn/gcc/trunk@246303 138bc75d-0d04-0410-961f-82ee72b054a4
-rw-r--r--gcc/cp/ChangeLog7
-rw-r--r--gcc/cp/init.c7
-rw-r--r--gcc/testsuite/ChangeLog8
-rw-r--r--gcc/testsuite/g++.dg/init/pr35878_1.C6
-rw-r--r--gcc/testsuite/g++.dg/init/pr35878_2.C6
-rw-r--r--gcc/testsuite/g++.dg/init/pr35878_3.C6
6 files changed, 30 insertions, 10 deletions
diff --git a/gcc/cp/ChangeLog b/gcc/cp/ChangeLog
index 8264502e050..00dd769edd7 100644
--- a/gcc/cp/ChangeLog
+++ b/gcc/cp/ChangeLog
@@ -1,7 +1,12 @@
+2017-03-21 Jakub Jelinek <jakub@redhat.com>
+
+ PR c++/35878
+ * init.c (std_placement_new_fn_p, build_new_1): Formatting fixes.
+
2017-03-21 Ville Voutilainen <ville.voutilainen@gmail.com>
PR c++/35878
- * cp/init.c (std_placement_new_fn_p): New.
+ * init.c (std_placement_new_fn_p): New.
(build_new_1): Call it.
2017-03-20 Jason Merrill <jason@redhat.com>
diff --git a/gcc/cp/init.c b/gcc/cp/init.c
index 4ec26afa235..773279504ee 100644
--- a/gcc/cp/init.c
+++ b/gcc/cp/init.c
@@ -2710,7 +2710,8 @@ malloc_alignment ()
/* Determine whether an allocation function is a namespace-scope
non-replaceable placement new function. See DR 1748.
TODO: Enable in all standard modes. */
-static bool std_placement_new_fn_p (tree alloc_fn)
+static bool
+std_placement_new_fn_p (tree alloc_fn)
{
if ((cxx_dialect > cxx14) && DECL_NAMESPACE_SCOPE_P (alloc_fn))
{
@@ -3200,8 +3201,8 @@ build_new_1 (vec<tree, va_gc> **placement, tree type, tree nelts,
So check for a null exception spec on the op new we just called. */
nothrow = TYPE_NOTHROW_P (TREE_TYPE (alloc_fn));
- check_new = flag_check_new
- || (nothrow && !std_placement_new_fn_p (alloc_fn));
+ check_new
+ = flag_check_new || (nothrow && !std_placement_new_fn_p (alloc_fn));
if (cookie_size)
{
diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog
index 79672408fe2..c2dc55a42ef 100644
--- a/gcc/testsuite/ChangeLog
+++ b/gcc/testsuite/ChangeLog
@@ -1,5 +1,13 @@
2017-03-21 Jakub Jelinek <jakub@redhat.com>
+ PR c++/35878
+ * g++.dg/init/pr35878_1.C: Rewrite directives to scan optimized
+ dump instead of assembler.
+ * g++.dg/init/pr35878_2.C: Likewise.
+ * g++.dg/init/pr35878_3.C: Likewise.
+
+2017-03-21 Jakub Jelinek <jakub@redhat.com>
+
PR c/80097
* gcc.dg/ubsan/pr80097.c: New test.
diff --git a/gcc/testsuite/g++.dg/init/pr35878_1.C b/gcc/testsuite/g++.dg/init/pr35878_1.C
index b45c0097a93..e2fc4933425 100644
--- a/gcc/testsuite/g++.dg/init/pr35878_1.C
+++ b/gcc/testsuite/g++.dg/init/pr35878_1.C
@@ -1,6 +1,8 @@
-// { dg-options "-O2 --std=gnu++11" }
+// PR c++/35878
// { dg-do compile }
-// { dg-final { scan-assembler "test.*%rdi, %rdi" { target i?86-*-* x86_64-*-* } } }
+// { dg-options "-O2 -std=gnu++11 -fdump-tree-optimized" }
+// { dg-final { scan-tree-dump-times "v_\[0-9]+\\(D\\) \[=!]= 0" 1 "optimized" } }
+
#include <new>
#include <utility>
diff --git a/gcc/testsuite/g++.dg/init/pr35878_2.C b/gcc/testsuite/g++.dg/init/pr35878_2.C
index 066449419b9..c675cb6ed64 100644
--- a/gcc/testsuite/g++.dg/init/pr35878_2.C
+++ b/gcc/testsuite/g++.dg/init/pr35878_2.C
@@ -1,6 +1,8 @@
-// { dg-options "-O2 --std=gnu++17 -fcheck-new" }
+// PR c++/35878
// { dg-do compile }
-// { dg-final { scan-assembler "test.*%rdi, %rdi" { target i?86-*-* x86_64-*-* } } }
+// { dg-options "-O2 -std=gnu++17 -fcheck-new -fdump-tree-optimized" }
+// { dg-final { scan-tree-dump-times "v_\[0-9]+\\(D\\) \[=!]= 0" 1 "optimized" } }
+
#include <new>
#include <utility>
diff --git a/gcc/testsuite/g++.dg/init/pr35878_3.C b/gcc/testsuite/g++.dg/init/pr35878_3.C
index 8a5614f12ff..9317ea1b231 100644
--- a/gcc/testsuite/g++.dg/init/pr35878_3.C
+++ b/gcc/testsuite/g++.dg/init/pr35878_3.C
@@ -1,6 +1,8 @@
-// { dg-options "-O2 --std=gnu++17" }
+// PR c++/35878
// { dg-do compile }
-// { dg-final { scan-assembler-not "test.*%rdi, %rdi" { target i?86-*-* x86_64-*-* } } }
+// { dg-options "-O2 -std=gnu++17 -fdump-tree-optimized" }
+// { dg-final { scan-tree-dump-not "v_\[0-9]+\\(D\\) \[=!]= 0" "optimized" } }
+
#include <new>
#include <utility>