ruby-changes:19321
From: nobu <ko1@a...>
Date: Wed, 27 Apr 2011 01:14:34 +0900 (JST)
Subject: [ruby-changes:19321] Ruby:r31361 (trunk): * include/ruby/win32.h (frexp, modf): fix suppressing warnings on
nobu 2011-04-27 01:14:26 +0900 (Wed, 27 Apr 2011) New Revision: 31361 http://svn.ruby-lang.org/cgi-bin/viewvc.cgi?view=rev&revision=31361 Log: * include/ruby/win32.h (frexp, modf): fix suppressing warnings on mingw. Modified files: trunk/include/ruby/win32.h Index: include/ruby/win32.h =================================================================== --- include/ruby/win32.h (revision 31360) +++ include/ruby/win32.h (revision 31361) @@ -718,14 +718,16 @@ #ifdef __MINGW_ATTRIB_PURE /* get rid of bugs in math.h of mingw */ #define frexp(_X, _Y) __extension__ ({\ - int *intptr_frexp_bug = (_Y);\ - *intptr_frexp_bug = *intptr_frexp_bug;\ - frexp((_X), intptr_frexp_bug);\ + int intpart_frexp_bug = intpart_frexp_bug;\ + double result_frexp_bug = frexp((_X), &intpart_frexp_bug);\ + *(_Y) = intpart_frexp_bug;\ + result_frexp_bug;\ }) #define modf(_X, _Y) __extension__ ({\ - double *intptr_modf_bug = (_Y);\ - *intptr_modf_bug = *intptr_modf_bug;\ - modf((_X), intptr_modf_bug);\ + double intpart_modf_bug = intpart_modf_bug;\ + double result_modf_bug = modf((_X), &intpart_modf_bug);\ + *(_Y) = intpart_modf_bug;\ + result_modf_bug;\ }) #endif -- ML: ruby-changes@q... Info: http://www.atdot.net/~ko1/quickml/