http://gcc.gnu.org/bugzilla/show_bug.cgi?id=56413
Bug #: 56413 Summary: ICE accessing private method from enclosing class within lambda, in get_expr_operands, regression from 4.6 Classification: Unclassified Product: gcc Version: 4.8.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: c++ AssignedTo: unassig...@gcc.gnu.org ReportedBy: jetr...@sbcglobal.net Created attachment 29512 --> http://gcc.gnu.org/bugzilla/attachment.cgi?id=29512 Preprocessed source file The attached code causes the compiler to crash in both 4.7.2 and 4.8.0, but not in 4.6; details: g++ (Ubuntu/Linaro 20121008-1ubuntu1) 4.8.0 20121008 (experimental) [trunk revision 192192] command line: /usr/lib/gcc-snapshot/bin/g++ -Wall -std=c++0x -o /tmp/rw /tmp/crash_repro.cpp 2>/tmp/crash_repo.log Using "this->inter_value(v)" instead of simply "inter_value(v)" in the body of the lambda causes the compile to complete successfully.