Input: ------ #include <functional> struct IBar { virtual void runLambda(const std::function<void ()>& func) const = 0; }; template<bool x> struct Foo { void test(IBar* b) { b->runLambda([this]() { onTest(); }); } void onTest() {} }; int main(int argc, char** argv) { Foo<true> f; f.test(nullptr); return 0; } Output: ------- test.cpp: In lambda function: test.cpp:25:1: internal compiler error: in get_expr_operands, at tree-ssa-operands.c:1035
Jason fixed this a few minutes ago: http://gcc.gnu.org/viewcvs?view=revision&revision=193957
Dup *** This bug has been marked as a duplicate of bug 53137 ***