Re: Bug#389773: ITP: cnf -- library for C and Fortran mixed programming
Hi Enrico,
On 9/27/06, Enrico Zini <enrico@debian.org> wrote:
* Package name : cnf
[snip]
The CNF package comprises two sets of software which ease the task of
writing portable programs in a mixture of FORTRAN and C. F77 is a set of
C macros for handling the FORTRAN/C subroutine linkage in a portable
way, and CNF is a set of functions to handle the difference between
FORTRAN and C character strings, logical values and pointers to
dynamically allocated memory.
Wondering -- what does this do differently than cfortran? Note, I'm
*not* trying to imply that because cfortran is already in Debian, this
is redundant. Just asking out of curiosity in the hope I learn
something :-)
Does CNF/F77 have a way to deal with the different semantics of
functions returning REAL [*] in f2c and g77 as compared with gfortran?
(E.g., I hacked up cfortran.h to behave differently depending on
whether f2cFortran or gFortran macros are #defined.) By default, code
generated for REAL-returning functions by f2c and g77 returns C-style
"doubles", while that generated by gfortran returns C-style "floats".
For more info, see the g77 and gfortran info pages, specifically
documentation of the -ff2c and -fno-f2c compiler flags, and the
"Dropping f2c compatibility" section of the g77 info pages.
[*] Functions returning COMPLEX are also affected, but I wouldn't
expect much C code to try to interface with COMPLEX-returning Fortran
functions due to the additional, well, complexity of doing so.
best regards,
--
Kevin B. McCarty <kmccarty@princeton.edu> Physics Department
WWW: http://www.princeton.edu/~kmccarty/ Princeton University
GPG: public key ID 4F83C751 Princeton, NJ 08544
Reply to: