diff options
author | Jason Merrill <jason@redhat.com> | 2014-09-30 13:12:29 -0400 |
---|---|---|
committer | Jason Merrill <jason@gcc.gnu.org> | 2014-09-30 13:12:29 -0400 |
commit | 32f3d0325439d650fef9a2675fbdcb53fa6ee893 (patch) | |
tree | 39cb1de907b15bbf6c7ace9412b1a360bc6bb5e7 | |
parent | 8d0cf15e1c9583723314193c1add818374d5f897 (diff) | |
download | gcc-32f3d0325439d650fef9a2675fbdcb53fa6ee893.zip gcc-32f3d0325439d650fef9a2675fbdcb53fa6ee893.tar.gz gcc-32f3d0325439d650fef9a2675fbdcb53fa6ee893.tar.bz2 |
method.c (build_stub_object): Use CONVERT_EXPR.
* method.c (build_stub_object): Use CONVERT_EXPR.
* tree.c (build_dummy_object): Likewise.
(is_dummy_object): Adjust.
From-SVN: r215736
-rw-r--r-- | gcc/cp/ChangeLog | 4 | ||||
-rw-r--r-- | gcc/cp/method.c | 2 | ||||
-rw-r--r-- | gcc/cp/tree.c | 4 |
3 files changed, 7 insertions, 3 deletions
diff --git a/gcc/cp/ChangeLog b/gcc/cp/ChangeLog index 00d3fe2..2cc3792 100644 --- a/gcc/cp/ChangeLog +++ b/gcc/cp/ChangeLog @@ -1,5 +1,9 @@ 2014-09-30 Jason Merrill <jason@redhat.com> + * method.c (build_stub_object): Use CONVERT_EXPR. + * tree.c (build_dummy_object): Likewise. + (is_dummy_object): Adjust. + * cp-tree.h (cp_trait_kind): Remove CPTK_IS_CONVERTIBLE_TO. * cxx-pretty-print.c (pp_cxx_trait_expression): Likewise. * semantics.c (trait_expr_value): Likewise. diff --git a/gcc/cp/method.c b/gcc/cp/method.c index d0e0105..b427d65 100644 --- a/gcc/cp/method.c +++ b/gcc/cp/method.c @@ -852,7 +852,7 @@ build_stub_type (tree type, int quals, bool rvalue) static tree build_stub_object (tree reftype) { - tree stub = build1 (NOP_EXPR, reftype, integer_one_node); + tree stub = build1 (CONVERT_EXPR, reftype, integer_one_node); return convert_from_reference (stub); } diff --git a/gcc/cp/tree.c b/gcc/cp/tree.c index a7bb38b..2247eb5 100644 --- a/gcc/cp/tree.c +++ b/gcc/cp/tree.c @@ -2979,7 +2979,7 @@ member_p (const_tree decl) tree build_dummy_object (tree type) { - tree decl = build1 (NOP_EXPR, build_pointer_type (type), void_node); + tree decl = build1 (CONVERT_EXPR, build_pointer_type (type), void_node); return cp_build_indirect_ref (decl, RO_NULL, tf_warning_or_error); } @@ -3028,7 +3028,7 @@ is_dummy_object (const_tree ob) { if (INDIRECT_REF_P (ob)) ob = TREE_OPERAND (ob, 0); - return (TREE_CODE (ob) == NOP_EXPR + return (TREE_CODE (ob) == CONVERT_EXPR && TREE_OPERAND (ob, 0) == void_node); } |