------- Additional Comments From tobi at gcc dot gnu dot org 2004-12-27 17:37
-------
I confirmed that glibc's error is indeed issued when running this testcase.
gdb's output:
(gdb) bt
#0 0x003f07a2 in _dl_sysinfo_int80 () from /lib/ld-linux.so.2
#1 0x00138955 in raise () from /lib/tls/libc.so.6
#2 0x0013a319 in abort () from /lib/tls/libc.so.6
#3 0x0016bf9a in __libc_message () from /lib/tls/libc.so.6
#4 0x00172528 in _int_free () from /lib/tls/libc.so.6
#5 0x00172afa in free () from /lib/tls/libc.so.6
#6 0x00824762 in *_gfortrani_internal_free (mem=0x87e2278)
at ../../../gcc-clean/libgfortran/runtime/memory.c:203
#7 0x08048a8d in MAIN__ () at forall_3.f90:28
#8 0x08048c73 in main (argc=0, argv=0x0)
at ../../../gcc-clean/libgfortran/fmain.c:18
(gdb) frame 7
#7 0x08048a8d in MAIN__ () at forall_3.f90:28
28 forall (i=1:5,v(i)%valid)
(gdb) l
23 v(2)%p(:) = (/1, 2, 3, 4, 5, 6, 7, 8/)
24 v(4)%p(:) = (/13, 14, 15, 16, 17, 18, 19, 20/)
25 v(5)%p(:) = (/11, 12/)
26
27
28 forall (i=1:5,v(i)%valid)
29 v(i)%p(1:v(i)%s) = v(6-i)%p(1:v(i)%s)
30 end forall
31
32 if (any(v(1)%p(:) .ne. (/11, 10/))) call abort
(gdb)
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=15080