Re: [Boost-bugs] [Boost C++ Libraries] #10924: conversion of float/double to cpp_dec_float_100 causes hang before main() on cygwin

Subject: Re: [Boost-bugs] [Boost C++ Libraries] #10924: conversion of float/double to cpp_dec_float_100 causes hang before main() on cygwin
From: Boost C++ Libraries (noreply_at_[hidden])
Date: 2015-02-06 18:38:01


#10924: conversion of float/double to cpp_dec_float_100 causes hang before main()
on cygwin
-------------------------------+-----------------------------------
  Reporter: anonymous | Owner: johnmaddock
      Type: Bugs | Status: closed
 Milestone: To Be Determined | Component: multiprecision
   Version: Boost 1.57.0 | Severity: Problem
Resolution: fixed | Keywords: cygwin multiprecision
-------------------------------+-----------------------------------
Changes (by johnmaddock):

 * status: new => closed
 * resolution: => fixed

Comment:

 Turns out this is quite a pervasive issue - if there are no long double
 math functions (as on cygwin) then a call such as:

 stdlibfunc(BIG_VALUE)

 may simply return infinity as BIG_VALUE gets silently converted to double
 inside "stdlibfunc". In this particular case it's frexp/ldexp that are
 basically returning nonsense and breaking the program invariants.

 Simplistic fix in
 https://github.com/boostorg/multiprecision/commit/4340817fd818b80df2295060eafdf79549d88683

-- 
Ticket URL: <https://svn.boost.org/trac/boost/ticket/10924#comment:3>
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:50:17 UTC