This is the mail archive of the fortran@gcc.gnu.org mailing list for the GNU Fortran project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: Gfortran and NetBSD 5


	Some seven thousand test cases fail on NetBSD 5 due
to "excessive" errors.  These errors are linker warnings.
The built-in calls to cabs and cabsf in f95_lang.c use the
compatibility interface.  On NetBSD-5, these function
should be linked to __c99_cabs and __c99_cabsf not cabs and
cabsf.
	How should this be handled?

Well, if you really want __bultin_cabs to refer to an external symbol that has a name other than "cabs", you can look at how it's done for darwin in gcc/config/darwin.c and gcc/config/darwin-ppc-ldouble- patch.def; look for the PATCH_BUILTIN* macros and the darwin_patch_builtin() function.


I hope for the sake of netbsd maintainability that you don't have too many such changes to perform (what about other C99 complex functions). I'm not an expert at reading standards, but the complex.h specification says "The following shall be declared as functions and may also be defined as macros. Function prototypes shall be provided." and "cabs, cabsf, cabsl - return a complex absolute value". Doesn't your cabs() function return a complex absolute value?

FX


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]