$include_dir="/home/hyper-archives/boost/include"; include("$include_dir/msg-header.inc") ?>
Subject: [boost] update to 1_38_0: "classic" spirit not working anymore
From: Oliver Kullmann (O.Kullmann_at_[hidden])
Date: 2009-02-12 17:05:44
Hi,
with 1_38_0 I can't get any code compiling related to spirit; all that worked
with 1_34_1.
According to those compiler warnings I'm using now the "classic" versions,
but this doesn't help. Consider
#include <boost/spirit/include/classic_core.hpp>
namespace OKlib {
namespace Parser {
template <typename CharT = char, typename ParseIterator_ = const CharT*>
class ParserBase {
public :
typedef CharT char_type;
typedef ParseIterator_ ParseIterator;
typedef boost::spirit::scanner<ParseIterator> scanner_type;
This used to work (with boost/spirit/core.hpp), but now I get the error message
(gcc version 4.1.2):
ParserBase.hpp:27: error: ISO C++ forbids declaration of âscannerâ with no type
ParserBase.hpp:27: error: typedef name may not be a nested-name-specifier
ParserBase.hpp:27: error: expected â;â before â<â token
where line 27 is the line where scanner_type is defined. ???
Did the definition of class template scanner change (apparently it now has two
parameters)?
Oliver