
On 05/22/12 15:34, Steven Watanabe wrote: [snip]
The library is available in the Boost Sandbox at http://svn.boost.org/svn/boost/sandbox/type_erasure/
The type_erasure version I have is: ~/prog_dev/boost-svn/ro/boost_1_49_0/sandbox/ro/type_erasure/type_erasure $ svn update At revision 79008. However, compiling multi.cpp with gcc4.8 (2012-04-22) gives a uninitialized constexpr error. compilation; default-directory: "~/prog_dev/boost-svn/ro/boost_1_49_0/sandbox/ro/type_erasure/type_erasure/libs/type_erasure/example/" -*- Compilation started at Tue Jun 19 08:36:12 bjam multi sh: icpc: not found ...patience... ...found 550 targets... ...updating 4 targets... common.mkdir bin/multi.test/gcc-4.8v common.mkdir bin/multi.test/gcc-4.8v/debug gcc.compile.c++ bin/multi.test/gcc-4.8v/debug/multi.o In file included from ../../../boost/type_erasure/binding.hpp:28:0, from ../../../boost/type_erasure/any.hpp:39, from multi.cpp:11: ../../../boost/type_erasure/detail/vtable.hpp:155:28: error: constexpr static data member 'value' must have an initializer static constexpr Table value; ^ ../../../boost/type_erasure/detail/vtable.hpp:159:52: error: redeclaration 'boost::type_erasure::detail::vtable_init<Table, T>::value' differs in 'constexpr' constexpr Table vtable_init<Table, T...>::value(T::value...); ^ ../../../boost/type_erasure/detail/vtable.hpp:155:28: error: from previous declaration 'boost::type_erasure::detail::vtable_init<Table, T>::value' static constexpr Table value; ^ ../../../boost/type_erasure/detail/vtable.hpp:159:52: error: 'boost::type_erasure::detail::vtable_init<Table, T>::value' declared 'constexpr' outside its class constexpr Table vtable_init<Table, T...>::value(T::value...); ^ ../../../boost/type_erasure/detail/vtable.hpp:159:52: error: declaration of 'const Table boost::type_erasure::detail::vtable_init<Table, T>::value' outside of class is not definition [-fpermissive] constexpr Table vtable_init<Table, T...>::value(T::value...); ^ "/home/evansl/download/gcc/4.8-20120422/install/bin/g++" -ftemplate-depth-128 -Wl,-rpath -std=gnu++11 -DCXX0X_VARIADIC_TEMPLATES -DBOOST_USE_MPL_VARIADIC_TEMPLATES -O0 -fno-inline -Wall -g -fPIC -I"../../.." -I"/home/evansl/prog_dev/boost-svn/ro/boost_1_49_0" -c -o "bin/multi.test/gcc-4.8v/debug/multi.o" "multi.cpp" ...failed gcc.compile.c++ bin/multi.test/gcc-4.8v/debug/multi.o...