ISO C Bindings of Fortran 2003
- Implementation of the BIND(C) functionality from the Fortran 2003 standard, which provides a standard way of linking Fortran code with code that uses C bindings, as well as some other useful features. This feature - implemented by Christopher D. Rickett - was checked in July 2, 2007.
Real World Examples
Fortran Interface to pthreads; fails currently due to Bind-C-unrelated IMPORT problems (PR31154).
Car-Parinello 2000 (CP2k) using the libint library (fail currently due to missing procedure pointer support C_F_PROCPOINTER see SoC projects])
Fortran bindings for the GNU Scientific Library (GSL) (See PR32627)
dlfcn needs procedure pointers & abstract interfaces (see see SoC projects])
Notes, bugs, missing features
See also Bugzilla.
Procedual pointers (these are not part of the ISO C Binding, but a general Fortran 2003 feature; they are however a prerequirement for C_F_PROCPOINTER()) (SoC project for gfortran 4.3)
ISO_C_BINDING's C_INT_FAST8_T, *16*, *32*,*64* are missing (-2 instead of an existing kind). (Depends on PR448.)