Defer folding of *&.
commit0744a0c1155bca3b0fee47ad2ac40a2652968bd4
authorjason <jason@138bc75d-0d04-0410-961f-82ee72b054a4>
Mon, 13 Nov 2017 22:12:55 +0000 (13 22:12 +0000)
committerjason <jason@138bc75d-0d04-0410-961f-82ee72b054a4>
Mon, 13 Nov 2017 22:12:55 +0000 (13 22:12 +0000)
tree1abdf8c3ce6efdfe6e521741c681eae3a746db70
parente6b3d9d035d761e96e1255dbd365450d928157b8
Defer folding of *&.

* typeck.c (cp_build_fold_indirect_ref): New.
(cp_build_indirect_ref_1): Split out from cp_build_indirect_ref.
Add 'fold' parameter.
* cp-tree.h: Declare cp_build_fold_indirect_ref.
* call.c, class.c, cp-ubsan.c, decl.c, except.c, init.c, lambda.c,
parser.c, rtti.c, tree.c, typeck.c, typeck2.c: Use it.
* parser.c (do_range_for_auto_deduction): Use RO_UNARY_STAR.
(cp_convert_range_for): Likewise.
* typeck2.c (build_x_arrow): Use RO_ARROW.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@254712 138bc75d-0d04-0410-961f-82ee72b054a4
14 files changed:
gcc/cp/ChangeLog
gcc/cp/call.c
gcc/cp/class.c
gcc/cp/cp-tree.h
gcc/cp/cp-ubsan.c
gcc/cp/decl.c
gcc/cp/except.c
gcc/cp/init.c
gcc/cp/lambda.c
gcc/cp/parser.c
gcc/cp/rtti.c
gcc/cp/tree.c
gcc/cp/typeck.c
gcc/cp/typeck2.c