https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71546
Bug ID: 71546 Summary: lambda capture fails with "was not declared in this scope" Product: gcc Version: unknown Status: UNCONFIRMED Severity: normal Priority: P3 Component: c++ Assignee: unassigned at gcc dot gnu.org Reporter: stefaan.deroeck at gmail dot com Target Milestone: --- The following code fails to compile: #include <memory> int main() { int x1; [e = std::make_shared <int> (), x1]() {}; } saying: /tmp/gcc-explorer-compiler116515-85-117auiu/example.cpp: In function 'int main()': 6 : error: 'x1' was not declared in this scope [e = std::make_shared <int> (), x1]() {}; ^~ 6 : error: redeclaration of '<typeprefixerror>x1' 5 : note: previous declaration 'int x1' int x1; ^~ Compilation failed (tested on gcc.godbolt.org, using gcc-6.1 -std=c++14)