Boost logo

Boost Users :

Subject: [Boost-users] BUG? Spirit Grammar_def
From: Leandro Santos de Lima (leandro.stlima_at_[hidden])
Date: 2009-08-21 09:43:06


I'm trying to migrate my code from VSC++ 6 to VSC++ 2008 express edition and
from Intel compiler to Microsoft compiler. Everything were easy to migrate
except that I'm receiving this errors now:

> 1>------ Build started: Project: Base, Configuration: Debug Win32 ------

1>Compiling...

1>DefaultScriptReader.cpp

1>Warning: This header is deprecated. Please use:
> boost/spirit/include/classic.hpp

1>Warning: This header is deprecated. Please use:
> boost/spirit/include/classic_dynamic.hpp

 1>c:\Desenvolvimento\dff_dependencies_windows\include\boost/spirit/home/classic/dynamic/lazy.hpp(33)
> : error C2143: syntax error : missing ';' before '<'

 1>
> c:\Desenvolvimento\dff_dependencies_windows\include\boost/spirit/home/classic/dynamic/lazy.hpp(53)
> : see reference to class template instantiation
> 'boost::spirit::lazy_parser<ActorT>' being compiled

 1>c:\Desenvolvimento\dff_dependencies_windows\include\boost/spirit/home/classic/dynamic/lazy.hpp(33)
> : error C4430: missing type specifier - int assumed. Note: C++ does not
> support default-int

 1>c:\Desenvolvimento\dff_dependencies_windows\include\boost/spirit/home/classic/dynamic/lazy.hpp(34)
> : error C2238: unexpected token(s) preceding ';'

 1>c:\Desenvolvimento\dff_dependencies_windows\include\boost/spirit/home/classic/dynamic/lazy.hpp(40)
> : error C2065: 'actor_result_t' : undeclared identifier

 1>
> c:\Desenvolvimento\dff_dependencies_windows\include\boost/spirit/home/classic/dynamic/lazy.hpp(42)
> : see reference to class template instantiation
> 'boost::spirit::lazy_parser<ActorT>::result<ScannerT>' being compiled

 1>Warning: This header is deprecated. Please use:
> boost/spirit/include/phoenix1.hpp

1>Warning: This header is deprecated. Please use:
> boost/spirit/include/classic_grammar_def.hpp

 1>c:\Desenvolvimento\dff_dependencies_windows\include\boost/spirit/home/classic/utility/grammar_def.hpp(104)
> : error C2039: 'nil_t' : is not a member of 'boost::phoenix'

 1>c:\Desenvolvimento\dff_dependencies_windows\include\boost/spirit/home/classic/utility/grammar_def.hpp(112)
> : error C2039: 'nil_t' : is not a member of 'boost::phoenix'

 1>c:\Desenvolvimento\dff_dependencies_windows\include\boost/spirit/home/classic/utility/grammar_def.hpp(180)
> : error C2143: syntax error : missing ';' before '<'

 1>
> c:\Desenvolvimento\dff_dependencies_windows\include\boost/spirit/home/classic/utility/grammar_def.hpp(299)
> : see reference to class template instantiation
> 'boost::spirit::grammar_def<T,T0,T1,T2,T3,T4,T5,T6,T7>' being compiled

 1>c:\Desenvolvimento\dff_dependencies_windows\include\boost/spirit/home/classic/utility/grammar_def.hpp(180)
> : error C4430: missing type specifier - int assumed. Note: C++ does not
> support default-int

 1>c:\Desenvolvimento\dff_dependencies_windows\include\boost/spirit/home/classic/utility/grammar_def.hpp(187)
> : error C2238: unexpected token(s) preceding ';'

 1>c:\Desenvolvimento\dff_dependencies_windows\include\boost/spirit/home/classic/utility/grammar_def.hpp(277)
> : error C2143: syntax error : missing ';' before '<'

 1>c:\Desenvolvimento\dff_dependencies_windows\include\boost/spirit/home/classic/utility/grammar_def.hpp(277)
> : error C4430: missing type specifier - int assumed. Note: C++ does not
> support default-int

 1>c:\Desenvolvimento\dff_dependencies_windows\include\boost/spirit/home/classic/utility/grammar_def.hpp(277)
> : error C2238: unexpected token(s) preceding ';'

 1>c:\Desenvolvimento\dff_dependencies_windows\include\boost/spirit/home/classic/utility/grammar_def.hpp(277)
> : error C2988: unrecognizable template declaration/definition

 1>c:\Desenvolvimento\dff_dependencies_windows\include\boost/spirit/home/classic/utility/grammar_def.hpp(277)
> : error C2059: syntax error : '<'

 1>c:\Desenvolvimento\dff_dependencies_windows\include\boost/spirit/home/classic/utility/grammar_def.hpp(297)
> : error C2334: unexpected token(s) preceding ':'; skipping apparent function
> body

 1>c:\Desenvolvimento\dff_dependencies_windows\include\boost/spirit/home/classic/utility/grammar_def.hpp(298)
> : error C2760: syntax error : expected '{' not ';'

 1>c:\Desenvolvimento\dff_dependencies_windows\include\boost/spirit/home/classic/utility/grammar_def.hpp(299)
> : fatal error C1075: end of file found before the left brace '{' at
> 'c:\Desenvolvimento\dff_dependencies_windows\include\boost/spirit/home/classic/utility/grammar_def.hpp(54)'
> was matched

 1>Build log was saved at
> "file://c:\Desenvolvimento\DFF\VC9\Base\Debug\BuildLog.htm"

 1>Base - 17 error(s), 0 warning(s)

========== Build: 0 succeeded, 1 failed, 0 up-to-date, 0 skipped ==========

How you can see, the MS Compiler shows syntax errors on boost library. I
found on boost site that this compiler, version 9, is compatible to the
library. So, what is going on to my code?

Thanks
Leandro Lima



Boost-users list run by williamkempf at hotmail.com, kalb at libertysoft.com, bjorn.karlsson at readsoft.com, gregod at cs.rpi.edu, wekempf at cox.net