[proto] Error with Proto Domains in 1.45

Hi Eric, hi all, I'm getting the following errors when I try to compile the example in the atteched file. test_proto_145.cpp: In function ‘int main()’: test_proto_145.cpp:91: error: no match for ‘operator<<’ in ‘emergency << 1’ I am using Boost 1.45 and GCC 4.4.5 This works fine in 1.46.0 and above. Is there a patch ? Thanks and regards. Fernando Pelliccioni.

On 7/29/2011 12:52 PM, Fernando Pelliccioni wrote:
If upgrading Boost isn't an option, you have have a couple of other work-arounds. First, you can replace the proto/operators.hpp with the attached. Or, you can change your LevelGrammar to accept other terminal types, like: struct LevelGrammar : boost::proto::or_< LevelTerminals , boost::proto::terminal<boost::proto::_> , boost::proto::shift_left< LevelGrammar , boost::proto::not_< LevelTerminals > > > {}; HTH, -- Eric Niebler BoostPro Computing http://www.boostpro.com

Hi Eric, On Fri, Jul 29, 2011 at 7:04 PM, Eric Niebler <eric@boostpro.com> wrote:
The attached file is the same as Boost 1.45. Could I replace proto/operators.hpp with the file of the version 1.46.0, 1.46.1 or 1.47 ?
This works great! Thank you so much. Fernando.
participants (2)
-
Eric Niebler
-
Fernando Pelliccioni