OSDN Git Service

PR c++/49855
authorjason <jason@138bc75d-0d04-0410-961f-82ee72b054a4>
Tue, 11 Oct 2011 17:53:07 +0000 (17:53 +0000)
committerjason <jason@138bc75d-0d04-0410-961f-82ee72b054a4>
Tue, 11 Oct 2011 17:53:07 +0000 (17:53 +0000)
commit91c3ace51288ad603bb71f5b8bf6125f4ede355e
tree473b4642325a93846dad0753e76e9aebf4091fc9
parentd331c123a42208507779a2bed8aaef1c7e3704f6
PR c++/49855
PR c++/49896
* cp-tree.def (IMPLICIT_CONV_EXPR): New.
* call.c (perform_implicit_conversion_flags): Build it
instead of NOP_EXPR.
* cp-objcp-common.c (cp_common_init_ts): It's typed.
* cxx-pretty-print.c (pp_cxx_cast_expression): Handle it.
(pp_cxx_expression): Likewise.
* error.c (dump_expr): Likewise.
* semantics.c (potential_constant_expression_1): Likewise.
* tree.c (cp_tree_equal): Likewise.
(cp_walk_subtrees): Likewise.
* pt.c (iterative_hash_template_arg): Likewise.
(for_each_template_parm_r): Likewise.
(type_dependent_expression_p): Likewise.
(tsubst_copy, tsubst_copy_and_build): Handle IMPLICIT_CONV_EXPR
and CONVERT_EXPR.
* cp-tree.h (IMPLICIT_CONV_EXPR_DIRECT_INIT): New.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@179813 138bc75d-0d04-0410-961f-82ee72b054a4
14 files changed:
gcc/cp/ChangeLog
gcc/cp/call.c
gcc/cp/cp-objcp-common.c
gcc/cp/cp-tree.def
gcc/cp/cp-tree.h
gcc/cp/cxx-pretty-print.c
gcc/cp/error.c
gcc/cp/pt.c
gcc/cp/semantics.c
gcc/cp/tree.c
gcc/testsuite/ChangeLog
gcc/testsuite/g++.dg/cpp0x/constexpr-template3.C [new file with mode: 0644]
gcc/testsuite/g++.dg/template/constant1.C [new file with mode: 0644]
gcc/testsuite/g++.dg/template/constant2.C [new file with mode: 0644]