Some questions about gfortran.

Julien Lancien calexicoz@gmail.com
Thu Jun 23 21:23:00 GMT 2005


Hi everyone.

I'm pretty new to fortran, and I've got some questions I found no answer to.

When compiling with gfortran, I found that I cannot do the following things :

* cross reference types , ie :

type a
  type(b), pointer :: b
end type a

type b
  type(a), pointer :: a
end type a

* using function result as argument, ie

   test = associated(getpointer(p))

   This will end up with :

      Internal Error at (1):
      gfc_variable_attr(): Expression isn't a variable

   Whereas doing that works :

   tmp => getpointer(p)
   test = associated(tmp)
  
   Note : the getpointer function is defined in a module, which is
called at the beginning using : use modulename

I'm unsure if I cannot do these things because they are not part of
the fortran 90 standards, or if this is because gfortran does not
support them yet.

I had no problem doing that with the portland group compiler, but
maybe it's just more permissive.

Anyone can help me on this ?


Thanks.



More information about the Fortran mailing list