}
}
- /* If the type is a character, the descriptor's element length is replaced
- by the elem_len argument. */
- if (dv->type == CFI_type_char || dv->type == CFI_type_ucs4_char ||
- dv->type == CFI_type_signed_char)
+ /* If the type is a Fortran character type, the descriptor's element
+ length is replaced by the elem_len argument. */
+ if (dv->type == CFI_type_char || dv->type == CFI_type_ucs4_char)
dv->elem_len = elem_len;
/* Dimension information and calculating the array length. */
}
}
- /* Element length. */
- if (result->type == CFI_type_char || result->type == CFI_type_ucs4_char ||
- result->type == CFI_type_signed_char)
+ /* Element length is ignored unless result->type specifies a Fortran
+ character type. */
+ if (result->type == CFI_type_char || result->type == CFI_type_ucs4_char)
result->elem_len = elem_len;
if (unlikely (compile_options.bounds_check))