--- Comment #13 from jakub at gcc dot gnu dot org 2009-05-14 06:45 ---
Fixed.
--
jakub at gcc dot gnu dot org changed:
What|Removed |Added
Status|NEW
--- Comment #12 from jakub at gcc dot gnu dot org 2009-05-14 00:00 ---
Subject: Bug 39865
Author: jakub
Date: Thu May 14 00:00:27 2009
New Revision: 147507
URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=147507
Log:
PR fortran/39865
* io.c (resolve_tag_format): CH
--- Comment #11 from jakub at gcc dot gnu dot org 2009-05-12 13:19 ---
Partial fix:
http://gcc.gnu.org/ml/gcc-patches/2009-05/msg00637.html
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39865
--- Comment #10 from jakub at gcc dot gnu dot org 2009-05-11 17:30 ---
Testcase:
subroutine f1 (a)
character(len=1) :: a(7:)
character(len=12) :: b
character(len=1) :: c(2:10)
write (b, a) 'Hell', 'o wo', 'rld!'
if (b .ne. 'Hello world!') call abort
write (b, a(:)) 'Hell', '
--- Comment #9 from burnus at gcc dot gnu dot org 2009-04-23 17:33 ---
Paul, this PR might interest you - esp. as you have most experience in that
part of the compiler. (If you are/feel swamped, feel free to de-CC yourself.)
--
burnus at gcc dot gnu dot org changed:
What
--- Comment #8 from jakub at gcc dot gnu dot org 2009-04-23 14:51 ---
A different testcase that segfaults even a little bit earlier:
subroutine test()
interface
function f()
character(len=1) :: f(5)
end function f
end interface
write (*, f()) 1
end subroutine test
He
--- Comment #7 from jakub at gcc dot gnu dot org 2009-04-23 14:19 ---
Well, gfc_convert_array_to_string seems to handle AR_FULL arrays correctly, but
probably just the other arrays does not.
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39865
--- Comment #6 from burnus at gcc dot gnu dot org 2009-04-23 13:57 ---
Shorter, but gives not an error message but simply segfaults. (By the way, for
all tests I tried, gfortran 4.1 to 4.4 crashes, i.e. it is no regression.)
Seemingly, no one had tried before to pass an array to the FMT
--- Comment #5 from jakub at gcc dot gnu dot org 2009-04-23 13:50 ---
subroutine test (v)
character(len=8) :: v(:)
write (*, v) 3
write (*, v(:)) 3
write (*, v(1:size (v))) 3
end subroutine test
ICEs too (on the second or third write stmt).
--
http://gcc.gnu.org/bugzilla/sh
--- Comment #4 from jakub at gcc dot gnu dot org 2009-04-23 13:33 ---
allocatable and target attributes aren't needed btw, the following ICEs as
well:
subroutine test (v1, v2, v3, v4)
integer :: v1(:)
character(len=8) :: v2(:)
integer :: v3, v4, v5
write (*,v2(1:v3)) (v1(i), v5=2
--- Comment #3 from jakub at gcc dot gnu dot org 2009-04-23 13:18 ---
Whether this is valid or not I have no idea.
Just bear in mind that this is a distilled compile time testcase, not intended
as runtime testcase, for runtime testcase obviously something would need to
allocate the alloc
--- Comment #2 from dominiq at lps dot ens dot fr 2009-04-23 13:07 ---
This may be a stupid question, but are the codes in comments #0 and #1 valid?
The allocatable variables are used without being allocated, isn't it?
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39865
--- Comment #1 from jakub at gcc dot gnu dot org 2009-04-23 12:47 ---
Actually, module isn't needed for the ICE:
subroutine test (v1, v2, v3, v4)
integer, target, allocatable :: v1(:)
character(len=8), target, allocatable :: v2(:)
integer :: v3, v4, v5
write (*,v2(1:v3)) (v1(i),
13 matches
Mail list logo