https://gcc.gnu.org/bugzilla/show_bug.cgi?id=82565
Jonathan Wakely <redi at gcc dot gnu.org> changed: What |Removed |Added ---------------------------------------------------------------------------- Keywords| |ice-on-valid-code Status|UNCONFIRMED |NEW Last reconfirmed| |2017-11-01 Known to work| |7.1.0 Summary|Concept and lambda return |[7/8 Regression] Concept |type deduction cause |and lambda return type |compilation to crash with |deduction cause compilation |"mmap: Cannot allocate |to crash with "mmap: Cannot |memory" |allocate memory" Ever confirmed|0 |1 Known to fail| |7.2.0, 8.0 --- Comment #1 from Jonathan Wakely <redi at gcc dot gnu.org> --- Trunk gives a seemingly bogus error before the ICE: mozilla_jwakely0/crash.cpp: In instantiation of ‘run_test()::<lambda(auto:1&)> [with auto:1 = const std::__cxx11::basic_string<char>]’: mozilla_jwakely0/crash.cpp:9:12: required from here mozilla_jwakely0/crash.cpp:49:47: error: use of parameter from containing function return object.visit([] (auto& x) { return x.empty(); }); ^ mozilla_jwakely0/crash.cpp:49:35: note: ‘const std::__cxx11::basic_string<char>& x’ declared here return object.visit([] (auto& x) { return x.empty(); }); ~~~~~~^ mozilla_jwakely0/crash.cpp:49:58: internal compiler error: Segmentation fault return object.visit([] (auto& x) { return x.empty(); }); ^