OSDN Git Service

/cp
authorpaolo <paolo@138bc75d-0d04-0410-961f-82ee72b054a4>
Tue, 1 Nov 2011 23:28:19 +0000 (23:28 +0000)
committerpaolo <paolo@138bc75d-0d04-0410-961f-82ee72b054a4>
Tue, 1 Nov 2011 23:28:19 +0000 (23:28 +0000)
commit8fe701f5543e807309b540a942a98579550d9091
treefa8cf61a13cc6e8d63e6a7ada7b5a330722a63fc
parentd3f277f44d20538b002988754e9a453bd3485ebe
/cp
2011-11-01  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/44277
* cvt.c (cp_convert_to_pointer): Warn for zero as null pointer
constant.
* typeck.c (cp_truthvalue_conversion): Handle pointers and member
function pointers under c_inhibit_evaluation_warnings; use
nullptr_node for data member pointers.
(cp_build_binary_op): Tweak, just forward to cp_convert op1,
either a nullptr_node or an integer_zero_node.
(build_ptrmemfunc): Use nullptr_node.
* init.c (build_zero_init_1): Likewise.

/c-family
2011-11-01  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/44277
* c.opt: Add Wzero-as-null-pointer-constant.

/gcc
2011-11-01  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/44277
* doc/invoke.texi: Document -Wzero-as-null-pointer-constant.

/testsuite
2011-11-01  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/44277
* g++.dg/warn/Wzero-as-null-pointer-constant-1.C: New.
* g++.dg/cpp0x/Wzero-as-null-pointer-constant-1.C: Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@180750 138bc75d-0d04-0410-961f-82ee72b054a4
gcc/ChangeLog
gcc/c-family/ChangeLog
gcc/c-family/c.opt
gcc/cp/ChangeLog
gcc/cp/cvt.c
gcc/cp/init.c
gcc/cp/typeck.c
gcc/doc/invoke.texi
gcc/testsuite/ChangeLog
gcc/testsuite/g++.dg/cpp0x/Wzero-as-null-pointer-constant-1.C [new file with mode: 0644]
gcc/testsuite/g++.dg/warn/Wzero-as-null-pointer-constant-1.C [new file with mode: 0644]