Search the FAQ Archives

3 - A - B - C - D - E - F - G - H - I - J - K - L - M
N - O - P - Q - R - S - T - U - V - W - X - Y - Z
faqs.org - Internet FAQ Archives

comp.os.msdos.programmer FAQ part 2/5
Section - - Why did my program bomb at run time with 'floating point formats not linked' or 'floating point not loaded'?

( Part1 - Part2 - Part3 - Part4 - Part5 - Single Page )
[ Usenet FAQs | Web FAQs | Documents | RFC Index | Cities ]


Top Document: comp.os.msdos.programmer FAQ part 2/5
Previous Document: - Will Borland C code and Microsoft C code link together?
Next Document: - How can I change the stack size in Borland's C compilers?
See reader questions & answers on this topic! - Help others by sharing your knowledge
Date: 5 Feb 2002 22:03:03 -0400

 These messages look similar but have very different causes.

 "Floating point not loaded" is Microsoft C's run-time message when the
 code requires a numeric coprocessor but your computer doesn't have one
 installed. If the program is yours, relink it using the xLIBCE or xLIBCA
 library (where x is the memory model).

 "Floating point formats not linked" is a Borland run-time error (Borland
 C or C++, Turbo C or C++). Borland's compilers try to be smart and not
 link in the floating- point (f-p) library unless you need it. Alas, they
 all get the decision wrong. One common case is where you don't call any
 f-p functions, but you have %f or other f-p formats in scanf() or
 printf() calls. The cure is to call an f-p function, or at least force
 one to be present in the link.

 To do that, define this function somewhere in a source file but don't
 call it:

   static void forcefloat(float *p)
   {
     float f = *p;
     forcefloat(&f);
   }

 It doesn't have to be in the module with the main program, as long as
 it's in a module that will be included in the link.

 If you have Borland C++ 3.0, the README file documents a slightly less
 ugly work-around. Insert these statements in your program:

   extern unsigned _floatconvert;
   #pragma extref _floatconvert

User Contributions:

Comment about this article, ask questions, or add new information about this topic:




Top Document: comp.os.msdos.programmer FAQ part 2/5
Previous Document: - Will Borland C code and Microsoft C code link together?
Next Document: - How can I change the stack size in Borland's C compilers?

Part1 - Part2 - Part3 - Part4 - Part5 - Single Page

[ Usenet FAQs | Web FAQs | Documents | RFC Index ]

Send corrections/additions to the FAQ Maintainer:
jeffrey@carlyle.org (Jeffrey Carlyle)





Last Update March 27 2014 @ 02:11 PM