Command line: g++ -std=c++0x testcase.cpp ---- testcase.cpp ---- void f() { []{}(); } ---------------------- valgrind shows uninitialised read with this testcase
Tested revisions: r157675 - fail Valgrind output: $ valgrind --trace-children=yes -q /mnt/svn/gcc-trunk/binary-157675-lto/bin/g++ -std=c++0x testcase.cpp ==11819== Conditional jump or move depends on uninitialised value(s) ==11819== at 0x4D59C8: grokfndecl (decl.c:6657) ==11819== by 0x4DC9E2: grokdeclarator (decl.c:9301) ==11819== by 0x4DDD52: grokmethod (decl.c:12657) ==11819== by 0x578109: cp_parser_lambda_expression (parser.c:7409) ==11819== by 0x56BA6E: cp_parser_primary_expression (parser.c:3344) ==11819== by 0x5802BA: cp_parser_postfix_expression (parser.c:4741) ==11819== by 0x569BE7: cp_parser_unary_expression (parser.c:5667) ==11819== by 0x571A27: cp_parser_binary_expression (parser.c:6337) ==11819== by 0x571F2A: cp_parser_assignment_expression (parser.c:6548) ==11819== by 0x5722B9: cp_parser_expression (parser.c:6694) ==11819== by 0x5727DB: cp_parser_expression_statement (parser.c:7809) ==11819== by 0x564145: cp_parser_statement (parser.c:7674) ==11819== -- Summary: uninitialised read in grokfndecl() with lambda functions cause -fcompare-debug failures Product: gcc Version: 4.5.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: c++ AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: zsojka at seznam dot cz GCC host triplet: x86_64-pc-linux-gnu GCC target triplet: x86_64-pc-linux-gnu http://gcc.gnu.org/bugzilla/show_bug.cgi?id=43502