diff options
Diffstat (limited to 'gcc/cp/init.c')
-rw-r--r-- | gcc/cp/init.c | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/gcc/cp/init.c b/gcc/cp/init.c index ccce6b787a0..9752a9bcd1d 100644 --- a/gcc/cp/init.c +++ b/gcc/cp/init.c @@ -1176,8 +1176,11 @@ expand_aggr_init (exp, init, alias_this, flags) && TREE_TYPE (init) == type) init = CONSTRUCTOR_ELTS (init); #endif + + TREE_TYPE (exp) = TYPE_MAIN_VARIANT (type); expand_aggr_init_1 (TYPE_BINFO (type), exp, exp, init, alias_this, LOOKUP_NORMAL|flags); + TREE_TYPE (exp) = type; TREE_READONLY (exp) = was_const; TREE_THIS_VOLATILE (exp) = was_volatile; } |