https://gcc.gnu.org/bugzilla/show_bug.cgi?id=89266
--- Comment #6 from Harald Anlauf <anlauf at gmx dot de> --- The problem might be here: check.c: gfc_calculate_transfer_sizes 5482 /* Calculate the size of the source. */ 5483 *source_size = gfc_target_expr_size (source); 5484 if (*source_size == 0) 5485 return false; Shouldn't the case tested here be handled differently?