Boost logo

Boost :

Subject: Re: [boost] Problem with BOOST_NO_CXX11_VARIADIC_TEMPLATES in gcc.hpp
From: Andrey Semashev (andrey.semashev_at_[hidden])
Date: 2014-08-23 04:58:46


On Saturday 23 August 2014 09:40:34 John Maddock wrote:
> > Furthermore, the bug that produces a message like this:
> >
> > "sorry, unimplemented: cannot expand 'Args ...' into a fixed-length
> > argument list"
> >
> > was only fixed in g++ 4.7.0 (according to a bug report). That issue
> > could also use a guard macro, as was done in one of the boost libraries
> > ( BOOST_CONTAINER_UNIMPLEMENTED_PACK_EXPANSION_TO_FIXED_LIST).
>
> If this is a GCC specific bug, then I'm inclined to suggest that this is
> what BOOST_WORKAROUND is for: unless there are a lot of libraries
> needing this, or there's a consensus that variadic templates should be
> disabled altogether prior to 4.7?

I have a similar macro
BOOST_LOG_NO_CXX11_ARG_PACKS_TO_NON_VARIADIC_ARGS_EXPANSION in Boost.Log. To
my knowledge, this is a gcc-specific issue.

I don't think that variadic templates should be disabled for gcc prior to 4.7,
even with this problem, since the implementation is sufficient for many use
cases.


Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk