Lines Matching refs:ts1
5113 If ts1 is nonpolymorphic, ts2 must be the same type.
5114 If ts1 is polymorphic (CLASS), ts2 must be an extension of ts1. */
5117 gfc_type_compatible (gfc_typespec *ts1, gfc_typespec *ts2)
5119 bool is_class1 = (ts1->type == BT_CLASS);
5121 bool is_derived1 = (ts1->type == BT_DERIVED);
5123 bool is_union1 = (ts1->type == BT_UNION);
5127 if (ts1->type == BT_BOZ || ts2->type == BT_BOZ)
5131 && ts1->u.derived->components
5132 && ((ts1->u.derived->attr.is_class
5133 && ts1->u.derived->components->ts.u.derived->attr
5135 || ts1->u.derived->attr.unlimited_polymorphic))
5140 return (ts1->type == ts2->type);
5143 return gfc_compare_derived_types (ts1->u.derived, ts2->u.derived);
5146 return gfc_compare_derived_types (ts1->u.derived,
5151 return gfc_type_is_extension_of (ts1->u.derived->attr.is_class ?
5152 ts1->u.derived->components->ts.u.derived
5153 : ts1->u.derived,
5156 return gfc_type_is_extension_of (ts1->u.derived->attr.is_class ?
5157 ts1->u.derived->components->ts.u.derived
5158 : ts1->u.derived,