Some functions in math.h (like rint), are inlined in the math.h
header, but fail to compile with an error when used:

<output>

[EMAIL PROTECTED]:~/prjs/wince/cegcc/test/math_h_header$ cat main.c
#include <math.h>

int main( void )
{
    double i = rint( 3.14 );
    return 0;
}
[EMAIL PROTECTED]:~/prjs/wince/cegcc/test/math_h_header$ 
arm-wince-mingw32ce-gcc main.c
main.c: In function 'main':
/home/lucas/apps/mingw32ce/lib/gcc/arm-wince-mingw32ce/4.1.0/../../../../arm-wince-mingw32ce/include/math.h:638:
error: impossible constraint in 'asm'

</output>

The following patch tries to fix this:


--- math.h      2007-01-26 23:02:47.000000000 +0000
+++ math.h      2007-01-27 01:41:11.000000000 +0000
@@ -631,7 +631,7 @@

 /* Inline versions of above.
    GCC 4.0+ can do a better fast-math job with __builtins. */
-#if !(__MINGW_GNUC_PREREQ (4, 0) && defined __FAST_MATH__ )
+#if !defined(__MINGW32CE__) && !(__MINGW_GNUC_PREREQ (4, 0) &&
defined __FAST_MATH__ )
 __CRT_INLINE double __cdecl rint (double x)
 {
   double retval;


Regards,
~Nuno Lucas

-------------------------------------------------------------------------
Take Surveys. Earn Cash. Influence the Future of IT
Join SourceForge.net's Techsay panel and you'll get the chance to share your
opinions on IT & business topics through brief surveys - and earn cash
http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV
_______________________________________________
Cegcc-devel mailing list
Cegcc-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/cegcc-devel

Reply via email to