[Boost-bugs] [Boost C++ Libraries] #2513: rint not present in Visual Studio 2008

Subject: [Boost-bugs] [Boost C++ Libraries] #2513: rint not present in Visual Studio 2008
From: Boost C++ Libraries (noreply_at_[hidden])
Date: 2008-11-19 09:23:41


#2513: rint not present in Visual Studio 2008
--------------------------------------------+-------------------------------
 Reporter: stephan.puchegger_at_[hidden] | Owner: bgubenko
     Type: Bugs | Status: new
Milestone: Boost 1.38.0 | Component: interval
  Version: Boost 1.37.0 | Severity: Showstopper
 Keywords: |
--------------------------------------------+-------------------------------
 The function rint is not present in the libraries of Visual Studio 2008.

 I propose, that line 28 in msvc_rounding_control.hpp

 extern "C" { double rint(double); }

 is replaced with John Maddock's workaround from the boost-users mailing
 list:

 #if BOOST_MSVC < 1400
 extern "C" { double rint(double); }
 #else
 inline double rint(double x)
 {
 _asm FLD [x] ;
 _asm FRNDINT ;
 //_asm RET ;
 }
 #endif

 since certain constructs simply do not link right now (the linker
 complains that the function rint is missing).

-- 
Ticket URL: <https://svn.boost.org/trac/boost/ticket/2513>
Boost C++ Libraries <http://www.boost.org/>
Boost provides free peer-reviewed portable C++ source libraries.

This archive was generated by hypermail 2.1.7 : 2017-02-16 18:49:59 UTC