g++ -std=gnu++0x -c -O2 prints: minimal.cpp:8:44: sorry, unimplemented: cannot expand '_Tail ...' into a fixed-l ength argument list reduced testcase: template<typename _Tp> class tuple<> { { } template<std::size_t __i, typename _Head, typename... _Tail> struct tuple_element<__i, tuple<_Head, _Tail...> > : tuple_element<__i - 1, tuple<_Tail...> > { };
If it's unimplemented, it's unimplemented, the issue is obviously known.
Subject: Re: Unimplemented functionality paolo dot carlini wrote: at oracle dot com <gcc-bugzilla@gcc.gnu.org>: > If it's unimplemented, it's unimplemented, the issue > is obviously known. Even in this case? runtime/base/stack_trace.h:130:30: sorry, unimplemented: inlining failed in call to 'base::stack_trace::stack_trace(size_t)': function not inlinable Best regards Piotr Wyderski
No, in this case it's just a diagnostic telling you that the function cannot be inlined by the optimizers, there is nothing in the Standard about that, and it can well be that for some reason (there are many possible) it will *never* be in the foreseeable future. But if exactly the same function *could* be inlined by a previous version of GCC and you cannot convince the new GCC to do that even playing with the various --param knobs, you could (should) file an optimization regression PR.