‘std::map’ is defined in header ‘<map>’; did you forget to ‘#include <map>’?
Alessandro-Barbieri opened this issue · 1 comments
Alessandro-Barbieri commented
Gentoo's CI build failed with
>>> Compiling source in /var/tmp/portage/dev-cpp/vexcl-1.4.2-r1/work/vexcl-1.4.2 ...
* Source directory (CMAKE_USE_DIR): "/var/tmp/portage/dev-cpp/vexcl-1.4.2-r1/work/vexcl-1.4.2"
* Build directory (BUILD_DIR): "/var/tmp/portage/dev-cpp/vexcl-1.4.2-r1/work/vexcl-1.4.2_build"
ninja -v -j2 -l0
[1/77] /usr/bin/x86_64-pc-linux-gnu-g++ -DBOOST_ALL_NO_LIB -DBOOST_ATOMIC_DYN_LINK -DBOOST_FILESYSTEM_DYN_LINK -DBOOST_SYSTEM_DYN_LINK -DBOOST_TEST_DYN_LINK -DBOOST_THREAD_DYN_LINK -DBOOST_UNIT_TEST_FRAMEWORK_DYN_LINK -DVEXCL_BACKEND_OPENCL -I/var/tmp/portage/dev-cpp/vexcl-1.4.2-r1/work/vexcl-1.4.2 -O2 -pipe -march=x86-64 -frecord-gcc-switches -fno-diagnostics-color -Wall -Wno-missing-braces -Wno-deprecated-declarations -Wno-ignored-attributes -Wno-unused-local-typedefs -Wno-variadic-macros -Wno-catch-value -MD -MT tests/CMakeFiles/context.dir/context.cpp.o -MF tests/CMakeFiles/context.dir/context.cpp.o.d -o tests/CMakeFiles/context.dir/context.cpp.o -c /var/tmp/portage/dev-cpp/vexcl-1.4.2-r1/work/vexcl-1.4.2/tests/context.cpp
In file included from /usr/include/CL/cl.h:20,
from /usr/include/CL/opencl.h:24,
from /var/tmp/portage/dev-cpp/vexcl-1.4.2-r1/work/vexcl-1.4.2/CL/cl.hpp:170,
from /var/tmp/portage/dev-cpp/vexcl-1.4.2-r1/work/vexcl-1.4.2/vexcl/backend/opencl.hpp:39,
from /var/tmp/portage/dev-cpp/vexcl-1.4.2-r1/work/vexcl-1.4.2/vexcl/backend.hpp:85,
from /var/tmp/portage/dev-cpp/vexcl-1.4.2-r1/work/vexcl-1.4.2/vexcl/devlist.hpp:39,
from /var/tmp/portage/dev-cpp/vexcl-1.4.2-r1/work/vexcl-1.4.2/tests/context.cpp:3:
/usr/include/CL/cl_version.h:22:104: note: ‘#pragma message: cl_version.h: CL_TARGET_OPENCL_VERSION is not defined. Defaulting to 300 (OpenCL 3.0)’
22 | #pragma message("cl_version.h: CL_TARGET_OPENCL_VERSION is not defined. Defaulting to 300 (OpenCL 3.0)")
| ^
[2/77] : && /usr/bin/x86_64-pc-linux-gnu-g++ -O2 -pipe -march=x86-64 -frecord-gcc-switches -fno-diagnostics-color -Wl,-O1 -Wl,--as-needed -Wl,--defsym=__gentoo_check_ldflags__=0 tests/CMakeFiles/context.dir/context.cpp.o -o tests/context /usr/lib64/libboost_unit_test_framework.so.1.77.0 /usr/lib64/libboost_filesystem.so.1.77.0 /usr/lib64/libboost_atomic.so.1.77.0 /usr/lib64/libboost_system.so.1.77.0 /usr/lib64/libboost_thread.so.1.77.0 -lpthread /usr/lib64/libOpenCL.so && :
[3/77] /usr/bin/x86_64-pc-linux-gnu-g++ -DBOOST_ALL_NO_LIB -DBOOST_ATOMIC_DYN_LINK -DBOOST_FILESYSTEM_DYN_LINK -DBOOST_SYSTEM_DYN_LINK -DBOOST_TEST_DYN_LINK -DBOOST_THREAD_DYN_LINK -DBOOST_UNIT_TEST_FRAMEWORK_DYN_LINK -DVEXCL_BACKEND_OPENCL -I/var/tmp/portage/dev-cpp/vexcl-1.4.2-r1/work/vexcl-1.4.2 -O2 -pipe -march=x86-64 -frecord-gcc-switches -fno-diagnostics-color -Wall -Wno-missing-braces -Wno-deprecated-declarations -Wno-ignored-attributes -Wno-unused-local-typedefs -Wno-variadic-macros -Wno-catch-value -MD -MT tests/CMakeFiles/multiple_objects.dir/dummy1.cpp.o -MF tests/CMakeFiles/multiple_objects.dir/dummy1.cpp.o.d -o tests/CMakeFiles/multiple_objects.dir/dummy1.cpp.o -c /var/tmp/portage/dev-cpp/vexcl-1.4.2-r1/work/vexcl-1.4.2/tests/dummy1.cpp
In file included from /usr/include/CL/cl.h:20,
from /usr/include/CL/opencl.h:24,
from /var/tmp/portage/dev-cpp/vexcl-1.4.2-r1/work/vexcl-1.4.2/CL/cl.hpp:170,
from /var/tmp/portage/dev-cpp/vexcl-1.4.2-r1/work/vexcl-1.4.2/vexcl/backend/opencl.hpp:39,
from /var/tmp/portage/dev-cpp/vexcl-1.4.2-r1/work/vexcl-1.4.2/vexcl/backend.hpp:85,
from /var/tmp/portage/dev-cpp/vexcl-1.4.2-r1/work/vexcl-1.4.2/vexcl/vexcl.hpp:34,
from /var/tmp/portage/dev-cpp/vexcl-1.4.2-r1/work/vexcl-1.4.2/tests/dummy1.cpp:3:
/usr/include/CL/cl_version.h:22:104: note: ‘#pragma message: cl_version.h: CL_TARGET_OPENCL_VERSION is not defined. Defaulting to 300 (OpenCL 3.0)’
22 | #pragma message("cl_version.h: CL_TARGET_OPENCL_VERSION is not defined. Defaulting to 300 (OpenCL 3.0)")
| ^
[4/77] /usr/bin/x86_64-pc-linux-gnu-g++ -DBOOST_ALL_NO_LIB -DBOOST_ATOMIC_DYN_LINK -DBOOST_FILESYSTEM_DYN_LINK -DBOOST_SYSTEM_DYN_LINK -DBOOST_TEST_DYN_LINK -DBOOST_THREAD_DYN_LINK -DBOOST_UNIT_TEST_FRAMEWORK_DYN_LINK -DVEXCL_BACKEND_OPENCL -I/var/tmp/portage/dev-cpp/vexcl-1.4.2-r1/work/vexcl-1.4.2 -O2 -pipe -march=x86-64 -frecord-gcc-switches -fno-diagnostics-color -Wall -Wno-missing-braces -Wno-deprecated-declarations -Wno-ignored-attributes -Wno-unused-local-typedefs -Wno-variadic-macros -Wno-catch-value -MD -MT tests/CMakeFiles/multiple_objects.dir/dummy2.cpp.o -MF tests/CMakeFiles/multiple_objects.dir/dummy2.cpp.o.d -o tests/CMakeFiles/multiple_objects.dir/dummy2.cpp.o -c /var/tmp/portage/dev-cpp/vexcl-1.4.2-r1/work/vexcl-1.4.2/tests/dummy2.cpp
FAILED: tests/CMakeFiles/multiple_objects.dir/dummy2.cpp.o
/usr/bin/x86_64-pc-linux-gnu-g++ -DBOOST_ALL_NO_LIB -DBOOST_ATOMIC_DYN_LINK -DBOOST_FILESYSTEM_DYN_LINK -DBOOST_SYSTEM_DYN_LINK -DBOOST_TEST_DYN_LINK -DBOOST_THREAD_DYN_LINK -DBOOST_UNIT_TEST_FRAMEWORK_DYN_LINK -DVEXCL_BACKEND_OPENCL -I/var/tmp/portage/dev-cpp/vexcl-1.4.2-r1/work/vexcl-1.4.2 -O2 -pipe -march=x86-64 -frecord-gcc-switches -fno-diagnostics-color -Wall -Wno-missing-braces -Wno-deprecated-declarations -Wno-ignored-attributes -Wno-unused-local-typedefs -Wno-variadic-macros -Wno-catch-value -MD -MT tests/CMakeFiles/multiple_objects.dir/dummy2.cpp.o -MF tests/CMakeFiles/multiple_objects.dir/dummy2.cpp.o.d -o tests/CMakeFiles/multiple_objects.dir/dummy2.cpp.o -c /var/tmp/portage/dev-cpp/vexcl-1.4.2-r1/work/vexcl-1.4.2/tests/dummy2.cpp
In file included from /usr/include/CL/cl.h:20,
from /usr/include/CL/opencl.h:24,
from /var/tmp/portage/dev-cpp/vexcl-1.4.2-r1/work/vexcl-1.4.2/CL/cl.hpp:170,
from /var/tmp/portage/dev-cpp/vexcl-1.4.2-r1/work/vexcl-1.4.2/vexcl/backend/opencl.hpp:39,
from /var/tmp/portage/dev-cpp/vexcl-1.4.2-r1/work/vexcl-1.4.2/vexcl/backend.hpp:85,
from /var/tmp/portage/dev-cpp/vexcl-1.4.2-r1/work/vexcl-1.4.2/vexcl/vexcl.hpp:34,
from /var/tmp/portage/dev-cpp/vexcl-1.4.2-r1/work/vexcl-1.4.2/tests/dummy2.cpp:2:
/usr/include/CL/cl_version.h:22:104: note: ‘#pragma message: cl_version.h: CL_TARGET_OPENCL_VERSION is not defined. Defaulting to 300 (OpenCL 3.0)’
22 | #pragma message("cl_version.h: CL_TARGET_OPENCL_VERSION is not defined. Defaulting to 300 (OpenCL 3.0)")
| ^
In file included from /var/tmp/portage/dev-cpp/vexcl-1.4.2-r1/work/vexcl-1.4.2/vexcl/backend/opencl.hpp:43,
from /var/tmp/portage/dev-cpp/vexcl-1.4.2-r1/work/vexcl-1.4.2/vexcl/backend.hpp:85,
from /var/tmp/portage/dev-cpp/vexcl-1.4.2-r1/work/vexcl-1.4.2/vexcl/vexcl.hpp:34,
from /var/tmp/portage/dev-cpp/vexcl-1.4.2-r1/work/vexcl-1.4.2/tests/dummy2.cpp:2:
/var/tmp/portage/dev-cpp/vexcl-1.4.2-r1/work/vexcl-1.4.2/vexcl/backend/opencl/filter.hpp:203:25: error: ‘map’ in namespace ‘std’ does not name a template type
203 | static std::map<cl_device_id, std::string> get_uids() {
| ^~~
In file included from /var/tmp/portage/dev-cpp/vexcl-1.4.2-r1/work/vexcl-1.4.2/vexcl/backend/opencl.hpp:43,
from /var/tmp/portage/dev-cpp/vexcl-1.4.2-r1/work/vexcl-1.4.2/vexcl/backend.hpp:85,
from /var/tmp/portage/dev-cpp/vexcl-1.4.2-r1/work/vexcl-1.4.2/vexcl/vexcl.hpp:34,
from /var/tmp/portage/dev-cpp/vexcl-1.4.2-r1/work/vexcl-1.4.2/tests/dummy2.cpp:2:
/var/tmp/portage/dev-cpp/vexcl-1.4.2-r1/work/vexcl-1.4.2/vexcl/backend/opencl/filter.hpp:44:1: note: ‘std::map’ is defined in header ‘<map>’; did you forget to ‘#include <map>’?
43 | #include <boost/filesystem.hpp>
+++ |+#include <map>
44 | #include <boost/config.hpp>
In file included from /var/tmp/portage/dev-cpp/vexcl-1.4.2-r1/work/vexcl-1.4.2/vexcl/backend/opencl.hpp:43,
from /var/tmp/portage/dev-cpp/vexcl-1.4.2-r1/work/vexcl-1.4.2/vexcl/backend.hpp:85,
from /var/tmp/portage/dev-cpp/vexcl-1.4.2-r1/work/vexcl-1.4.2/vexcl/vexcl.hpp:34,
from /var/tmp/portage/dev-cpp/vexcl-1.4.2-r1/work/vexcl-1.4.2/tests/dummy2.cpp:2:
/var/tmp/portage/dev-cpp/vexcl-1.4.2-r1/work/vexcl-1.4.2/vexcl/backend/opencl/filter.hpp: In member function ‘bool vex::Filter::ExclusiveFilter::operator()(const cl::Device&) const’:
/var/tmp/portage/dev-cpp/vexcl-1.4.2-r1/work/vexcl-1.4.2/vexcl/backend/opencl/filter.hpp:283:29: error: ‘map’ in namespace ‘std’ does not name a template type
283 | static std::map<cl_device_id, std::string> dev_uids = get_uids();
| ^~~
/var/tmp/portage/dev-cpp/vexcl-1.4.2-r1/work/vexcl-1.4.2/vexcl/backend/opencl/filter.hpp:283:24: note: ‘std::map’ is defined in header ‘<map>’; did you forget to ‘#include <map>’?
283 | static std::map<cl_device_id, std::string> dev_uids = get_uids();
| ^~~
/var/tmp/portage/dev-cpp/vexcl-1.4.2-r1/work/vexcl-1.4.2/vexcl/backend/opencl/filter.hpp:286:56: error: ‘dev_uids’ was not declared in this scope
286 | std::unique_ptr<locker> lck(new locker(dev_uids[d()]));
| ^~~~~~~~
[5/77] /usr/bin/x86_64-pc-linux-gnu-g++ -DBOOST_ALL_NO_LIB -DBOOST_ATOMIC_DYN_LINK -DBOOST_FILESYSTEM_DYN_LINK -DBOOST_SYSTEM_DYN_LINK -DBOOST_TEST_DYN_LINK -DBOOST_THREAD_DYN_LINK -DBOOST_UNIT_TEST_FRAMEWORK_DYN_LINK -DVEXCL_BACKEND_OPENCL -I/var/tmp/portage/dev-cpp/vexcl-1.4.2-r1/work/vexcl-1.4.2 -O2 -pipe -march=x86-64 -frecord-gcc-switches -fno-diagnostics-color -Wall -Wno-missing-braces -Wno-deprecated-declarations -Wno-ignored-attributes -Wno-unused-local-typedefs -Wno-variadic-macros -Wno-catch-value -MD -MT tests/CMakeFiles/reinterpret.dir/reinterpret.cpp.o -MF tests/CMakeFiles/reinterpret.dir/reinterpret.cpp.o.d -o tests/CMakeFiles/reinterpret.dir/reinterpret.cpp.o -c /var/tmp/portage/dev-cpp/vexcl-1.4.2-r1/work/vexcl-1.4.2/tests/reinterpret.cpp
In file included from /usr/include/CL/cl.h:20,
from /usr/include/CL/opencl.h:24,
from /var/tmp/portage/dev-cpp/vexcl-1.4.2-r1/work/vexcl-1.4.2/CL/cl.hpp:170,
from /var/tmp/portage/dev-cpp/vexcl-1.4.2-r1/work/vexcl-1.4.2/vexcl/backend/opencl.hpp:39,
from /var/tmp/portage/dev-cpp/vexcl-1.4.2-r1/work/vexcl-1.4.2/vexcl/backend.hpp:85,
from /var/tmp/portage/dev-cpp/vexcl-1.4.2-r1/work/vexcl-1.4.2/vexcl/vector.hpp:49,
from /var/tmp/portage/dev-cpp/vexcl-1.4.2-r1/work/vexcl-1.4.2/tests/reinterpret.cpp:3:
/usr/include/CL/cl_version.h:22:104: note: ‘#pragma message: cl_version.h: CL_TARGET_OPENCL_VERSION is not defined. Defaulting to 300 (OpenCL 3.0)’
22 | #pragma message("cl_version.h: CL_TARGET_OPENCL_VERSION is not defined. Defaulting to 300 (OpenCL 3.0)")
| ^
ninja: build stopped: subcommand failed.