aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJason Merrill <jason@yorick.cygnus.com>1998-05-15 20:03:17 +0000
committerJason Merrill <jason@gcc.gnu.org>1998-05-15 16:03:17 -0400
commit6bc39009e177dcd5fa77c995d7a5f7f3d8f8016d (patch)
treeb4b2cb1ec4d8510a7fa3b867ef0f28a61c1f36d9
parentbbc0e641725646ce587b36d4e5f5421bdc75c274 (diff)
downloadgcc-6bc39009e177dcd5fa77c995d7a5f7f3d8f8016d.zip
gcc-6bc39009e177dcd5fa77c995d7a5f7f3d8f8016d.tar.gz
gcc-6bc39009e177dcd5fa77c995d7a5f7f3d8f8016d.tar.bz2
* class.c (finish_struct_1): Use BINFO_SIZE.
From-SVN: r19782
-rw-r--r--gcc/cp/ChangeLog2
-rw-r--r--gcc/cp/class.c3
2 files changed, 5 insertions, 0 deletions
diff --git a/gcc/cp/ChangeLog b/gcc/cp/ChangeLog
index d8d4752..0ad5920 100644
--- a/gcc/cp/ChangeLog
+++ b/gcc/cp/ChangeLog
@@ -1,5 +1,7 @@
Fri May 15 00:46:05 1998 Jason Merrill <jason@yorick.cygnus.com>
+ * class.c (finish_struct_1): Use BINFO_SIZE.
+
* decl.c (start_decl): Use 'tem'.
Thu May 14 16:30:47 EDT 1998 Andrew MacLeod <amacleod@cygnus.com>
diff --git a/gcc/cp/class.c b/gcc/cp/class.c
index a07563f..99284d6 100644
--- a/gcc/cp/class.c
+++ b/gcc/cp/class.c
@@ -3864,6 +3864,9 @@ finish_struct_1 (t, warn_anon)
the virtual bases. */
if (empty && flag_new_abi)
CLASSTYPE_SIZE (t) = integer_zero_node;
+ else if (flag_new_abi && TYPE_HAS_COMPLEX_INIT_REF (t)
+ && TYPE_HAS_COMPLEX_ASSIGN_REF (t))
+ CLASSTYPE_SIZE (t) = TYPE_BINFO_SIZE (t);
else
CLASSTYPE_SIZE (t) = TYPE_SIZE (t);
CLASSTYPE_ALIGN (t) = TYPE_ALIGN (t);