--- Comment #7 from fxcoudert at gcc dot gnu dot org 2007-08-11 21:53
---
Fixed.
--
fxcoudert at gcc dot gnu dot org changed:
What|Removed |Added
Status|ASSI
--- Comment #6 from fxcoudert at gcc dot gnu dot org 2007-08-11 21:31
---
Subject: Bug 32937
Author: fxcoudert
Date: Sat Aug 11 21:31:35 2007
New Revision: 127363
URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=127363
Log:
PR fortran/32937
* trans-array.c (gfc_c
--- Comment #5 from fxcoudert at gcc dot gnu dot org 2007-08-11 11:17
---
Hurray! It's been my wildest gdb session since a very long time (two sessions
of two hours each), but I've made it at last! My analysis in the previous
comment was right, we are generating a charlen's backend_decl
--- Comment #4 from fxcoudert at gcc dot gnu dot org 2007-08-10 15:31
---
The problem with integer kind is from the string length:
character(2_8) :: c(2)
integer :: i
c = "aa"
print *, c .eq. "aa"
call foo ((/(c(i), i = 1,2)/))
print *, c .eq. "aa"
contains
subroutine f
--- Comment #3 from fxcoudert at gcc dot gnu dot org 2007-08-10 12:34
---
The further I can reduce this is:
$ cat u.f90
character(2) :: c(2)
integer(kind=4) :: i
c = "aa"
call foo ((/(c(i), i = 1_4,2_4)/))
print *, c .eq. "aa"
contains
subroutine foo (c)
character(*),
--- Comment #2 from fxcoudert at gcc dot gnu dot org 2007-08-08 15:26
---
Confirmed on x86_64-linux with -m32.
--
fxcoudert at gcc dot gnu dot org changed:
What|Removed |Added
---
--- Comment #1 from dominiq at lps dot ens dot fr 2007-07-30 20:24 ---
> The problem appears to be that the first argument to gfortani_compare_string
> is pushed as an 8-byte integer, which messes things up.
The test passes for me with -m64, without it the backtrace is (on Darwin8):
Ho