+2005-07-25 Jakub Jelinek <jakub@redhat.com>
+
+ PR fortran/20063
+ * data.c (gfc_assign_data_value_range): Call
+ create_character_initializer if last_ts is a character type.
+
2005-07-22 Manfred Hollstein <mh@suse.com>
* match.c (gfc_match_symbol): Fix uninitialised warnings.
last_con = con;
}
- /* We should never be overwriting an existing initializer. */
- gcc_assert (!init);
+ if (last_ts->type == BT_CHARACTER)
+ expr = create_character_intializer (init, last_ts, NULL, rvalue);
+ else
+ {
+ /* We should never be overwriting an existing initializer. */
+ gcc_assert (!init);
- expr = gfc_copy_expr (rvalue);
- if (!gfc_compare_types (&lvalue->ts, &expr->ts))
- gfc_convert_type (expr, &lvalue->ts, 0);
+ expr = gfc_copy_expr (rvalue);
+ if (!gfc_compare_types (&lvalue->ts, &expr->ts))
+ gfc_convert_type (expr, &lvalue->ts, 0);
+ }
if (last_con == NULL)
symbol->value = expr;