Boost logo

Boost :

From: Jens Seidel (jensseidel_at_[hidden])
Date: 2007-11-04 17:55:45


Hi Eric,

On Sun, Nov 04, 2007 at 02:43:41PM -0800, Eric Niebler wrote:
> Hi, Jens. Thanks for reporting these problems. I don't see a patch attached
> to the bug report. Did you forget?

no, I did not forget it. My attempt to attach it failed as it was
considered as spam. I thought this is true for the bug report itself not
just the attachment ...

I attached the patch to my message on the boost list and again to this mail.

> Boost C++ Libraries wrote:
>> #1408: Missing includes and other compilation errors
>> -------------------------------------+--------------------------------------
>> Reporter: jensseidel_at_[hidden] | Owner: eric_niebler
>> Type: Patches | Status: new
>> Milestone: Boost 1.35.0 | Component: xpressive
>> Version: Boost Development Trunk | Severity: Problem Keywords:
>> |
>> -------------------------------------+--------------------------------------
>>
>> First off all xpressive/proto/v1_/proto_fwd.hpp
>> includes a non existing header file and is completely unusable. All files
>> which include it are unusable as well.
>>
>
> Hmm, the v1_ folder is old code. I'll probably just remove it.

OK.

>> There is another error I could not fix:
>> xpressive/proto/transform/construct.hpp:
>> error: default arguments are only permitted for function parameters
>>
>
> I can't reproduce this error. Can you send me a test case, and also tell me
> what compiler and version you're using?

$ cat test.cpp
#include <boost/xpressive/proto/transform/construct.hpp>

int main() {}

$ g++ --version
g++ (GCC) 4.2.3 20071014 (prerelease) (Debian 4.2.2-3)

$ g++ -I .. -pedantic -Wall -W test.cpp
In file included from test.cpp:1:
../boost/xpressive/proto/transform/construct.hpp:93: error: expected nested-name-specifier before ‘Visitor’
../boost/xpressive/proto/transform/construct.hpp:95: error: expected ‘>’ before ‘BOOST_MPL_AUX_LAMBDA_ARITY_PARAM’
../boost/xpressive/proto/transform/construct.hpp:104: error: type/value mismatch at argument 4 in template parameter list for ‘template<class R, class Expr, class State, int Visitor> struct boost::proto::transform::detail::apply_aux_’
...

After changing typename Visitor into class Visitor in line 93:

In file included from test.cpp:1:
../boost/xpressive/proto/transform/construct.hpp:95: error: default arguments are only permitted for function parameters
../boost/xpressive/proto/transform/construct.hpp:104: error: type/value mismatch at argument 4 in template parameter list for ‘template<class R, class Expr, class State, boost::proto::transform::detail::Visitor (* BOOST_MPL_AUX_LAMBDA_ARITY_PARAM)(long int)> struct boost::proto::transform::detail::apply_aux_’
../boost/xpressive/proto/transform/construct.hpp:104: error: expected a constant of type ‘boost::proto::transform::detail::Visitor (*)(long int)’, got ‘Visitor’

Jens




Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk