[Bug fortran/67939] New: ICE on using data with negative substring range
gerhard.steinmetz.fortran@t-online.de
gcc-bugzilla@gcc.gnu.org
Mon Oct 12 16:44:00 GMT 2015
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=67939
Bug ID: 67939
Summary: ICE on using data with negative substring range
Product: gcc
Version: 5.2.1
Status: UNCONFIRMED
Severity: normal
Priority: P3
Component: fortran
Assignee: unassigned at gcc dot gnu.org
Reporter: gerhard.steinmetz.fortran@t-online.de
Target Milestone: ---
Depending on compiler options the following codes
show different reactions (sometimes with hanging process).
Depending on environment settings too (e.g. $LANG, $LC_ALL).
All suffer from a negative substring-range (length < -1).
$ cat z1.f90
program p
character(100) :: x
data x(998:99) /'ab'/
end
$ cat z2.f90
program p
character(2) :: x
data x(:-1) /'ab'/
end
$ gfortran -c z1.f90
z1.f90:3:20:
data x(998:99) /'ab'/
1
Warning: Initialization string starting at (1) was truncated to fit the
variable (-898/2)
f951: internal compiler error: Segmentation fault
$ gfortran -c z2.f90
z2.f90:3:17:
data x(:-1) /'ab'/
1
Warning: Initialization string starting at (1) was truncated to fit the
variable (-1/2)
*** Error in `/usr/lib64/gcc/x86_64-suse-linux/5/f951': malloc(): memory
corruption (fast): 0x0000000001c03420 ***
$ gfortran -g -O0 -Wall -fcheck=all -fno-frontend-optimize -c z2.f90
z2.f90:3:17:
data x(:-1) /'ab'/
1
Warning: Initialization string starting at (1) was truncated to fit the
variable (-1/2)
*** Error in `/usr/lib64/gcc/x86_64-suse-linux/5/f951': corrupted double-linked
list: 0x00000000036d5db0 ***
More information about the Gcc-bugs
mailing list