diff options
author | Mark Mitchell <mark@codesourcery.com> | 2002-11-26 07:20:13 +0000 |
---|---|---|
committer | Mark Mitchell <mmitchel@gcc.gnu.org> | 2002-11-26 07:20:13 +0000 |
commit | 2003cd3794588fe085d0d0b7d25f0ee368bb7694 (patch) | |
tree | e33275eb6e613357e38a3107b8118e25a168ba55 /gcc/cp/tree.c | |
parent | cbad89c4e2c9f6fdb510bf9f2878ffcd31c91e2f (diff) | |
download | gcc-2003cd3794588fe085d0d0b7d25f0ee368bb7694.zip gcc-2003cd3794588fe085d0d0b7d25f0ee368bb7694.tar.gz gcc-2003cd3794588fe085d0d0b7d25f0ee368bb7694.tar.bz2 |
empty11.C: New test.
* testsuite/g++.dg/abi/empty11.C: New test.
* testsuite/g++.dg/rtti/cv1.C: New test.
* tree.c (cp_build_qualified_type_real): Correct handling of
array types.
* class.c (walk_subobject_offsets): Fix thinko.
(build_base_field): Record offsets of empty bases in primary
virtual bases.
(layout_class_type): Record offsets of empty bases in fields.
From-SVN: r59497
Diffstat (limited to 'gcc/cp/tree.c')
-rw-r--r-- | gcc/cp/tree.c | 15 |
1 files changed, 4 insertions, 11 deletions
diff --git a/gcc/cp/tree.c b/gcc/cp/tree.c index 4b1142b..b101ac6 100644 --- a/gcc/cp/tree.c +++ b/gcc/cp/tree.c @@ -650,17 +650,10 @@ cp_build_qualified_type_real (type, type_quals, complain) if (element_type == error_mark_node) return error_mark_node; - /* See if we already have an identically qualified type. */ - t = get_qualified_type (type, type_quals); - - /* If we didn't already have it, create it now. */ - if (!t) - { - /* Make a new array type, just like the old one, but with the - appropriately qualified element type. */ - t = build_type_copy (type); - TREE_TYPE (t) = element_type; - } + /* Make a new array type, just like the old one, but with the + appropriately qualified element type. */ + t = build_type_copy (type); + TREE_TYPE (t) = element_type; /* Even if we already had this variant, we update TYPE_NEEDS_CONSTRUCTING and TYPE_HAS_NONTRIVIAL_DESTRUCTOR in case |