Subject: [Boost-bugs] [Boost C++ Libraries] #4304: [karma] uint_ doesn't compile with STLPort
From: Boost C++ Libraries (noreply_at_[hidden])
Date: 2010-06-06 14:25:01
#4304: [karma] uint_ doesn't compile with STLPort
----------------------------------+-----------------------------------------
Reporter: andysem | Owner: djowel
Type: Bugs | Status: new
Milestone: Boost 1.44.0 | Component: spirit
Version: Boost Release Branch | Severity: Problem
Keywords: |
----------------------------------+-----------------------------------------
I get the following error:
{{{
./boost/spirit/home/karma/numeric/uint.hpp:239: error: â!
stlp_std::priv::_Integer_limits<unsigned int, 0u, 4294967295u,
-0x00000000000000001, true>::is_signedâ is not a valid template argument
for type âboolâ because it is a non-constant expression
./boost/spirit/home/karma/numeric/uint.hpp:239: error: no matching
function for call to âassertion_failed(mpl_::failed************
(boost::spirit::karma::any_uint_generator<unsigned int,
boost::fusion::unused_type, boost::fusion::unused_type,
10u>::signed_unsigned_mismatch::************)())â
}}}
The problem appears because operator! is used in context of a constant
expression. While technically this is correct, it seems to confuse GCC.
The attached patch solves the problem.
PS: GCC 4.4.1, STLPort 5.2.1.
-- Ticket URL: <https://svn.boost.org/trac/boost/ticket/4304> 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:03 UTC