BUG: LNK2001 When Building Applications for MIPS Palm-size PC That Use Float Comparisons

ID: Q222005


The information in this article applies to:


SYMPTOMS

Building a MIPS-based Palm-size PC application that uses floating-point comparisons may generate errors similar to the following:

project.obj : error LNK2001: unresolved external symbol __ltd
project.obj : error LNK2001: unresolved external symbol __gtd
project.obj : error LNK2001: unresolved external symbol __eqd


CAUSE

The new version of the MIPS compiler for the Palm-size PC incorrectly makes calls to floating-point comparison functions in later versions of the Windows CE C run time.


RESOLUTION

Use the /QMOC switch to call the earlier versions of the Windows CE floating-point comparison functions.


STATUS

Microsoft has confirmed this to be a bug in the Microsoft products listed at the beginning of this article.


MORE INFORMATION

Steps to Reproduce Behavior

The following code fragment generates the errors listed in the SYMPTOMS section:


    double  a, b;

    if ( a < b ) return -1;
    if ( a > b ) return 1;
    if ( a==b ) return 0; 

Additional query words: kbWinCE201


Keywords          : kbCompiler kbMFC kbMIPS kbVC600bug 
Version           : WINDOWS:6.0
Platform          : WINDOWS 
Issue type        : kbbug 

Last Reviewed: March 27, 1999