Re: [boost] [Boost C++ Libraries] #1408: Missing includes and other compilation errors

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@users.sf.net | 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

Jens Seidel wrote:
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 ...
Odd.
There is another error I could not fix: xpressive/proto/transform/construct.hpp: error: default arguments are only permitted for function parameters
Thanks for the repro. This was due to a missing #include. All of the problems you spotted are now fixed. Thanks for the report! -- Eric Niebler Boost Consulting www.boost-consulting.com
participants (2)
-
Eric Niebler
-
Jens Seidel