From defd3e28d837e35a6b0a920d9fb9e62a09905077 Mon Sep 17 00:00:00 2001 From: jason Date: Mon, 9 Jul 2012 14:11:01 +0000 Subject: [PATCH] PR c++/53882 * tree.c (type_contains_placeholder_1): Handle NULLPTR_TYPE. (type_hash_eq): Likewise. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@189386 138bc75d-0d04-0410-961f-82ee72b054a4 --- gcc/ChangeLog | 6 ++++++ gcc/testsuite/ChangeLog | 5 +++++ gcc/testsuite/g++.dg/cpp0x/nullptr29.C | 4 ++++ gcc/tree.c | 2 ++ 4 files changed, 17 insertions(+) create mode 100644 gcc/testsuite/g++.dg/cpp0x/nullptr29.C diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 2b0ebab4002..3e8bfc236c7 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,9 @@ +2012-07-09 Jason Merrill + + PR c++/53882 + * tree.c (type_contains_placeholder_1): Handle NULLPTR_TYPE. + (type_hash_eq): Likewise. + 2012-07-09 Tom de Vries Richard Guenther diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index fd233516f96..07187ebe3d2 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,3 +1,8 @@ +2012-07-09 Jason Merrill + + PR c++/53882 + * g++.dg/cpp0x/nullptr29.C: New. + 2012-07-09 Tom de Vries Richard Guenther diff --git a/gcc/testsuite/g++.dg/cpp0x/nullptr29.C b/gcc/testsuite/g++.dg/cpp0x/nullptr29.C new file mode 100644 index 00000000000..a8e35a9b679 --- /dev/null +++ b/gcc/testsuite/g++.dg/cpp0x/nullptr29.C @@ -0,0 +1,4 @@ +// PR c++/53882 +// { dg-options "-std=gnu++11 -O" } + +void f(decltype(nullptr) &__restrict np) { } diff --git a/gcc/tree.c b/gcc/tree.c index 9be0c9a7e31..f92f0704619 100644 --- a/gcc/tree.c +++ b/gcc/tree.c @@ -2980,6 +2980,7 @@ type_contains_placeholder_1 (const_tree type) case METHOD_TYPE: case FUNCTION_TYPE: case VECTOR_TYPE: + case NULLPTR_TYPE: return false; case INTEGER_TYPE: @@ -6188,6 +6189,7 @@ type_hash_eq (const void *va, const void *vb) case COMPLEX_TYPE: case POINTER_TYPE: case REFERENCE_TYPE: + case NULLPTR_TYPE: return 1; case VECTOR_TYPE: -- 2.11.4.GIT