diff options
Diffstat (limited to 'gcc/fortran/trans-expr.c')
-rw-r--r-- | gcc/fortran/trans-expr.c | 15 |
1 files changed, 1 insertions, 14 deletions
diff --git a/gcc/fortran/trans-expr.c b/gcc/fortran/trans-expr.c index 4d48c05..b7a296d 100644 --- a/gcc/fortran/trans-expr.c +++ b/gcc/fortran/trans-expr.c @@ -4337,20 +4337,7 @@ gfc_conv_structure (gfc_se * se, gfc_expr * expr, int init) if (!c->expr || cm->attr.allocatable) continue; - if (cm->ts.type == BT_CLASS && !cm->attr.proc_pointer) - { - gfc_component *data; - data = gfc_find_component (cm->ts.u.derived, "$data", true, true); - if (!data->backend_decl) - gfc_get_derived_type (cm->ts.u.derived); - val = gfc_conv_initializer (c->expr, &cm->ts, - TREE_TYPE (data->backend_decl), - data->attr.dimension, - data->attr.pointer); - - CONSTRUCTOR_APPEND_ELT (v, data->backend_decl, val); - } - else if (strcmp (cm->name, "$size") == 0) + if (strcmp (cm->name, "$size") == 0) { val = TYPE_SIZE_UNIT (gfc_get_derived_type (cm->ts.u.derived)); CONSTRUCTOR_APPEND_ELT (v, cm->backend_decl, val); |