diff options
author | Jason Merrill <jason@redhat.com> | 2003-04-03 15:07:56 -0500 |
---|---|---|
committer | Jason Merrill <jason@gcc.gnu.org> | 2003-04-03 15:07:56 -0500 |
commit | 55a2af0c4219527cf5e46f1efbbab6f80cd2cb84 (patch) | |
tree | 9fe7a68a6fec8d5366580f847eb22bfe8da5fb61 | |
parent | 773eae3968d667a04e0fadf85c2536ad2a313618 (diff) | |
download | gcc-55a2af0c4219527cf5e46f1efbbab6f80cd2cb84.zip gcc-55a2af0c4219527cf5e46f1efbbab6f80cd2cb84.tar.gz gcc-55a2af0c4219527cf5e46f1efbbab6f80cd2cb84.tar.bz2 |
cvt.c (ocp_convert): Only abort if we try to convert an object of TREE_ADDRESSABLE type.
* cvt.c (ocp_convert): Only abort if we try to convert an object
of TREE_ADDRESSABLE type.
From-SVN: r65212
-rw-r--r-- | gcc/cp/ChangeLog | 3 | ||||
-rw-r--r-- | gcc/cp/cvt.c | 3 |
2 files changed, 5 insertions, 1 deletions
diff --git a/gcc/cp/ChangeLog b/gcc/cp/ChangeLog index 06109bf..a8bff85 100644 --- a/gcc/cp/ChangeLog +++ b/gcc/cp/ChangeLog @@ -1,5 +1,8 @@ 2003-04-03 Jason Merrill <jason@redhat.com> + * cvt.c (ocp_convert): Only abort if we try to convert an object + of TREE_ADDRESSABLE type. + * class.c (build_vtable): Set DECL_ALIGN here. (get_vtable_decl): Not here. (layout_vtable_decl): Or here. diff --git a/gcc/cp/cvt.c b/gcc/cp/cvt.c index 19bca82..c62edf0 100644 --- a/gcc/cp/cvt.c +++ b/gcc/cp/cvt.c @@ -647,7 +647,8 @@ ocp_convert (tree type, tree expr, int convtype, int flags) TREE_TYPE (e) = TREE_TYPE (TARGET_EXPR_SLOT (e)) = type; return e; } - else if (CLASS_TYPE_P (type)) + else if (TREE_ADDRESSABLE (type)) + /* We shouldn't be treating objects of ADDRESSABLE type as rvalues. */ abort (); else return fold (build1 (NOP_EXPR, type, e)); |