------- Comment #2 from dfranke at gcc dot gnu dot org  2008-03-16 15:55 -------
> function func2()
>   type(bar) func2
>   allocate(func1%baz(1))
> end function

In primary.c(match_variable), case FL_PROCEDURE, we here have a function that
satisfies the first if-clause, but does not trigger the second. Hence,
code-flow squirrels down to the handling of variables, instead of bailing out
with an not-a-variable error.

Btw, if func1 is defined with a RESULT variable instead, we produce the
expected error ^^


-- 

dfranke at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
         AssignedTo|unassigned at gcc dot gnu   |dfranke at gcc dot gnu dot
                   |dot org                     |org
             Status|NEW                         |ASSIGNED
   Last reconfirmed|2008-01-16 20:36:53         |2008-03-16 15:55:37
               date|                            |


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

Reply via email to