(j3.2006) Alternative binding label without C interoperability?

Cohen Malcolm malcolm
Fri Sep 30 01:13:51 EDT 2016


It will already put a lot fewer restrictions on the dummy arguments in F2015 
than in F2008.

Given that what one is doing is low-level hackery (sure it might be 
emulating something higher-level, but it's still doing it by low-level C 
hackery), it is not unreasonable to say that using C interop is the correct 
way to interoperate with what are in fact C routines!

(For Tom's example with 2 arguments, the ugliness would appear to be quite 
minor.)

Cheers,

-----Original Message----- 
From: Van Snyder
Sent: Friday, September 30, 2016 10:32 AM
To: j3 at mailman.j3-fortran.org
Subject: Re: (j3.2006) Alternative binding label without C interoperability?

On Fri, 2016-09-30 at 09:41 +0900, Cohen Malcolm wrote:
> Just use BIND(C,NAME=...).  Then you know the name you need to pass to
> the dynamic loading routines.

I think Tom's original proposal was to allow BIND(NAME=...) or
BIND(Fortran,NAME=...) to give a specific non-mangled global name to a
Fortran procedure (module or external), because BIND(C,NAME=...) puts
too many restrictions on the dummy arguments.  Sure, you can get around
them using C_PTR, C_LOC,... but that's ugly.


_______________________________________________
J3 mailing list
J3 at mailman.j3-fortran.org
http://mailman.j3-fortran.org/mailman/listinfo/j3

________________________________________________________________________
This e-mail has been scanned for all viruses by Star.
________________________________________________________________________

-- 
........................Malcolm Cohen, Nihon NAG, Tokyo. 




More information about the J3 mailing list