Opened 9 years ago
Closed 20 months ago
#8778 closed Bugs (wontfix)
Building boost.log fails due to failure in date_time_format_parser
Reported by: | Owned by: | Hartmut Kaiser | |
---|---|---|---|
Milestone: | To Be Determined | Component: | spirit |
Version: | Boost 1.54.0 | Severity: | Problem |
Keywords: | Cc: | Andrey.Semashev@… |
Description
When building boost.Log in current cygwin it fails due to an error in date_time_format_parser.cpp (see attached log file)
Attachments (1)
Change History (4)
by , 9 years ago
Attachment: | build_log.log added |
---|
comment:1 by , 9 years ago
Component: | Building Boost → log |
---|---|
Owner: | set to |
comment:2 by , 9 years ago
Cc: | added |
---|---|
Component: | log → spirit |
Owner: | changed from | to
I think the problem is in Boost.Spirit.Karma. Boost.Log uses karma::uint_generator< uint32_t >, but somehow absolute_value< long double > gets instantiated. Apparently, Boost.Math doesn't support long double on Cygwin (and defines BOOST_MATH_NO_LONG_DOUBLE_MATH_FUNCTIONS, which should be checked for by Boost.Spirit), which results in the build failure.
I think, preliminary fix would be checking for BOOST_MATH_NO_LONG_DOUBLE_MATH_FUNCTIONS in Bost.Spirit and fallback to the generic code based on fabs. But it is not clear to me why absolute_value< long double > is used in the first place. Maybe this is a sign of a deeper problem. I'm reassigning this ticket to Boost.Spirit.
comment:3 by , 20 months ago
Resolution: | → wontfix |
---|---|
Status: | new → closed |
since #648 https://github.com/boostorg/spirit/pull/648 (will be in boost-1.76) we no longer use Boost.Math
Build log