OSDN Git Service

Fix MinGW-Bug [2160227]: Eliminate conflicting declarations and implementations of...
authorkeithmarshall <keithmarshall>
Mon, 13 Oct 2008 22:47:58 +0000 (22:47 +0000)
committerkeithmarshall <keithmarshall>
Mon, 13 Oct 2008 22:47:58 +0000 (22:47 +0000)
winsup/mingw/ChangeLog
winsup/mingw/include/math.h
winsup/mingw/moldname.def.in

index beb934b..aa09e8f 100644 (file)
@@ -1,3 +1,12 @@
+2008-10-13  Keith Marshall  <keithmarshall@users.sourceforge.net>
+
+       Fix MinGW-Bug [2160227]
+       Eliminate conflicting declarations and implementations of scalb().
+
+       * moldname.def.in (scalb): Comment out of EXPORTS list.
+       * include/math.h (scalb): Comment out OLDNAMES prototype; it conflicts
+       with GCC's built-in declaration.
+
 2008-10-12  Christopher Faylor  <me+cygwin@cgf.cx>
 
        * Makefile.in: Use a different method to invoke gcc in a cygwin-hosted
index abe899e..0577d0c 100644 (file)
@@ -259,7 +259,14 @@ _CRTIMP double __cdecl y1 (double);
 _CRTIMP double __cdecl yn (int, double);
 
 _CRTIMP double __cdecl chgsign (double);
+/*
+ * scalb() is a GCC built-in.
+ * Exclude this _scalb() stub; the semantics are incompatible
+ * with the built-in implementation.
+ *
 _CRTIMP double __cdecl scalb (double, long);
+ *
+ */
 _CRTIMP int __cdecl finite (double);
 _CRTIMP int __cdecl fpclass (double);
 
index 9480f6d..b8bae6b 100644 (file)
@@ -141,7 +141,10 @@ y0
 y1
 yn
 chgsign
-scalb
+; omit scalb...
+; it would conflict with the GCC built-in, which exhibits
+; semantics differing from the MSVCRT implementation.
+;scalb
 finite
 fpclass
 ; C99 functions