Closed s0vereign closed 7 years ago
Thank you for your detailed explanation. I totally understand your pain. I would like to merge your PR like it is, but on the dev-c++11 branch, since the main dev branch will stay C++14. So could you please open a new PR on the dev-c++11 branch? thx in advance.
I cherry-picked your commit and put it onto the dev-c++11 branch. See #133.
All right thanks. Sry forgot about the PR. I ran in multiple other issues to get Graybat and Alpaka together. I'm trying to solve them. Will report as soon as I know more what's causing them!
I'll try my best to support you solving upcoming problems.
This PR is here due to a offline discussion with @theZiz.
The C++14 Flag in Graybat is still prohibiting it from working it with Alpaka/CUDA. The main problem is that if CUDA(even in version 8.0) is used, C++11 should be used and this is fine for both Alpaka and Graybat (since @fabian-jung removed the C++14 stuff afaik). The problem which remains is, that if Graybat sets the
CMAKE_CXX_FLAG
to C++14 Alpaka will thus not create the MakroBOOST_NO_CXX14_RETURN_TYPE_DEDUCTION
and therefore causes the compilation to fail due to the missing return type deduction feature. This would now fix the issue, but since Alpaka as well as Graybat add the C++11 Flag, the user still has to remove the duplicate manually inside his CMakeslists.txt file (when using CUDA and Alpaka at least since nvcc does not allow duplicate flags). The only advantage of this PR is therefore, that the user immediatly sees that the error is caused by the Flags and can remove them manually instead of having to further investigate the Alpaka internal cause.A real solution instead of a workaround imho would be to check if there already exists a C++11 Flag in both Alpaka and Graybat, and adding it if it does not already exist. Or let the user take care of it inside his own CMake File.
Also since the tests still require C++14, I could still exchange the C++11 to 14 flag temporarily in the concerned
CMakeLists.txt
.