diff options
Diffstat (limited to 'gcc/cp/class.c')
-rw-r--r-- | gcc/cp/class.c | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/gcc/cp/class.c b/gcc/cp/class.c index 39005cbb1d9..0cc882c2600 100644 --- a/gcc/cp/class.c +++ b/gcc/cp/class.c @@ -1518,6 +1518,12 @@ check_bases (tree t, |= CLASSTYPE_CONTAINS_EMPTY_CLASS_P (basetype); TYPE_HAS_COMPLEX_DFLT (t) |= (!TYPE_HAS_DEFAULT_CONSTRUCTOR (basetype) || TYPE_HAS_COMPLEX_DFLT (basetype)); + SET_CLASSTYPE_READONLY_FIELDS_NEED_INIT + (t, CLASSTYPE_READONLY_FIELDS_NEED_INIT (t) + | CLASSTYPE_READONLY_FIELDS_NEED_INIT (basetype)); + SET_CLASSTYPE_REF_FIELDS_NEED_INIT + (t, CLASSTYPE_REF_FIELDS_NEED_INIT (t) + | CLASSTYPE_REF_FIELDS_NEED_INIT (basetype)); /* A standard-layout class is a class that: ... |