Open kdt75 opened 7 years ago
Probably related to #238
I tried to reproduce this, but it seems to build just fine, at least with VC15.
As far as I can tell, my changes in the linked PR also shouldn't affect this code. And if the source path "EmulationStation-2.6.2" means that this is the git tag v2.6.2, then this PR wouldn't even be in there. The v2.6.2 tag also has an assignment of NULL to a std::function at GuiGamelistOptions.cpp(165), which matches the compile error.
I found it a bit curious that the assigned type in the compile error is "int", but that would match up with the NULL assignment, since NULL is apparently simply defined as "0". I thought maybe VC14 could have an issue with assigning "NULL" or "0" to a std::function, but it seems to compile just fine.
Getting a build issue when building under windows with GUIGameListOption.cpp.
Detail of error are as follows: 5>C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\type_traits(1494): error C2893: Failed to specialize function template 'unknown-type std::invoke(_Callable &&,_Types &&...)' (compiling source file C:\src\EmulationStation-2.6.2\es-app\src\guis\GuiGamelistOptions.cpp) 5> C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\type_traits(1494): note: With the following template arguments: (compiling source file C:\src\EmulationStation-2.6.2\es-app\src\guis\GuiGamelistOptions.cpp) 5> C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\type_traits(1494): note: '_Callable=_Decayed &' (compiling source file C:\src\EmulationStation-2.6.2\es-app\src\guis\GuiGamelistOptions.cpp) 5> C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\type_traits(1494): note: '_Types={}' (compiling source file C:\src\EmulationStation-2.6.2\es-app\src\guis\GuiGamelistOptions.cpp) 5> C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\functional(210): note: see reference to function template instantiation 'void std::_Invoke_ret<_Rx,_Callable&>(std::_Forced<_Rx,true>,_Callable &)' being compiled 5> with 5> [ 5> _Rx=void, 5> _Callable=_Decayed 5> ] (compiling source file C:\src\EmulationStation-2.6.2\es-app\src\guis\GuiGamelistOptions.cpp) 5> C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\functional(208): note: while compiling class template member function 'void std::_Func_impl<_Decayed,_Alloc,_Ret>::_Do_call(void)' 5> with 5> [ 5> _Alloc=std::allocator,
5> _Ret=void
5> ] (compiling source file C:\src\EmulationStation-2.6.2\es-app\src\guis\GuiGamelistOptions.cpp)
5> C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\functional(136): note: see reference to class template instantiation 'std::_Func_impl<_Decayed,_Alloc,_Ret>' being compiled
5> with
5> [
5> _Alloc=std::allocator,
5> _Ret=void
5> ] (compiling source file C:\src\EmulationStation-2.6.2\es-app\src\guis\GuiGamelistOptions.cpp)
5> C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\functional(339): note: see reference to class template instantiation 'std::_Is_large<_Myimpl>' being compiled (compiling source file C:\src\EmulationStation-2.6.2\es-app\src\guis\GuiGamelistOptions.cpp)
5> C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\functional(318): note: see reference to function template instantiation 'void std::_Func_class<_Ret>::_Reset_alloc<_Ty,std::allocator<_Ty>>(_Fx &&,const _Alloc &)' being compiled
5> with
5> [
5> _Ret=void,
5> _Ty=int,
5> _Fx=int,
5> _Alloc=std::allocator
5> ] (compiling source file C:\src\EmulationStation-2.6.2\es-app\src\guis\GuiGamelistOptions.cpp)
5> C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\functional(318): note: see reference to function template instantiation 'void std::_Func_class<_Ret>::_Reset_alloc<_Ty,std::allocator<_Ty>>(_Fx &&,const _Alloc &)' being compiled
5> with
5> [
5> _Ret=void,
5> _Ty=int,
5> _Fx=int,
5> _Alloc=std::allocator
5> ] (compiling source file C:\src\EmulationStation-2.6.2\es-app\src\guis\GuiGamelistOptions.cpp)
5> C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\functional(484): note: see reference to function template instantiation 'void std::_Func_class<_Ret>::_Reset(_Fx &&)' being compiled
5> with
5> [
5> _Ret=void,
5> _Fx=int
5> ] (compiling source file C:\src\EmulationStation-2.6.2\es-app\src\guis\GuiGamelistOptions.cpp)
5> C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\functional(484): note: see reference to function template instantiation 'void std::_Func_class<_Ret>::_Reset(_Fx &&)' being compiled
5> with
5> [
5> _Ret=void,
5> _Fx=int
5> ] (compiling source file C:\src\EmulationStation-2.6.2\es-app\src\guis\GuiGamelistOptions.cpp)
5> C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\functional(544): note: see reference to function template instantiation 'std::function<void (void)>::function(_Fx)' being compiled
5> with
5> [
5> _Fx=int
5> ] (compiling source file C:\src\EmulationStation-2.6.2\es-app\src\guis\GuiGamelistOptions.cpp)
5> C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\functional(544): note: see reference to function template instantiation 'std::function<void (void)>::function(_Fx)' being compiled
5> with
5> [
5> _Fx=int
5> ] (compiling source file C:\src\EmulationStation-2.6.2\es-app\src\guis\GuiGamelistOptions.cpp)
5> C:\src\EmulationStation-2.6.2\es-app\src\guis\GuiGamelistOptions.cpp(165): note: see reference to function template instantiation 'std::function<void (void)> &std::function<void (void)>::operator =(_Fx &&)' being compiled
5> with
5> [
5> _Fx=int
5> ]
5> C:\src\EmulationStation-2.6.2\es-app\src\guis\GuiGamelistOptions.cpp(165): note: see reference to function template instantiation 'std::function<void (void)> &std::function<void (void)>::operator =(_Fx &&)' being compiled
5> with
5> [
5> _Fx=int
5> ]