Boost logo

Boost :

Subject: [boost] [utility] base_from_member variadic template error on gcc-4.6.0 c++0x
From: Vicente Botet (vicente.botet_at_[hidden])
Date: 2013-01-21 03:14:59


Hi,

I'm getting the following compiler error.

gcc.compile.c++
..\..\..\bin.v2\libs\chrono\test\stopwatch_reporter_example_h.test\gcc-mingw-4.6.0x\debug\stopwatch_reporter_example.o
In file included from ..\..\../boost/format/alt_sstream.hpp:20:0,
                 from ..\..\../boost/format/internals.hpp:23,
                 from ..\..\../boost/format.hpp:38,
                 from
..\..\../boost/chrono/stopwatches/formatters/elapsed_formatter.hpp:13,
                 from
..\..\../boost/chrono/stopwatches/reporters/clock_default_formatter.hpp:11,
                 from
..\..\../boost/chrono/stopwatches/reporters/stopwatch_reporter_default_formatter.hpp:11,
                 from
..\..\../boost/chrono/stopwatches/reporters/stopwatch_reporter.hpp:23,
                 from ..\example\stopwatch_reporter_example.cpp:10:
..\..\../boost/utility/base_from_member.hpp: In constructor
'boost::io::basic_oaltstringstream<Ch, Tr,
Alloc>::basic_oaltstringstream(boost::io::basic_oaltstringstream<Ch, Tr,
Alloc>::stringbuf_t*) [with Ch = char, Tr = std::char_traits<char>, Alloc =
std::allocator<char>, boost::io::basic_oaltstringstream<Ch, Tr,
Alloc>::stringbuf_t = boost::io::basic_altstringbuf<char,
std::char_traits&lt;char>, std::allocator<char> >]':
..\..\../boost/format/feed_args.hpp:175:57: instantiated from 'void
boost::io::detail::put(T, const boost::io::detail::format_item<Ch, Tr,
Alloc>&, typename boost::basic_format<Ch, Tr, Alloc>::string_type&, typename
boost::basic_format<Ch, Tr, Alloc>::internal_streambuf_t&,
boost::io::detail::locale_t*) [with Ch = char, Tr = std::char_traits<char>,
Alloc = std::allocator<char>, T = const boost::io::detail::put_holder<char,
std::char_traits&lt;char> >&, typename boost::basic_format<Ch, Tr,
Alloc>::string_type = std::basic_string<char>, typename
boost::basic_format<Ch, Tr, Alloc>::internal_streambuf_t =
boost::io::basic_altstringbuf<char, std::char_traits&lt;char>,
std::allocator<char> >, boost::io::detail::locale_t = std::locale]'
..\..\../boost/format/feed_args.hpp:286:17: instantiated from 'void
boost::io::detail::distribute(boost::basic_format<Ch, Tr, Alloc>&, T) [with
Ch = char, Tr = std::char_traits<char>, Alloc = std::allocator<char>, T =
const boost::io::detail::put_holder<char, std::char_traits&lt;char> >&]'
..\..\../boost/format/feed_args.hpp:296:9: instantiated from
'boost::basic_format<Ch, Tr, Alloc>&
boost::io::detail::feed_impl(boost::basic_format<Ch, Tr, Alloc>&, T) [with
Ch = char, Tr = std::char_traits<char>, Alloc = std::allocator<char>, T =
const boost::io::detail::put_holder<char, std::char_traits&lt;char> >&]'
..\..\../boost/format/feed_args.hpp:308:95: instantiated from
'boost::basic_format<Ch, Tr, Alloc>&
boost::io::detail::feed(boost::basic_format<Ch, Tr, Alloc>&, T) [with Ch =
char, Tr = std::char_traits<char>, Alloc = std::allocator<char>, T = const
boost::io::detail::group1<boost::io::detail::group4&lt;std::ios_base&amp;
(*)(std::ios_base&amp;), std::_Setprecision, boost::chrono::duration_fmt,
const boost::chrono::duration&lt;double, boost::ratio&lt;1ll, 1000ll> >&>
>&]'
..\..\../boost/format/format_class.hpp:64:74: instantiated from
'boost::basic_format<Ch, Tr, Alloc>& boost::basic_format<Ch, Tr,
Alloc>::operator%(const T&) [with T =
boost::io::detail::group1<boost::io::detail::group4&lt;std::ios_base&amp;
(*)(std::ios_base&amp;), std::_Setprecision, boost::chrono::duration_fmt,
const boost::chrono::duration&lt;double, boost::ratio&lt;1ll, 1000ll> >&> >,
Ch = char, Tr = std::char_traits<char>, Alloc = std::allocator<char>,
boost::basic_format<Ch, Tr, Alloc> = boost::basic_format<char>]'
..\..\../boost/chrono/stopwatches/formatters/elapsed_formatter.hpp:83:9:
instantiated from 'void boost::chrono::basic_elapsed_formatter<Ratio, CharT,
Traits, Alloc>::operator()(Stopwatch&) [with Stopwatch =
boost::chrono::basic_stopwatch_reporter<char,
boost::chrono::strict_stopwatch&lt;boost::chrono::steady_clock>,
boost::chrono::basic_elapsed_formatter<boost::ratio&lt;1ll, 1000ll>, char>
>, Ratio = boost::ratio<1ll, 1000ll>, CharT = char, Traits =
std::char_traits<char>, Alloc = std::allocator<char>]'
..\..\../boost/chrono/stopwatches/reporters/stopwatch_reporter.hpp:88:9:
instantiated from 'void boost::chrono::basic_stopwatch_reporter<CharT,
Stopwatch, Formatter>::report() [with CharT = char, Stopwatch =
boost::chrono::strict_stopwatch<boost::chrono::steady_clock>, Formatter =
boost::chrono::basic_elapsed_formatter<boost::ratio&lt;1ll, 1000ll>, char>]'
..\..\../boost/chrono/stopwatches/reporters/stopwatch_reporter.hpp:82:11:
instantiated from 'boost::chrono::basic_stopwatch_reporter<CharT, Stopwatch,
Formatter>::~basic_stopwatch_reporter() [with CharT = char, Stopwatch =
boost::chrono::strict_stopwatch<boost::chrono::steady_clock>, Formatter =
boost::chrono::basic_elapsed_formatter<boost::ratio&lt;1ll, 1000ll>, char>]'
..\..\../boost/chrono/stopwatches/reporters/stopwatch_reporter.hpp:127:11:
instantiated from here
..\..\../boost/utility/base_from_member.hpp:135:55: sorry, unimplemented:
use of 'type_pack_expansion' in template

    "c:/MINGW/gcc-4.6.0S/bin/g++" -ftemplate-depth-128 -std=c++0x -O0
-fno-inline -Wall -pedantic -g -Wextra -Wno-long-long -pedantic
-DBOOST_ALL_NO_LIB=1 -DBOOST_CHRONO_HEADER_ONLY
-DBOOST_CHRONO_USES_MPL_ASSERT -DBOOST_CHRONO_VERSION=2
-DBOOST_ERROR_CODE_HEADER_ONLY -DBOOST_SYSTEM_NO_DEPRECATED -I"..\..\.." -c
-o
"..\..\..\bin.v2\libs\chrono\test\stopwatch_reporter_example_h.test\gcc-mingw-4.6.0x\debug\stopwatch_reporter_example.o"
"..\example\stopwatch_reporter_example.cpp"

Is this a know issue?

Best,
Vicente

--
View this message in context: http://boost.2283326.n4.nabble.com/utility-base-from-member-variadic-template-error-on-gcc-4-6-0-c-0x-tp4641581.html
Sent from the Boost - Dev mailing list archive at Nabble.com.

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