re PR c++/16338 (ICE when throwing a compound literal)
authorMark Mitchell <mark@codesourcery.com>
Mon, 2 Aug 2004 01:58:52 +0000 (01:58 +0000)
committerMark Mitchell <mmitchel@gcc.gnu.org>
Mon, 2 Aug 2004 01:58:52 +0000 (01:58 +0000)
commitc30b4add62a69bba7271b49d6f31f43187af5cd6
tree0e2b7a7a4e1509e9c6c21c62383e3c5ac57705e8
parent112ccb83bb807c18e7540748b0b3af51d6cbe6cb
re PR c++/16338 (ICE when throwing a compound literal)

PR c++/16338
* cp-tree.h (DECL_INTEGRAL_CONSTANT_VAR_P): New macro.
* call.c (null_ptr_cst_p): Handle variables with constant
initializers.
* pt.c (convert_nontype_argument): Use
DECL_INTEGRAL_CONSTANT_VAR_P.
* semantics.c (finish_id_expression): Likewise.

PR c++~/16489
* decl.c (duplicate_decls): Reject duplicate namespace
declarations.

PR c++/16810
* typeck.c (build_ptrmemfunc): Loosen assertion.

PR c++/16338
* g++.dg/init/null1.C: New test.
* g++.dg/tc1/dr76.C: Adjust error marker.

PR c++/16489
* g++.dg/parse/namespace10.C: New test.

PR c++/16810
* g++.dg/inherit/ptrmem2.C: New test.

From-SVN: r85421
12 files changed:
gcc/cp/ChangeLog
gcc/cp/call.c
gcc/cp/cp-tree.h
gcc/cp/decl.c
gcc/cp/pt.c
gcc/cp/semantics.c
gcc/cp/typeck.c
gcc/testsuite/ChangeLog
gcc/testsuite/g++.dg/inherit/ptrmem2.C [new file with mode: 0644]
gcc/testsuite/g++.dg/init/null1.C [new file with mode: 0644]
gcc/testsuite/g++.dg/parse/namespace10.C [new file with mode: 0644]
gcc/testsuite/g++.dg/tc1/dr76.C