
Maurizio Vitale wrote:
Eric Niebler <eric@boost-consulting.com> writes:
This is only a problem on GCC because of a compiler bug wrt template template parameters. Proto reuses a work-around from the MPL, which is conditioned on an MPL macro called BOOST_MPL_LIMIT_METAFUNCTION_ARITY. If you define this to be at least as large as BOOST_PROTO_MAX_ARITY, the problem goes away.
Mmmh, does the code I sent compile for you when ARITY==8? It still doesn't for me.
Yes, if I compile your code with: #define ARITY 8 #define BOOST_MPL_LIMIT_METAFUNCTION_ARITY 8 then it works with gcc-3.4, gcc-4.0 and gcc-4.1. I double checked that I have no pending commits lying around. I don't know what the problem could be, sorry. -- Eric Niebler Boost Consulting www.boost-consulting.com