diff options
Diffstat (limited to 'gcc/fortran/trans-intrinsic.c')
-rw-r--r-- | gcc/fortran/trans-intrinsic.c | 10 |
1 files changed, 2 insertions, 8 deletions
diff --git a/gcc/fortran/trans-intrinsic.c b/gcc/fortran/trans-intrinsic.c index 4acdc8dc756..1f5d6154bef 100644 --- a/gcc/fortran/trans-intrinsic.c +++ b/gcc/fortran/trans-intrinsic.c @@ -7657,10 +7657,7 @@ conv_intrinsic_move_alloc (gfc_code *code) } else { - if (from_expr->ts.type != BT_DERIVED) - vtab = gfc_find_intrinsic_vtab (&from_expr->ts); - else - vtab = gfc_find_derived_vtab (from_expr->ts.u.derived); + vtab = gfc_find_vtab (&from_expr->ts); gcc_assert (vtab); tmp = gfc_build_addr_expr (NULL_TREE, gfc_get_symbol_decl (vtab)); gfc_add_modify_loc (input_location, &block, to_se.expr, @@ -7714,10 +7711,7 @@ conv_intrinsic_move_alloc (gfc_code *code) } else { - if (from_expr->ts.type != BT_DERIVED) - vtab = gfc_find_intrinsic_vtab (&from_expr->ts); - else - vtab = gfc_find_derived_vtab (from_expr->ts.u.derived); + vtab = gfc_find_vtab (&from_expr->ts); gcc_assert (vtab); tmp = gfc_build_addr_expr (NULL_TREE, gfc_get_symbol_decl (vtab)); gfc_add_modify_loc (input_location, &block, to_se.expr, |