https://gcc.gnu.org/g:de312b5db170725cd604725306f8dc18db586fef
commit de312b5db170725cd604725306f8dc18db586fef Author: Mikael Morin <mik...@gcc.gnu.org> Date: Thu May 15 19:29:10 2025 +0200 Correction régression select_type_50 Diff: --- gcc/fortran/trans-expr.cc | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/gcc/fortran/trans-expr.cc b/gcc/fortran/trans-expr.cc index 4f34837e5ea7..270f83f97f31 100644 --- a/gcc/fortran/trans-expr.cc +++ b/gcc/fortran/trans-expr.cc @@ -830,7 +830,9 @@ gfc_conv_derived_to_class (gfc_se *parmse, gfc_expr *e, gfc_symbol *fsym, var = gfc_create_var (tmp, "class"); /* Set the vptr. */ - if (opt_vptr_src) + if (parmse->class_container) + gfc_class_set_vptr (&parmse->pre, var, parmse->class_container); + else if (opt_vptr_src) gfc_class_set_vptr (&parmse->pre, var, opt_vptr_src); else gfc_reset_vptr (&parmse->pre, e, var);