Subject: Re: [Boost-bugs] [Boost C++ Libraries] #6975: lexical_cast<double> produces different answers with 53-bit FPU precision
From: Boost C++ Libraries (noreply_at_[hidden])
Date: 2012-07-24 18:12:05
#6975: lexical_cast<double> produces different answers with 53-bit FPU precision
------------------------------------------------------------+---------------
Reporter: Jonathan Jones <jonathan.jones@â¦> | Owner: apolukhin
Type: Support Requests | Status: assigned
Milestone: To Be Determined | Component: lexical_cast
Version: Boost 1.49.0 | Severity: Cosmetic
Resolution: | Keywords:
------------------------------------------------------------+---------------
Changes (by apolukhin):
* status: new => assigned
* type: Bugs => Support Requests
* severity: Problem => Cosmetic
Comment:
This issue won't be fixed in nearest future (it shall be fixed in ticket
#5660)
When casting to doubles, lexical_cast uses long doubles for getting better
precision and assumes that long doubles precision set to 64 (default).
But even with 53bit precision result is accurate enougth, so this bug is
not critical.
By the way: you shall not compare floats using == and != operatos.
See http://www.parashift.com/c++-faq-lite/floating-point-arith.html
-- Ticket URL: <https://svn.boost.org/trac/boost/ticket/6975#comment:1> 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:10 UTC