------- Comment #3 from tkoenig at gcc dot gnu dot org 2008-01-20 10:48 ------- This is a regression vs. g77:
$ cat foo.f program chkdata character*20 string(4) data ( string(i) ,i=1,5 ) /'A', 'B', 'C', 'D', 'E' / write(*,*) string end $ g77 foo.f foo.f: In program `chkdata': foo.f:3: data ( string(i) ,i=1,5 ) /'A', 'B', 'C', 'D', 'E' / ^ Attempt to specify second initial value for `string' at (^) $ cat bar.f program chkdata character*20 string(4) data ( string(i) ,i=-3,1 ) /'A', 'B', 'C', 'D', 'E' / write(*,*) string end $ g77 bar.f Array subscript #1 out of range for initialization of `string' in statement at (1) Array subscript #1 out of range for initialization of `string' in statement at (1) bar.f: In program `chkdata': bar.f:3: data ( string(i) ,i=-3,1 ) /'A', 'B', 'C', 'D', 'E' / ^ Attempt to specify second initial value for element of `string' at (^) Array subscript #1 out of range for initialization of `string' in statement at (1) bar.f:3: data ( string(i) ,i=-3,1 ) /'A', 'B', 'C', 'D', 'E' / ^ Attempt to specify second initial value for element of `string' at (^) Array subscript #1 out of range for initialization of `string' in statement at (1) bar.f:3: data ( string(i) ,i=-3,1 ) /'A', 'B', 'C', 'D', 'E' / ^ Attempt to specify second initial value for element of `string' at (^) bar.f:3: data ( string(i) ,i=-3,1 ) /'A', 'B', 'C', 'D', 'E' / ^ Attempt to specify second initial value for element of `string' at (^) $ -- tkoenig at gcc dot gnu dot org changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |tkoenig at gcc dot gnu dot | |org Summary|DATA with implied-do: Bounds|DATA with implied-do: Bounds |checks missing |checks missing [regression | |vs. g77] http://gcc.gnu.org/bugzilla/show_bug.cgi?id=32315