Hello,
From g77 (v3.4.3):
The f2c calling conventions require functions that return type
"REAL(KIND=1)" to actually return the C type "double", and func-
tions that return type "COMPLEX" to return the values via an extra
argument in the calling sequence that points to where to store the
return value.
However, because the "libg2c" library uses f2c calling conventions,
g77 rejects attempts to pass intrinsics implemented by routines in
this library as actual arguments when -fno-f2c is used, ....
Yes clearly if you use 'g77 -fno-f2c' with LAPACK you will be in troubles. Your bugs are clearly reproductible (in particular in your case: 64-bit x86 with a recent version of g77).
LAPACK uses some intrinsic functions. They are provided from libg2c. If you use the option -fno-f2c, it is
normal that you observe failure for the single precision arithmetic (since libg2c returns double without f2c) in 32-bit or 64-bit mode. However it is also normal that everything runs fine in double (with -fno-f2c ) in 32-bit or 64-bit mode. All this makes sense according to the documentation of g77.
Best to keep in mind:
Do not use 'g77 -fno-f2c' with LAPACKNote that a compiler flag `-fno-f2c' in `make.inc.LINUX' does not seem to be the cause of the problem since SuSE rpm script overrides this flag except for building of `libtmglib.a'.
you sure?
just try to recompile all those libraries (even tmglib.a) without -fno-f2c (i.e. you explicitly do not write -fno-f2c in the Makefile). Then your library should pass all the testings. The Netlib archive as well. (Although having the latest patch is recommended).
Julien (Thanks George

for the decryption of the g77 manual )