(Motivated but independent from
http://groups.google.com/group/comp.lang.fortran/browse_thread/thread/817234ccd2b3ae1b#)

The following program is rejected in gfortran until one adds a component. I
agree that it is not particularly useful but I think it is standard conform.

In any case the error message is bogus:


type(t) function foo()
1
Error: The type for function 'foo' at (1) is not accessible


module m
 type t
 end type t
end module

type(t) function foo()
  use m
  foo = t()
end function foo


-- 
           Summary: Empty derived-type wrongly rejected as function return
                    type
           Product: gcc
           Version: 4.5.0
            Status: UNCONFIRMED
          Keywords: rejects-valid
          Severity: normal
          Priority: P3
         Component: fortran
        AssignedTo: unassigned at gcc dot gnu dot org
        ReportedBy: burnus at gcc dot gnu dot org


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

Reply via email to