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