re PR fortran/20059 (internal compiler error: Segmentation Fault - For common blocks)

fortran/
	PR fortran/20059
	* trans-common.c (translate_common): Cast offset and
	common_segment->offset to type int for warning message.
testsuite/
	PR fortran/20059
	* gfortran.dg/common_5.f: New test.

From-SVN: r98660
This commit is contained in:
Tobias Schlüter 2005-04-24 15:51:39 +02:00 committed by Tobias Schlüter
parent 93cfbc5c7c
commit eb83e81102
4 changed files with 23 additions and 2 deletions

View File

@ -1,3 +1,9 @@
2005-04-24 Tobias Schl"uter <tobias.schlueter@physik.uni-muenchen.de>
PR fortran/20059
* trans-common.c (translate_common): Cast offset and
common_segment->offset to type int for warning message.
2005-04-23 DJ Delorie <dj@redhat.com>
* trans-decl.c: Adjust warning() callers.

View File

@ -848,7 +848,7 @@ translate_common (gfc_common_head *common, gfc_symbol *var_list)
requirements. Insert padding immediately before this
segment. */
gfc_warning ("Padding of %d bytes required before '%s' in "
"COMMON '%s' at %L", offset, s->sym->name,
"COMMON '%s' at %L", (int)offset, s->sym->name,
common->name, &common->where);
}
else
@ -874,7 +874,7 @@ translate_common (gfc_common_head *common, gfc_symbol *var_list)
if (common_segment->offset != 0)
{
gfc_warning ("COMMON '%s' at %L requires %d bytes of padding at start",
common->name, &common->where, common_segment->offset);
common->name, &common->where, (int)common_segment->offset);
}
create_common (common, common_segment, saw_equiv);

View File

@ -1,3 +1,8 @@
2005-04-24 Tobias Schl"uter <tobias.schlueter@physik.uni-muenchen.de>
PR fortran/20059
* gfortran.dg/common_5.f: New test.
2005-04-23 Richard Guenther <rguenth@gcc.gnu.org>
PR middle-end/21082

View File

@ -0,0 +1,10 @@
C { dg-do compile }
C PR 20059
C Check that the warning for padding works correctly.
SUBROUTINE PLOTZ
IMPLICIT DOUBLE PRECISION (A-H,O-Z)
COMMON /CCPOOL/ RMIN,RMAX,ZMIN,ZMAX,IMIN,JMIN,IMAX,JMAX,NFLOP, ! { dg-warning "Padding" }
$ HTP
C
RETURN
END