https://gcc.gnu.org/bugzilla/show_bug.cgi?id=82678
Bug ID: 82678 Summary: g++ crashes on wrong lamda Product: gcc Version: 4.8.5 Status: UNCONFIRMED Severity: normal Priority: P3 Component: c++ Assignee: unassigned at gcc dot gnu.org Reporter: stergios.zissakis at silixa dot com Target Milestone: --- Please see: https://bugzilla.redhat.com/show_bug.cgi?id=1504185 As CentOS7 suggested I reported the bug on RedHat's website... Pasting the description in: Sterge 2017-10-19 11:50:35 EDT Created attachment 1340826 [details] Preprocessed source code Description of problem: Compiler (g++) crash Version-Release number of selected component (if applicable): g++ (GCC) 4.8.5 20150623 (Red Hat 4.8.5-16) How reproducible: Preprocessed source attached Steps to Reproduce: 1. Use the attached preprocessed code 2. If not good, please contact me for initial srouce code 3. Actual results: c++ -g -std=c++11 -I. -I/home/szis/dev/cppInfrastructure/src/ -I/home/szis/dev/cppInfrastructure/include/ -fpermissive -c /home/szis/dev/cppInfrastructure/src/main.cpp -o /home/szis/dev/cppInfrastructure/src/main.o In file included from /usr/include/c++/4.8.2/thread:39:0, from /home/szis/dev/cppInfrastructure/include/utils/Logger.h:10, from /home/szis/dev/cppInfrastructure/src/main.cpp:8: /usr/include/c++/4.8.2/functional: In instantiation of ‘typename std::result_of<_Functor(_ArgTypes ...)>::type std::_Bind_simple<_Callable(_Args ...)>::_M_invoke(std::_Index_tuple<_Indices ...>) [with long unsigned int ..._Indices = {}; _Callable = FileReader<T>::Go() const [with T = double]::__lambda2; _Args = {}; typename std::result_of<_Functor(_ArgTypes ...)>::type = void]’: /usr/include/c++/4.8.2/functional:1720:36: required from ‘std::_Bind_simple<_Callable(_Args ...)>::result_type std::_Bind_simple<_Callable(_Args ...)>::operator()() [with _Callable = FileReader<T>::Go() const [with T = double]::__lambda2; _Args = {}; std::_Bind_simple<_Callable(_Args ...)>::result_type = void]’ /usr/include/c++/4.8.2/thread:115:13: required from ‘void std::thread::_Impl<_Callable>::_M_run() [with _Callable = std::_Bind_simple<FileReader<T>::Go() const [with T = double]::__lambda2()>]’ /home/szis/dev/cppInfrastructure/src/main.cpp:79:1: required from here /usr/include/c++/4.8.2/functional:1731:63: internal compiler error: in tsubst_copy, at cp/pt.c:12137 return std::forward<_Callable>(std::get<0>(_M_bound))( ^ Expected results: An object file. Please also find attached a preprocessed code file from gcc. Cheers, Sterge