Commit 31f74acc by Jakub Jelinek Committed by Jakub Jelinek

re PR fortran/20063 (n*'xxxx' disables padding)

	PR fortran/20063
	* data.c (gfc_assign_data_value_range): Call
	create_character_initializer if last_ts is a character type.

	* gfortran.fortran-torture/execute/data_4.f90: New test.

From-SVN: r102349
parent 044ed7ec
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.
......
......@@ -459,12 +459,17 @@ gfc_assign_data_value_range (gfc_expr * lvalue, gfc_expr * rvalue,
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;
......
2005-07-25 Jakub Jelinek <jakub@redhat.com>
PR fortran/20063
* gfortran.fortran-torture/execute/data_4.f90: New test.
PR middle-end/20303
* gcc.dg/visibility-d.c: New test.
......
CHARACTER*4 A(3),B(3),C(3)
DATA A /'A',"A",'A'/
DATA B /3*'A'/
DATA C /'A', 2*'A'/
IF (ANY(A.NE.B).OR.ANY(A.NE.C)) CALL ABORT
END
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment