------- Comment #1 from mikael at gcc dot gnu dot org  2009-01-24 20:36 -------
Confirmed.

  myfortran_error(1:1) = chararr(1)

gfc_match_rvalue can't find a proper substring reference for chararr. 
Thus as  chararr's flavor is FL_UNKNOWN, gfc_match_rvalue tries to guess its
type
and after some tests defaults to a function call. Then, as chararr is
registered as a function it fails in the middle end when trying to convert a
pointer type to a function type.

This is not a regression as the link error from 4.3 tells us (I think) that
chararr went through the middle-end as a function. 

I think the correct syntax is:
  myfortran_error(1:1) = chararr(1:1)


-- 

mikael at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|UNCONFIRMED                 |NEW
     Ever Confirmed|0                           |1
           Keywords|                            |ice-on-invalid-code
      Known to fail|                            |4.3.2 4.4.0
   Last reconfirmed|0000-00-00 00:00:00         |2009-01-24 20:36:57
               date|                            |


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

Reply via email to