------- Comment #7 from tobi at gcc dot gnu dot org  2006-10-09 11:14 -------
(In reply to comment #6)
> please try the testcase in the orignal PR with idental string lengths. It will
> crash gfortran as well.

Works for me.  Please provide a testcase.
[EMAIL PROTECTED]:~/src/pr/29267> cat t.f90
! implicit character*32 (b-z)
  CHARACTER(len=255), DIMENSION(2)  :: a
  a = reshape((/ "12345678901234567890123456789012", to_string(1.0) /),
shape(a))
  print *, a
  CONTAINS
    CHARACTER(32) FUNCTION to_string(x)
      REAL, INTENT(in) :: x
      WRITE(to_string, FMT="(F6.3)") x
    END FUNCTION
END PROGRAM
[EMAIL PROTECTED]:~/src/pr/29267> ~/src/gcc/build/gcc/f951 t.f90
 MAIN__ to_string
Execution times (seconds)
 parser                :   0.01 (100%) usr   0.00 ( 0%) sys   0.01 (100%) wall 
   132 kB (18%) ggc
 TOTAL                 :   0.01             0.00             0.01              
 740 kB
Extra diagnostic checks enabled; compiler may run slowly.
Configure with --disable-checking to disable checks.
[EMAIL PROTECTED]:~/src/pr/29267> 

> so, why is an equivalent assignment through the array constructor invalid?

Because the standard says so, I already quoted the relevant part.


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=29267

Reply via email to