This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug c++/58481] Internal compiler error when passing argument packs to base class method inside a lambda
- From: "paolo.carlini at oracle dot com" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: Fri, 20 Sep 2013 16:44:17 +0000
- Subject: [Bug c++/58481] Internal compiler error when passing argument packs to base class method inside a lambda
- Auto-submitted: auto-generated
- References: <bug-58481-4 at http dot gcc dot gnu dot org/bugzilla/>
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=58481
--- Comment #3 from Paolo Carlini <paolo.carlini at oracle dot com> ---
Indeed, let's avoid the big <functional>, this is enough:
struct Test {
template<typename... Args> inline void triggerTest (Args&&... fargs) { }
};
struct TestPickled : Test {
template<typename... Args> void triggerTest (Args&&... fargs) {
[=](Args... as) {
Test::triggerTest(as...);
// this->_Test::triggerTest(as...);
// ^^^^^^^ THIS WORKAROUNDS THE PROBLEM
} ();
}
};
int main()
{
TestPickled test;
test.triggerTest();
return 0;
}