Open zkself opened 5 years ago
@zkself ### Hi, My environment is Ubuntu 18.04, CUDA 9.0, cuDNN 7.0, pytorch 0.4.1, gcc-6, g++-6. I also encountered this problem when I executed make.
username@username:~/warp-ctc/build$ make
[ 11%] Building NVCC (Device) object CMakeFiles/warpctc.dir/src/warpctc_generated_reduce.cu.o
...
[ 22%] Building NVCC (Device) object CMakeFiles/warpctc.dir/src/warpctc_generated_ctc_entrypoint.cu.o
...
Scanning dependencies of target warpctc
[ 33%] Linking CXX shared library libwarpctc.so
[ 33%] Built target warpctc
Scanning dependencies of target test_cpu
[ 44%] Building CXX object CMakeFiles/test_cpu.dir/tests/test_cpu.cpp.o
[ 55%] Building CXX object CMakeFiles/test_cpu.dir/tests/random.cpp.o
[ 66%] Linking CXX executable test_cpu
[ 66%] Built target test_cpu
[ 77%] Building NVCC (Device) object CMakeFiles/test_gpu.dir/tests/test_gpu_generated_test_gpu.cu.o
...
CMake Error at test_gpu_generated_test_gpu.cu.o.cmake:279 (message):
Error generating file
/home/username/warp-ctc/build/CMakeFiles/test_gpu.dir/tests/./test_gpu_generated_test_gpu.cu.o
CMakeFiles/test_gpu.dir/build.make:63: recipe for target 'CMakeFiles/test_gpu.dir/tests/test_gpu_generated_test_gpu.cu.o' failed
make[2]: *** [CMakeFiles/test_gpu.dir/tests/test_gpu_generated_test_gpu.cu.o] Error 1
CMakeFiles/Makefile2:141: recipe for target 'CMakeFiles/test_gpu.dir/all' failed
make[1]: *** [CMakeFiles/test_gpu.dir/all] Error 2
Makefile:129: recipe for target 'all' failed
make: *** [all] Error 2
You can try to change the versions of GCC and g++, like this.
username@username:/usr/bin$ ls -all gcc*
lrwxrwxrwx 1 root root 5 3月 24 10:24 gcc -> gcc-6
-rwxr-xr-x 1 root root 772280 3月 19 2018 gcc-4.8
lrwxrwxrwx 1 root root 22 11月 12 16:50 gcc-6 -> x86_64-linux-gnu-gcc-6
lrwxrwxrwx 1 root root 22 7月 26 2018 gcc-7 -> x86_64-linux-gnu-gcc-7
lrwxrwxrwx 1 root root 8 9月 17 2018 gcc-ar -> gcc-ar-7
-rwxr-xr-x 1 root root 27088 3月 19 2018 gcc-ar-4.8
lrwxrwxrwx 1 root root 25 11月 12 16:50 gcc-ar-6 -> x86_64-linux-gnu-gcc-ar-6
lrwxrwxrwx 1 root root 25 7月 26 2018 gcc-ar-7 -> x86_64-linux-gnu-gcc-ar-7
lrwxrwxrwx 1 root root 5 4月 7 2018 gcc.bak -> gcc-7
lrwxrwxrwx 1 root root 8 9月 17 2018 gcc-nm -> gcc-nm-7
-rwxr-xr-x 1 root root 27088 3月 19 2018 gcc-nm-4.8
lrwxrwxrwx 1 root root 25 11月 12 16:50 gcc-nm-6 -> x86_64-linux-gnu-gcc-nm-6
lrwxrwxrwx 1 root root 25 7月 26 2018 gcc-nm-7 -> x86_64-linux-gnu-gcc-nm-7
lrwxrwxrwx 1 root root 12 9月 17 2018 gcc-ranlib -> gcc-ranlib-7
-rwxr-xr-x 1 root root 27088 3月 19 2018 gcc-ranlib-4.8
lrwxrwxrwx 1 root root 29 11月 12 16:50 gcc-ranlib-6 -> x86_64-linux-gnu-gcc-ranlib-6
lrwxrwxrwx 1 root root 29 7月 26 2018 gcc-ranlib-7 -> x86_64-linux-gnu-gcc-ranlib-7
username@username:/usr/bin$ ls -al g++*
lrwxrwxrwx 1 root root 5 3月 24 10:24 g++ -> g++-6
-rwxr-xr-x 1 root root 776376 3月 19 2018 g++-4.8
lrwxrwxrwx 1 root root 22 11月 12 16:50 g++-6 -> x86_64-linux-gnu-g++-6
lrwxrwxrwx 1 root root 22 7月 26 2018 g++-7 -> x86_64-linux-gnu-g++-7
lrwxrwxrwx 1 root root 5 4月 7 2018 g++.bak -> g++-7
username@username:/usr/bin$ sudo ln -sf gcc-4.8 gcc
[sudo] zhudong 的密码:
username@username:/usr/bin$ sudo ln -sf g++-4.8 g++
username@username:/usr/bin$
After going through the above steps, you can try make again.
username@username:~/warp-ctc/build$ make
[ 11%] Linking CXX shared library libwarpctc.so
[ 33%] Built target warpctc
[ 44%] Linking CXX executable test_cpu
[ 66%] Built target test_cpu
[ 77%] Building NVCC (Device) object CMakeFiles/test_gpu.dir/tests/test_gpu_generated_test_gpu.cu.o
Scanning dependencies of target test_gpu
[ 88%] Building CXX object CMakeFiles/test_gpu.dir/tests/random.cpp.o
[100%] Linking CXX executable test_gpu
[100%] Built target test_gpu
Good luck.
I confirm. Same error initially I downloaded gcc4.8 and g++4.8 and it compiled fine after setting them default.
sudo apt-get install gcc-4.8
sudo apt-get install -y g++-4.8
sudo ln -sf g++-4.8 g++
sudo ln -sf gcc-4.8 gcc
envs: ubuntu16.04 cuda9.0 cudnn7 gcc6,4.9 RTX2080TI
[ 33%] Built target warpctc [ 44%] Building NVCC (Device) object CMakeFiles/test_gpu.dir/tests/test_gpu_generated_test_gpu.cu.o /usr/include/c++/6/tuple: In instantiation of ‘static constexpr bool std::_TC<, _Elements>::_MoveConstructibleTuple() [with _UElements = {std::tuple<int, int, int, int, double>}; bool = true; _Elements = {int, int, int, int, double}]’:
/usr/include/c++/6/tuple:626:248: required by substitution of ‘template<class ... _UElements, typename std::enable_if<(((std::_TC<(sizeof... (_UElements) == 1), int, int, int, int, double>::_NotSameTuple<_UElements ...>() && std::_TC<(1ul == sizeof... (_UElements)), int, int, int, int, double>::_MoveConstructibleTuple<_UElements ...>()) && std::_TC<(1ul == sizeof... (_UElements)), int, int, int, int, double>::_ImplicitlyMoveConvertibleTuple<_UElements ...>()) && (5ul >= 1)), bool>::type > constexpr std::tuple< >::tuple(_UElements&& ...) [with _UElements = {std::tuple<int, int, int, int, double>}; typename std::enable_if<(((std::_TC<(sizeof... (_UElements) == 1), int, int, int, int, double>::_NotSameTuple<_UElements ...>() && std::_TC<(1ul == sizeof... (_UElements)), int, int, int, int, double>::_MoveConstructibleTuple<_UElements ...>()) && std::_TC<(1ul == sizeof... (_UElements)), int, int, int, int, double>::_ImplicitlyMoveConvertibleTuple<_UElements ...>()) && (5ul >= 1)), bool>::type = ]’
/usr/include/c++/6/tuple:1396:58: required from ‘constexpr std::tuple<typename std::decay_and_strip<_Elements>::__type ...> std::make_tuple(_Elements&& ...) [with _Elements = {int, int, int, int, double}]’
/home/user/zkself/warp-ctc/tests/test_gpu.cu:453:130: required from here
/usr/include/c++/6/tuple:483:67: error: mismatched argument pack lengths while expanding ‘std::is_constructible<_Elements, _UElements&&>’
return and_<is_constructible<_Elements, _UElements&&>...>::value;
^~~~~
/usr/include/c++/6/tuple:484:1: error: body of constexpr function ‘static constexpr bool std::_TC<, _Elements>::_MoveConstructibleTuple() [with _UElements = {std::tuple<int, int, int, int, double>}; bool = true; _Elements = {int, int, int, int, double}]’ not a return-statement
}
^
/usr/include/c++/6/tuple: In instantiation of ‘static constexpr bool std::_TC<, _Elements>::_ImplicitlyMoveConvertibleTuple() [with _UElements = {std::tuple<int, int, int, int, double>}; bool = true; _Elements = {int, int, int, int, double}]’:
/usr/include/c++/6/tuple:626:362: required by substitution of ‘template<class ... _UElements, typename std::enable_if<(((std::_TC<(sizeof... (_UElements) == 1), int, int, int, int, double>::_NotSameTuple<_UElements ...>() && std::_TC<(1ul == sizeof... (_UElements)), int, int, int, int, double>::_MoveConstructibleTuple<_UElements ...>()) && std::_TC<(1ul == sizeof... (_UElements)), int, int, int, int, double>::_ImplicitlyMoveConvertibleTuple<_UElements ...>()) && (5ul >= 1)), bool>::type > constexpr std::tuple< >::tuple(_UElements&& ...) [with _UElements = {std::tuple<int, int, int, int, double>}; typename std::enable_if<(((std::_TC<(sizeof... (_UElements) == 1), int, int, int, int, double>::_NotSameTuple<_UElements ...>() && std::_TC<(1ul == sizeof... (_UElements)), int, int, int, int, double>::_MoveConstructibleTuple<_UElements ...>()) && std::_TC<(1ul == sizeof... (_UElements)), int, int, int, int, double>::_ImplicitlyMoveConvertibleTuple<_UElements ...>()) && (5ul >= 1)), bool>::type = ]’
/usr/include/c++/6/tuple:1396:58: required from ‘constexpr std::tuple<typename std::decay_and_strip<_Elements>::__type ...> std::make_tuple(_Elements&& ...) [with _Elements = {int, int, int, int, double}]’
/home/user/zkself/warp-ctc/tests/test_gpu.cu:453:130: required from here
/usr/include/c++/6/tuple:489:65: error: mismatched argument pack lengths while expanding ‘std::is_convertible<_UElements&&, _Elements>’
return and_<is_convertible<_UElements&&, _Elements>...>::value;
^~~~~
/usr/include/c++/6/tuple:490:1: error: body of constexpr function ‘static constexpr bool std::_TC<, _Elements>::_ImplicitlyMoveConvertibleTuple() [with _UElements = {std::tuple<int, int, int, int, double>}; bool = true; _Elements = {int, int, int, int, double}]’ not a return-statement
}
^
/usr/include/c++/6/tuple: In instantiation of ‘static constexpr bool std::_TC<, _Elements>::_NonNestedTuple() [with _SrcTuple = const std::tuple<int, int, int, int, double>&; bool = true; _Elements = {int, int, int, int, double}]’:
/usr/include/c++/6/tuple:662:419: required by substitution of ‘template<class ... _UElements, class _Dummy, typename std::enable_if<((std::_TC<(1ul == sizeof... (_UElements)), int, int, int, int, double>::_ConstructibleTuple<_UElements ...>() && std::_TC<(1ul == sizeof... (_UElements)), int, int, int, int, double>::_ImplicitlyConvertibleTuple<_UElements ...>()) && std::_TC<(std::is_same<_Dummy, void>::value && (1ul == 1)), int, int, int, int, double>::_NonNestedTuple<const tuple<_Elements ...>&>()), bool>::type > constexpr std::tuple< >::tuple(const std::tuple<_Args1 ...>&) [with _UElements = {int, int, int, int, double}; _Dummy = void; typename std::enable_if<((std::_TC<(1ul == sizeof... (_UElements)), int, int, int, int, double>::_ConstructibleTuple<_UElements ...>() && std::_TC<(1ul == sizeof... (_UElements)), int, int, int, int, double>::_ImplicitlyConvertibleTuple<_UElements ...>()) && std::_TC<(std::is_same<_Dummy, void>::value && (1ul == 1)), int, int, int, int, double>::_NonNestedTuple<const tuple<_Elements ...>&>()), bool>::type = ]’
/usr/include/c++/6/tuple:1396:58: required from ‘constexpr std::tuple<typename std::decay_and_strip<_Elements>::type ...> std::make_tuple(_Elements&& ...) [with _Elements = {int, int, int, int, double}]’
/home/user/zkself/warp-ctc/tests/test_gpu.cu:453:130: required from here
/usr/include/c++/6/tuple:495:244: error: wrong number of template arguments (6, should be 2)
return and_<not_<is_same<tuple<_Elements...>,
^, _Elements>::_NonNestedTuple() [with _SrcTuple = const std::tuple<int, int, int, int, double>&; bool = true; _Elements = {int, int, int, int, double}]’ not a return-statement
}
^
/usr/include/c++/6/tuple: In instantiation of ‘static constexpr bool std::_TC<, _Elements>::_NonNestedTuple() [with _SrcTuple = std::tuple<int, int, int, int, double>&&; bool = true; _Elements = {int, int, int, int, double}]’:
/usr/include/c++/6/tuple:686:422: required by substitution of ‘template<class ... _UElements, class _Dummy, typename std::enable_if<((std::_TC<(1ul == sizeof... (_UElements)), int, int, int, int, double>::_MoveConstructibleTuple<_UElements ...>() && std::_TC<(1ul == sizeof... (_UElements)), int, int, int, int, double>::_ImplicitlyMoveConvertibleTuple<_UElements ...>()) && std::_TC<(std::is_same<_Dummy, void>::value && (1ul == 1)), int, int, int, int, double>::_NonNestedTuple<tuple<_Elements ...>&&>()), bool>::type > constexpr std::tuple< >::tuple(std::tuple<_Args1 ...>&&) [with _UElements = {int, int, int, int, double}; _Dummy = void; typename std::enable_if<((std::_TC<(1ul == sizeof... (_UElements)), int, int, int, int, double>::_MoveConstructibleTuple<_UElements ...>() && std::_TC<(1ul == sizeof... (_UElements)), int, int, int, int, double>::_ImplicitlyMoveConvertibleTuple<_UElements ...>()) && std::_TC<(std::is_same<_Dummy, void>::value && (1ul == 1)), int, int, int, int, double>::_NonNestedTuple<tuple<_Elements ...>&&>()), bool>::type = ]’
/usr/include/c++/6/tuple:1396:58: required from ‘constexpr std::tuple<typename std::decay_and_strip<_Elements>::type ...> std::make_tuple(_Elements&& ...) [with _Elements = {int, int, int, int, double}]’
/home/user/zkself/warp-ctc/tests/test_gpu.cu:453:130: required from here
/usr/include/c++/6/tuple:495:244: error: wrong number of template arguments (6, should be 2)
return and_<not_<is_same<tuple<_Elements...>,
^, _Elements>::_NonNestedTuple() [with _SrcTuple = std::tuple<int, int, int, int, double>&&; bool = true; _Elements = {int, int, int, int, double}]’ not a return-statement
}
^
/usr/include/c++/6/tuple: In instantiation of ‘static constexpr bool std::_TC<, _Elements>::_MoveConstructibleTuple() [with _UElements = {std::tuple<int, int, int, int, double>}; bool = true; _Elements = {int, int, int, int, float}]’:
/usr/include/c++/6/tuple:626:248: required by substitution of ‘template<class ... _UElements, typename std::enable_if<(((std::_TC<(sizeof... (_UElements) == 1), int, int, int, int, float>::_NotSameTuple<_UElements ...>() && std::_TC<(1ul == sizeof... (_UElements)), int, int, int, int, float>::_MoveConstructibleTuple<_UElements ...>()) && std::_TC<(1ul == sizeof... (_UElements)), int, int, int, int, float>::_ImplicitlyMoveConvertibleTuple<_UElements ...>()) && (5ul >= 1)), bool>::type > constexpr std::tuple< >::tuple(_UElements&& ...) [with _UElements = {std::tuple<int, int, int, int, double>}; typename std::enable_if<(((std::_TC<(sizeof... (_UElements) == 1), int, int, int, int, float>::_NotSameTuple<_UElements ...>() && std::_TC<(1ul == sizeof... (_UElements)), int, int, int, int, float>::_MoveConstructibleTuple<_UElements ...>()) && std::_TC<(1ul == sizeof... (_UElements)), int, int, int, int, float>::_ImplicitlyMoveConvertibleTuple<_UElements ...>()) && (5ul >= 1)), bool>::type = ]’
/home/user/zkself/warp-ctc/tests/test_gpu.cu:453:131: required from here
/usr/include/c++/6/tuple:483:67: error: mismatched argument pack lengths while expanding ‘std::is_constructible<_Elements, _UElements&&>’
return and_<is_constructible<_Elements, _UElements&&>...>::value;
^~~~~
/usr/include/c++/6/tuple:484:1: error: body of constexpr function ‘static constexpr bool std::_TC<, _Elements>::_MoveConstructibleTuple() [with _UElements = {std::tuple<int, int, int, int, double>}; bool = true; _Elements = {int, int, int, int, float}]’ not a return-statement
}
^
/usr/include/c++/6/tuple: In instantiation of ‘static constexpr bool std::_TC<, _Elements>::_ImplicitlyMoveConvertibleTuple() [with _UElements = {std::tuple<int, int, int, int, double>}; bool = true; _Elements = {int, int, int, int, float}]’:
/usr/include/c++/6/tuple:626:362: required by substitution of ‘template<class ... _UElements, typename std::enable_if<(((std::_TC<(sizeof... (_UElements) == 1), int, int, int, int, float>::_NotSameTuple<_UElements ...>() && std::_TC<(1ul == sizeof... (_UElements)), int, int, int, int, float>::_MoveConstructibleTuple<_UElements ...>()) && std::_TC<(1ul == sizeof... (_UElements)), int, int, int, int, float>::_ImplicitlyMoveConvertibleTuple<_UElements ...>()) && (5ul >= 1)), bool>::type > constexpr std::tuple< >::tuple(_UElements&& ...) [with _UElements = {std::tuple<int, int, int, int, double>}; typename std::enable_if<(((std::_TC<(sizeof... (_UElements) == 1), int, int, int, int, float>::_NotSameTuple<_UElements ...>() && std::_TC<(1ul == sizeof... (_UElements)), int, int, int, int, float>::_MoveConstructibleTuple<_UElements ...>()) && std::_TC<(1ul == sizeof... (_UElements)), int, int, int, int, float>::_ImplicitlyMoveConvertibleTuple<_UElements ...>()) && (5ul >= 1)), bool>::type = ]’
/home/user/zkself/warp-ctc/tests/test_gpu.cu:453:131: required from here
/usr/include/c++/6/tuple:489:65: error: mismatched argument pack lengths while expanding ‘std::is_convertible<_UElements&&, _Elements>’
return and_<is_convertible<_UElements&&, _Elements>...>::value;
^~~~~
/usr/include/c++/6/tuple:490:1: error: body of constexpr function ‘static constexpr bool std::_TC<, _Elements>::_ImplicitlyMoveConvertibleTuple() [with _UElements = {std::tuple<int, int, int, int, double>}; bool = true; _Elements = {int, int, int, int, float}]’ not a return-statement
}
^
/usr/include/c++/6/tuple: In instantiation of ‘static constexpr bool std::_TC<, _Elements>::_NonNestedTuple() [with _SrcTuple = const std::tuple<int, int, int, int, double>&; bool = true; _Elements = {int, int, int, int, float}]’:
/usr/include/c++/6/tuple:662:419: required by substitution of ‘template<class ... _UElements, class _Dummy, typename std::enable_if<((std::_TC<(1ul == sizeof... (_UElements)), int, int, int, int, float>::_ConstructibleTuple<_UElements ...>() && std::_TC<(1ul == sizeof... (_UElements)), int, int, int, int, float>::_ImplicitlyConvertibleTuple<_UElements ...>()) && std::_TC<(std::is_same<_Dummy, void>::value && (1ul == 1)), int, int, int, int, float>::_NonNestedTuple<const tuple<_Elements ...>&>()), bool>::type > constexpr std::tuple< >::tuple(const std::tuple<_Args1 ...>&) [with _UElements = {int, int, int, int, double}; _Dummy = void; typename std::enable_if<((std::_TC<(1ul == sizeof... (_UElements)), int, int, int, int, float>::_ConstructibleTuple<_UElements ...>() && std::_TC<(1ul == sizeof... (_UElements)), int, int, int, int, float>::_ImplicitlyConvertibleTuple<_UElements ...>()) && std::_TC<(std::is_same<_Dummy, void>::value && (1ul == 1)), int, int, int, int, float>::_NonNestedTuple<const tuple<_Elements ...>&>()), bool>::type = ]’
/home/user/zkself/warp-ctc/tests/test_gpu.cu:453:131: required from here
/usr/include/c++/6/tuple:495:244: error: wrong number of template arguments (6, should be 2)
return and_< not_<is_same<tuple<_Elements...>,
^, _Elements>::_NonNestedTuple() [with _SrcTuple = const std::tuple<int, int, int, int, double>&; bool = true; _Elements = {int, int, int, int, float}]’ not a return-statement
}
^
/usr/include/c++/6/tuple: In instantiation of ‘static constexpr bool std::_TC<, _Elements>::_NonNestedTuple() [with _SrcTuple = std::tuple<int, int, int, int, double>&&; bool = true; _Elements = {int, int, int, int, float}]’:
/usr/include/c++/6/tuple:686:422: required by substitution of ‘template<class ... _UElements, class _Dummy, typename std::enable_if<((std::_TC<(1ul == sizeof... (_UElements)), int, int, int, int, float>::_MoveConstructibleTuple<_UElements ...>() && std::_TC<(1ul == sizeof... (_UElements)), int, int, int, int, float>::_ImplicitlyMoveConvertibleTuple<_UElements ...>()) && std::_TC<(std::is_same<_Dummy, void>::value && (1ul == 1)), int, int, int, int, float>::_NonNestedTuple<tuple<_Elements ...>&&>()), bool>::type > constexpr std::tuple< >::tuple(std::tuple<_Args1 ...>&&) [with _UElements = {int, int, int, int, double}; _Dummy = void; typename std::enable_if<((std::_TC<(1ul == sizeof... (_UElements)), int, int, int, int, float>::_MoveConstructibleTuple<_UElements ...>() && std::_TC<(1ul == sizeof... (_UElements)), int, int, int, int, float>::_ImplicitlyMoveConvertibleTuple<_UElements ...>()) && std::_TC<(std::is_same<_Dummy, void>::value && (1ul == 1)), int, int, int, int, float>::_NonNestedTuple<tuple<_Elements ...>&&>()), bool>::type = ]’
/home/user/zkself/warp-ctc/tests/test_gpu.cu:453:131: required from here
/usr/include/c++/6/tuple:495:244: error: wrong number of template arguments (6, should be 2)
return and_<not_<is_same<tuple<_Elements...>,
^, _Elements>::_NonNestedTuple() [with _SrcTuple = std::tuple<int, int, int, int, double>&&; bool = true; _Elements = {int, int, int, int, float}]’ not a return-statement
}
^
/home/user/zkself/warp-ctc/tests/test_gpu.cu: In function ‘bool run_tests()’:
/home/user/zkself/warp-ctc/tests/test_gpu.cu:453:131: error: could not convert ‘{std::make_tuple(_Elements&& ...) [with _Elements = {int, int, int, int, double}](50, 15, 1, 1.0000000000000001e-5)}’ from ‘’ to ‘std::vector<std::tuple<int, int, int, int, float> >’
std::vector<std::tuple<int, int, int, int, float>> problem_sizes =
^
/usr/include/c++/6/tuple: In instantiation of ‘static constexpr bool std::_TC<, _Elements>::_MoveConstructibleTuple() [with _UElements = {std::tuple<int, int, int, int, float>&}; bool = true; _Elements = {int, int, int, int, float}]’:
/usr/include/c++/6/tuple:626:248: required by substitution of ‘template<class ... _UElements, typename std::enable_if<(((std::_TC<(sizeof... (_UElements) == 1), int, int, int, int, float>::_NotSameTuple<_UElements ...>() && std::_TC<(1ul == sizeof... (_UElements)), int, int, int, int, float>::_MoveConstructibleTuple<_UElements ...>()) && std::_TC<(1ul == sizeof... (_UElements)), int, int, int, int, float>::_ImplicitlyMoveConvertibleTuple<_UElements ...>()) && (5ul >= 1)), bool>::type > constexpr std::tuple< >::tuple(_UElements&& ...) [with _UElements = {std::tuple<int, int, int, int, float>&}; typename std::enable_if<(((std::_TC<(sizeof... (_UElements) == 1), int, int, int, int, float>::_NotSameTuple<_UElements ...>() && std::_TC<(1ul == sizeof... (_UElements)), int, int, int, int, float>::_MoveConstructibleTuple<_UElements ...>()) && std::_TC<(1ul == sizeof... (_UElements)), int, int, int, int, float>::_ImplicitlyMoveConvertibleTuple<_UElements ...>()) && (5ul >= 1)), bool>::type = ]’
/home/user/zkself/warp-ctc/tests/test_gpu.cu:457:21: required from here
/usr/include/c++/6/tuple:483:67: error: mismatched argument pack lengths while expanding ‘std::is_constructible<_Elements, _UElements&&>’
return and_<is_constructible<_Elements, _UElements&&>...>::value;
^~~~~
/usr/include/c++/6/tuple:484:1: error: body of constexpr function ‘static constexpr bool std::_TC<, _Elements>::_MoveConstructibleTuple() [with _UElements = {std::tuple<int, int, int, int, float>&}; bool = true; _Elements = {int, int, int, int, float}]’ not a return-statement
}
^
/usr/include/c++/6/tuple: In instantiation of ‘static constexpr bool std::_TC<, _Elements>::_ImplicitlyMoveConvertibleTuple() [with _UElements = {std::tuple<int, int, int, int, float>&}; bool = true; _Elements = {int, int, int, int, float}]’:
/usr/include/c++/6/tuple:626:362: required by substitution of ‘template<class ... _UElements, typename std::enable_if<(((std::_TC<(sizeof... (_UElements) == 1), int, int, int, int, float>::_NotSameTuple<_UElements ...>() && std::_TC<(1ul == sizeof... (_UElements)), int, int, int, int, float>::_MoveConstructibleTuple<_UElements ...>()) && std::_TC<(1ul == sizeof... (_UElements)), int, int, int, int, float>::_ImplicitlyMoveConvertibleTuple<_UElements ...>()) && (5ul >= 1)), bool>::type > constexpr std::tuple< >::tuple(_UElements&& ...) [with _UElements = {std::tuple<int, int, int, int, float>&}; typename std::enable_if<(((std::_TC<(sizeof... (_UElements) == 1), int, int, int, int, float>::_NotSameTuple<_UElements ...>() && std::_TC<(1ul == sizeof... (_UElements)), int, int, int, int, float>::_MoveConstructibleTuple<_UElements ...>()) && std::_TC<(1ul == sizeof... (_UElements)), int, int, int, int, float>::_ImplicitlyMoveConvertibleTuple<_UElements ...>()) && (5ul >= 1)), bool>::type = ]’
/home/user/zkself/warp-ctc/tests/test_gpu.cu:457:21: required from here
/usr/include/c++/6/tuple:489:65: error: mismatched argument pack lengths while expanding ‘std::is_convertible<_UElements&&, _Elements>’
return and_<is_convertible<_UElements&&, _Elements>...>::value;
^~~~~
/usr/include/c++/6/tuple:490:1: error: body of constexpr function ‘static constexpr bool std::_TC<, _Elements>::_ImplicitlyMoveConvertibleTuple() [with _UElements = {std::tuple<int, int, int, int, float>&}; bool = true; _Elements = {int, int, int, int, float}]’ not a return-statement
}
^
/usr/include/c++/6/tuple: In instantiation of ‘static constexpr bool std::_TC<, _Elements>::_NonNestedTuple() [with _SrcTuple = const std::tuple<int, int, int, int, float>&; bool = true; _Elements = {int, int, int, int, float}]’:
/usr/include/c++/6/tuple:662:419: required by substitution of ‘template<class ... _UElements, class _Dummy, typename std::enable_if<((std::_TC<(1ul == sizeof... (_UElements)), int, int, int, int, float>::_ConstructibleTuple<_UElements ...>() && std::_TC<(1ul == sizeof... (_UElements)), int, int, int, int, float>::_ImplicitlyConvertibleTuple<_UElements ...>()) && std::_TC<(std::is_same<_Dummy, void>::value && (1ul == 1)), int, int, int, int, float>::_NonNestedTuple<const tuple<_Elements ...>&>()), bool>::type > constexpr std::tuple< >::tuple(const std::tuple<_Args1 ...>&) [with _UElements = {int, int, int, int, float}; _Dummy = void; typename std::enable_if<((std::_TC<(1ul == sizeof... (_UElements)), int, int, int, int, float>::_ConstructibleTuple<_UElements ...>() && std::_TC<(1ul == sizeof... (_UElements)), int, int, int, int, float>::_ImplicitlyConvertibleTuple<_UElements ...>()) && std::_TC<(std::is_same<_Dummy, void>::value && (1ul == 1)), int, int, int, int, float>::_NonNestedTuple<const tuple<_Elements ...>&>()), bool>::type = ]’
/home/user/zkself/warp-ctc/tests/test_gpu.cu:457:21: required from here
/usr/include/c++/6/tuple:495:244: error: wrong number of template arguments (6, should be 2)
return and_<not_<is_same<tuple<_Elements...>,
^, _Elements>::_NonNestedTuple() [with _SrcTuple = const std::tuple<int, int, int, int, float>&; bool = true; _Elements = {int, int, int, int, float}]’ not a return-statement
}
^
/usr/include/c++/6/tuple: In instantiation of ‘static constexpr bool std::_TC<, _Elements>::_NonNestedTuple() [with _SrcTuple = std::tuple<int, int, int, int, float>&&; bool = true; _Elements = {int, int, int, int, float}]’:
/usr/include/c++/6/tuple:686:422: required by substitution of ‘template<class ... _UElements, class _Dummy, typename std::enable_if<((std::_TC<(1ul == sizeof... (_UElements)), int, int, int, int, float>::_MoveConstructibleTuple<_UElements ...>() && std::_TC<(1ul == sizeof... (_UElements)), int, int, int, int, float>::_ImplicitlyMoveConvertibleTuple<_UElements ...>()) && std::_TC<(std::is_same<_Dummy, void>::value && (1ul == 1)), int, int, int, int, float>::_NonNestedTuple<tuple<_Elements ...>&&>()), bool>::type > constexpr std::tuple< >::tuple(std::tuple<_Args1 ...>&&) [with _UElements = {int, int, int, int, float}; _Dummy = void; typename std::enable_if<((std::_TC<(1ul == sizeof... (_UElements)), int, int, int, int, float>::_MoveConstructibleTuple<_UElements ...>() && std::_TC<(1ul == sizeof... (_UElements)), int, int, int, int, float>::_ImplicitlyMoveConvertibleTuple<_UElements ...>()) && std::_TC<(std::is_same<_Dummy, void>::value && (1ul == 1)), int, int, int, int, float>::_NonNestedTuple<tuple<_Elements ...>&&>()), bool>::type = ]’
/home/user/zkself/warp-ctc/tests/test_gpu.cu:457:21: required from here
/usr/include/c++/6/tuple:495:244: error: wrong number of template arguments (6, should be 2)
return and_<not_<is_same<tuple<_Elements...>,
^, _Elements>::_NonNestedTuple() [with _SrcTuple = std::tuple<int, int, int, int, float>&&; bool = true; _Elements = {int, int, int, int, float}]’ not a return-statement
}
^
/usr/include/c++/6/tuple: In instantiation of ‘static constexpr bool std::_TC<, _Elements>::_MoveConstructibleTuple() [with _UElements = {std::tuple<int&, int&, int&, int&, float&>}; bool = true; _Elements = {int&, int&, int&, int&, float&}]’:
/usr/include/c++/6/tuple:626:248: required by substitution of ‘template<class ... _UElements, typename std::enable_if<(((std::_TC<(sizeof... (_UElements) == 1), int&, int&, int&, int&, float&>::_NotSameTuple<_UElements ...>() && std::_TC<(1ul == sizeof... (_UElements)), int&, int&, int&, int&, float&>::_MoveConstructibleTuple<_UElements ...>()) && std::_TC<(1ul == sizeof... (_UElements)), int&, int&, int&, int&, float&>::_ImplicitlyMoveConvertibleTuple<_UElements ...>()) && (5ul >= 1)), bool>::type > constexpr std::tuple< >::tuple(_UElements&& ...) [with _UElements = {std::tuple<int&, int&, int&, int&, float&>}; typename std::enable_if<(((std::_TC<(sizeof... (_UElements) == 1), int&, int&, int&, int&, float&>::_NotSameTuple<_UElements ...>() && std::_TC<(1ul == sizeof... (_UElements)), int&, int&, int&, int&, float&>::_MoveConstructibleTuple<_UElements ...>()) && std::_TC<(1ul == sizeof... (_UElements)), int&, int&, int&, int&, float&>::_ImplicitlyMoveConvertibleTuple<_UElements ...>()) && (5ul >= 1)), bool>::type = ]’
/usr/include/c++/6/tuple:1545:43: required from ‘constexpr std::tuple<_Elements& ...> std::tie(_Elements& ...) [with _Elements = {int, int, int, int, float}]’
/home/user/zkself/warp-ctc/tests/test_gpu.cu:460:47: required from here
/usr/include/c++/6/tuple:483:67: error: mismatched argument pack lengths while expanding ‘std::is_constructible<_Elements, _UElements&&>’
return and_<is_constructible<_Elements, _UElements&&>...>::value;
^~~~~
/usr/include/c++/6/tuple:484:1: error: body of constexpr function ‘static constexpr bool std::_TC<, _Elements>::_MoveConstructibleTuple() [with _UElements = {std::tuple<int&, int&, int&, int&, float&>}; bool = true; _Elements = {int&, int&, int&, int&, float&}]’ not a return-statement
}
^
/usr/include/c++/6/tuple: In instantiation of ‘static constexpr bool std::_TC<, _Elements>::_ImplicitlyMoveConvertibleTuple() [with _UElements = {std::tuple<int&, int&, int&, int&, float&>}; bool = true; _Elements = {int&, int&, int&, int&, float&}]’:
/usr/include/c++/6/tuple:626:362: required by substitution of ‘template<class ... _UElements, typename std::enable_if<(((std::_TC<(sizeof... (_UElements) == 1), int&, int&, int&, int&, float&>::_NotSameTuple<_UElements ...>() && std::_TC<(1ul == sizeof... (_UElements)), int&, int&, int&, int&, float&>::_MoveConstructibleTuple<_UElements ...>()) && std::_TC<(1ul == sizeof... (_UElements)), int&, int&, int&, int&, float&>::_ImplicitlyMoveConvertibleTuple<_UElements ...>()) && (5ul >= 1)), bool>::type > constexpr std::tuple< >::tuple(_UElements&& ...) [with _UElements = {std::tuple<int&, int&, int&, int&, float&>}; typename std::enable_if<(((std::_TC<(sizeof... (_UElements) == 1), int&, int&, int&, int&, float&>::_NotSameTuple<_UElements ...>() && std::_TC<(1ul == sizeof... (_UElements)), int&, int&, int&, int&, float&>::_MoveConstructibleTuple<_UElements ...>()) && std::_TC<(1ul == sizeof... (_UElements)), int&, int&, int&, int&, float&>::_ImplicitlyMoveConvertibleTuple<_UElements ...>()) && (5ul >= 1)), bool>::type = ]’
/usr/include/c++/6/tuple:1545:43: required from ‘constexpr std::tuple<_Elements& ...> std::tie(_Elements& ...) [with _Elements = {int, int, int, int, float}]’
/home/user/zkself/warp-ctc/tests/test_gpu.cu:460:47: required from here
/usr/include/c++/6/tuple:489:65: error: mismatched argument pack lengths while expanding ‘std::is_convertible<_UElements&&, _Elements>’
return and_<is_convertible<_UElements&&, _Elements>...>::value;
^~~~~
/usr/include/c++/6/tuple:490:1: error: body of constexpr function ‘static constexpr bool std::_TC<, _Elements>::_ImplicitlyMoveConvertibleTuple() [with _UElements = {std::tuple<int&, int&, int&, int&, float&>}; bool = true; _Elements = {int&, int&, int&, int&, float&}]’ not a return-statement
}
^
/usr/include/c++/6/tuple: In instantiation of ‘static constexpr bool std::_TC<, _Elements>::_NonNestedTuple() [with _SrcTuple = const std::tuple<int&, int&, int&, int&, float&>&; bool = true; _Elements = {int&, int&, int&, int&, float&}]’:
/usr/include/c++/6/tuple:662:419: required by substitution of ‘template<class ... _UElements, class _Dummy, typename std::enable_if<((std::_TC<(1ul == sizeof... (_UElements)), int&, int&, int&, int&, float&>::_ConstructibleTuple<_UElements ...>() && std::_TC<(1ul == sizeof... (_UElements)), int&, int&, int&, int&, float&>::_ImplicitlyConvertibleTuple<_UElements ...>()) && std::_TC<(std::is_same<_Dummy, void>::value && (1ul == 1)), int&, int&, int&, int&, float&>::_NonNestedTuple<const tuple<_Elements ...>&>()), bool>::type > constexpr std::tuple< >::tuple(const std::tuple<_Args1 ...>&) [with _UElements = {int&, int&, int&, int&, float&}; _Dummy = void; typename std::enable_if<((std::_TC<(1ul == sizeof... (_UElements)), int&, int&, int&, int&, float&>::_ConstructibleTuple<_UElements ...>() && std::_TC<(1ul == sizeof... (_UElements)), int&, int&, int&, int&, float&>::_ImplicitlyConvertibleTuple<_UElements ...>()) && std::_TC<(std::is_same<_Dummy, void>::value && (1ul == 1)), int&, int&, int&, int&, float&>::_NonNestedTuple<const tuple<_Elements ...>&>()), bool>::type = ]’
/usr/include/c++/6/tuple:1545:43: required from ‘constexpr std::tuple<_Elements& ...> std::tie(_Elements& ...) [with _Elements = {int, int, int, int, float}]’
/home/user/zkself/warp-ctc/tests/test_gpu.cu:460:47: required from here
/usr/include/c++/6/tuple:495:244: error: wrong number of template arguments (6, should be 2)
return and_<_not<is_same<tuple<_Elements...>,
^, _Elements>::_NonNestedTuple() [with _SrcTuple = const std::tuple<int&, int&, int&, int&, float&>&; bool = true; _Elements = {int&, int&, int&, int&, float&}]’ not a return-statement
}
^
/usr/include/c++/6/tuple: In instantiation of ‘static constexpr bool std::_TC<, _Elements>::_NonNestedTuple() [with _SrcTuple = std::tuple<int&, int&, int&, int&, float&>&&; bool = true; _Elements = {int&, int&, int&, int&, float&}]’:
/usr/include/c++/6/tuple:686:422: required by substitution of ‘template<class ... _UElements, class _Dummy, typename std::enable_if<((std::_TC<(1ul == sizeof... (_UElements)), int&, int&, int&, int&, float&>::_MoveConstructibleTuple<_UElements ...>() && std::_TC<(1ul == sizeof... (_UElements)), int&, int&, int&, int&, float&>::_ImplicitlyMoveConvertibleTuple<_UElements ...>()) && std::_TC<(std::is_same<_Dummy, void>::value && (1ul == 1)), int&, int&, int&, int&, float&>::_NonNestedTuple<tuple<_Elements ...>&&>()), bool>::type > constexpr std::tuple< >::tuple(std::tuple<_Args1 ...>&&) [with _UElements = {int&, int&, int&, int&, float&}; _Dummy = void; typename std::enable_if<((std::_TC<(1ul == sizeof... (_UElements)), int&, int&, int&, int&, float&>::_MoveConstructibleTuple<_UElements ...>() && std::_TC<(1ul == sizeof... (_UElements)), int&, int&, int&, int&, float&>::_ImplicitlyMoveConvertibleTuple<_UElements ...>()) && std::_TC<(std::is_same<_Dummy, void>::value && (1ul == 1)), int&, int&, int&, int&, float&>::_NonNestedTuple<tuple<_Elements ...>&&>()), bool>::type = ]’
/usr/include/c++/6/tuple:1545:43: required from ‘constexpr std::tuple<_Elements& ...> std::tie(_Elements& ...) [with _Elements = {int, int, int, int, float}]’
/home/user/zkself/warp-ctc/tests/test_gpu.cu:460:47: required from here
/usr/include/c++/6/tuple:495:244: error: wrong number of template arguments (6, should be 2)
return and_<not_<is_same<tuple<_Elements...>,
^, _Elements>::_NonNestedTuple() [with _SrcTuple = std::tuple<int&, int&, int&, int&, float&>&&; bool = true; _Elements = {int&, int&, int&, int&, float&}]’ not a return-statement
}
^
/usr/include/c++/6/tuple: In instantiation of ‘static constexpr bool std::_TC<, _Elements>::_MoveConstructibleTuple() [with _UElements = {std::tuple<int, int, int, int, float>&}; bool = true; _Elements = {int&, int&, int&, int&, float&}]’:
/usr/include/c++/6/tuple:626:248: required by substitution of ‘template<class ... _UElements, typename std::enable_if<(((std::_TC<(sizeof... (_UElements) == 1), int&, int&, int&, int&, float&>::_NotSameTuple<_UElements ...>() && std::_TC<(1ul == sizeof... (_UElements)), int&, int&, int&, int&, float&>::_MoveConstructibleTuple<_UElements ...>()) && std::_TC<(1ul == sizeof... (_UElements)), int&, int&, int&, int&, float&>::_ImplicitlyMoveConvertibleTuple<_UElements ...>()) && (5ul >= 1)), bool>::type > constexpr std::tuple< >::tuple(_UElements&& ...) [with _UElements = {std::tuple<int, int, int, int, float>&}; typename std::enable_if<(((std::_TC<(sizeof... (_UElements) == 1), int&, int&, int&, int&, float&>::_NotSameTuple<_UElements ...>() && std::_TC<(1ul == sizeof... (_UElements)), int&, int&, int&, int&, float&>::_MoveConstructibleTuple<_UElements ...>()) && std::_TC<(1ul == sizeof... (_UElements)), int&, int&, int&, int&, float&>::_ImplicitlyMoveConvertibleTuple<_UElements ...>()) && (5ul >= 1)), bool>::type = ]’
/home/user/zkself/warp-ctc/tests/test_gpu.cu:460:52: required from here
/usr/include/c++/6/tuple:483:67: error: mismatched argument pack lengths while expanding ‘std::is_constructible<_Elements, _UElements&&>’
return _and<is_constructible<_Elements, _UElements&&>...>::value;
^~~~~
/usr/include/c++/6/tuple:484:1: error: body of constexpr function ‘static constexpr bool std::_TC<, _Elements>::_MoveConstructibleTuple() [with _UElements = {std::tuple<int, int, int, int, float>&}; bool = true; _Elements = {int&, int&, int&, int&, float&}]’ not a return-statement
}
^
/usr/include/c++/6/tuple: In instantiation of ‘static constexpr bool std::_TC<, _Elements>::_ImplicitlyMoveConvertibleTuple() [with _UElements = {std::tuple<int, int, int, int, float>&}; bool = true; _Elements = {int&, int&, int&, int&, float&}]’:
/usr/include/c++/6/tuple:626:362: required by substitution of ‘template<class ... _UElements, typename std::enable_if<(((std::_TC<(sizeof... (_UElements) == 1), int&, int&, int&, int&, float&>::_NotSameTuple<_UElements ...>() && std::_TC<(1ul == sizeof... (_UElements)), int&, int&, int&, int&, float&>::_MoveConstructibleTuple<_UElements ...>()) && std::_TC<(1ul == sizeof... (_UElements)), int&, int&, int&, int&, float&>::_ImplicitlyMoveConvertibleTuple<_UElements ...>()) && (5ul >= 1)), bool>::type > constexpr std::tuple< >::tuple(_UElements&& ...) [with _UElements = {std::tuple<int, int, int, int, float>&}; typename std::enable_if<(((std::_TC<(sizeof... (_UElements) == 1), int&, int&, int&, int&, float&>::_NotSameTuple<_UElements ...>() && std::_TC<(1ul == sizeof... (_UElements)), int&, int&, int&, int&, float&>::_MoveConstructibleTuple<_UElements ...>()) && std::_TC<(1ul == sizeof... (_UElements)), int&, int&, int&, int&, float&>::_ImplicitlyMoveConvertibleTuple<_UElements ...>()) && (5ul >= 1)), bool>::type = ]’
/home/user/zkself/warp-ctc/tests/test_gpu.cu:460:52: required from here
/usr/include/c++/6/tuple:489:65: error: mismatched argument pack lengths while expanding ‘std::is_convertible<_UElements&&, _Elements>’
return and_<is_convertible<_UElements&&, _Elements>...>::value;
^~~~~
/usr/include/c++/6/tuple:490:1: error: body of constexpr function ‘static constexpr bool std::_TC<, _Elements>::_ImplicitlyMoveConvertibleTuple() [with _UElements = {std::tuple<int, int, int, int, float>&}; bool = true; _Elements = {int&, int&, int&, int&, float&}]’ not a return-statement
}
^
/usr/include/c++/6/tuple: In instantiation of ‘static constexpr bool std::_TC<, _Elements>::_NonNestedTuple() [with _SrcTuple = const std::tuple<int, int, int, int, float>&; bool = true; _Elements = {int&, int&, int&, int&, float&}]’:
/usr/include/c++/6/tuple:662:419: required by substitution of ‘template<class ... _UElements, class _Dummy, typename std::enable_if<((std::_TC<(1ul == sizeof... (_UElements)), int&, int&, int&, int&, float&>::_ConstructibleTuple<_UElements ...>() && std::_TC<(1ul == sizeof... (_UElements)), int&, int&, int&, int&, float&>::_ImplicitlyConvertibleTuple<_UElements ...>()) && std::_TC<(std::is_same<_Dummy, void>::value && (1ul == 1)), int&, int&, int&, int&, float&>::_NonNestedTuple<const tuple<_Elements ...>&>()), bool>::type > constexpr std::tuple< >::tuple(const std::tuple<_Args1 ...>&) [with _UElements = {int, int, int, int, float}; _Dummy = void; typename std::enable_if<((std::_TC<(1ul == sizeof... (_UElements)), int&, int&, int&, int&, float&>::_ConstructibleTuple<_UElements ...>() && std::_TC<(1ul == sizeof... (_UElements)), int&, int&, int&, int&, float&>::_ImplicitlyConvertibleTuple<_UElements ...>()) && std::_TC<(std::is_same<_Dummy, void>::value && (1ul == 1)), int&, int&, int&, int&, float&>::_NonNestedTuple<const tuple<_Elements ...>&>()), bool>::type = ]’
/home/user/zkself/warp-ctc/tests/test_gpu.cu:460:52: required from here
/usr/include/c++/6/tuple:495:244: error: wrong number of template arguments (6, should be 2)
return and_<not_<is_same<tuple<_Elements...>,
^, _Elements>::_NonNestedTuple() [with _SrcTuple = const std::tuple<int, int, int, int, float>&; bool = true; _Elements = {int&, int&, int&, int&, float&}]’ not a return-statement
}
^
/usr/include/c++/6/tuple: In instantiation of ‘static constexpr bool std::_TC<, _Elements>::_NonNestedTuple() [with _SrcTuple = std::tuple<int, int, int, int, float>&&; bool = true; _Elements = {int&, int&, int&, int&, float&}]’:
/usr/include/c++/6/tuple:686:422: required by substitution of ‘template<class ... _UElements, class _Dummy, typename std::enable_if<((std::_TC<(1ul == sizeof... (_UElements)), int&, int&, int&, int&, float&>::_MoveConstructibleTuple<_UElements ...>() && std::_TC<(1ul == sizeof... (_UElements)), int&, int&, int&, int&, float&>::_ImplicitlyMoveConvertibleTuple<_UElements ...>()) && std::_TC<(std::is_same<_Dummy, void>::value && (1ul == 1)), int&, int&, int&, int&, float&>::_NonNestedTuple<tuple<_Elements ...>&&>()), bool>::type > constexpr std::tuple< >::tuple(std::tuple<_Args1 ...>&&) [with _UElements = {int, int, int, int, float}; _Dummy = void; typename std::enable_if<((std::_TC<(1ul == sizeof... (_UElements)), int&, int&, int&, int&, float&>::_MoveConstructibleTuple<_UElements ...>() && std::_TC<(1ul == sizeof... (_UElements)), int&, int&, int&, int&, float&>::_ImplicitlyMoveConvertibleTuple<_UElements ...>()) && std::_TC<(std::is_same<_Dummy, void>::value && (1ul == 1)), int&, int&, int&, int&, float&>::_NonNestedTuple<tuple<_Elements ...>&&>()), bool>::type = ]’
/home/user/zkself/warp-ctc/tests/test_gpu.cu:460:52: required from here
/usr/include/c++/6/tuple:495:244: error: wrong number of template arguments (6, should be 2)
return and_<not_<is_same<tuple<_Elements...>,
^, _Elements>::_NonNestedTuple() [with _SrcTuple = std::tuple<int, int, int, int, float>&&; bool = true; _Elements = {int&, int&, int&, int&, float&}]’ not a return-statement
}
^
CMake Error at test_gpu_generated_test_gpu.cu.o.cmake:266 (message):
Error generating file
/home/user/zkself/warp-ctc/build/CMakeFiles/test_gpu.dir/tests/./test_gpu_generated_test_gpu.cu.o
/usr/include/c++/6/type_traits:1558:8: note: provided for ‘template<class _From, class _To> struct std::is_convertible’ struct is_convertible ^
~~~~~ /usr/include/c++/6/tuple:502:1: error: body of constexpr function ‘static constexpr bool std::_TC</usr/include/c++/6/type_traits:1558:8: note: provided for ‘template<class _From, class _To> struct std::is_convertible’ struct is_convertible ^
~~~~~ /usr/include/c++/6/tuple:502:1: error: body of constexpr function ‘static constexpr bool std::_TC</usr/include/c++/6/type_traits:1558:8: note: provided for ‘template<class _From, class _To> struct std::is_convertible’ struct is_convertible ^
~~~~~ /usr/include/c++/6/tuple:502:1: error: body of constexpr function ‘static constexpr bool std::_TC</usr/include/c++/6/type_traits:1558:8: note: provided for ‘template<class _From, class _To> struct std::is_convertible’ struct is_convertible ^
~~~~~ /usr/include/c++/6/tuple:502:1: error: body of constexpr function ‘static constexpr bool std::_TC</usr/include/c++/6/type_traits:1558:8: note: provided for ‘template<class _From, class _To> struct std::is_convertible’ struct is_convertible ^
~~~~~ /usr/include/c++/6/tuple:502:1: error: body of constexpr function ‘static constexpr bool std::_TC</usr/include/c++/6/type_traits:1558:8: note: provided for ‘template<class _From, class _To> struct std::is_convertible’ struct is_convertible ^
~~~~~ /usr/include/c++/6/tuple:502:1: error: body of constexpr function ‘static constexpr bool std::_TC</usr/include/c++/6/type_traits:1558:8: note: provided for ‘template<class _From, class _To> struct std::is_convertible’ struct is_convertible ^
~~~~~ /usr/include/c++/6/tuple:502:1: error: body of constexpr function ‘static constexpr bool std::_TC</usr/include/c++/6/type_traits:1558:8: note: provided for ‘template<class _From, class _To> struct std::is_convertible’ struct is_convertible ^
~~~~~ /usr/include/c++/6/tuple:502:1: error: body of constexpr function ‘static constexpr bool std::_TC</usr/include/c++/6/type_traits:1558:8: note: provided for ‘template<class _From, class _To> struct std::is_convertible’ struct is_convertible ^
~~~~~ /usr/include/c++/6/tuple:502:1: error: body of constexpr function ‘static constexpr bool std::_TC</usr/include/c++/6/type_traits:1558:8: note: provided for ‘template<class _From, class _To> struct std::is_convertible’ struct is_convertible ^
~~~~~ /usr/include/c++/6/tuple:502:1: error: body of constexpr function ‘static constexpr bool std::_TC<CMakeFiles/test_gpu.dir/build.make:353: recipe for target 'CMakeFiles/test_gpu.dir/tests/test_gpu_generated_test_gpu.cu.o' failed make[2]: [CMakeFiles/test_gpu.dir/tests/test_gpu_generated_test_gpu.cu.o] Error 1 CMakeFiles/Makefile2:104: recipe for target 'CMakeFiles/test_gpu.dir/all' failed make[1]: [CMakeFiles/test_gpu.dir/all] Error 2 Makefile:127: recipe for target 'all' failed make: *** [all] Error 2