------- Comment #8 from burnus at gcc dot gnu dot org  2009-01-17 09:37 -------
> However, I just saw that due to missing argument checking the following works
> in gfortran 4.3:
>
> call c_f_funpointer(fun,bar) ! <<< Invalid; should be C_F_POINTER

That's actually nonsense. The procedure name is "C_F_PROCPOINTER" (-proc- not
-FUN-). (It's C_FUNLOC and type(c_funptr) but c_f_procpointer). There is no
argument checking, but the library function called is

   __iso_c_binding_c_f_procpointer_i4  ! note extra _i4.

(which does not exist). I don't see how one could get rid of the _<datatype>
and thus I maintain what I wrote before: It is not possible from gfortran to
access that procedure, except by calling "__iso_c_binding_c_f_procpointer".


-- 


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

Reply via email to