Lots of compile errors using cl2.hpp

Hi all…

Running Ubutnu 16.04
Eclipse Oxygen

Just created a brand new C++ project, Right now this is all it is.


#define CL_HPP_ENABLE_EXCEPTIONS
#define CL_HPP_TARGET_OPENCL_VERSION 200

#include <CL/cl2.hpp>
#include <iostream>
#include <vector>
#include <memory>
#include <algorithm>

const int numElements = 32;

int main()
{
    return 0;
}

I have ensured that Eclipse is referencing in my OpenCL header files, library file and what not. However, when I compile, I’m getting TONS of compilation errors. I was hoping someone might be able to give me some insight as to why just including the cl2 header would cause all these errors. My guess is that I might just need to configure Eclipse a particular way? Just not sure.


using atomic_svm_vector = vector<T, cl::SVMAllocator<int, cl::SVMTraitAtomic<>>>;
 ^
/opt/intel/opencl/include/CL/cl2.hpp:3667:9: error: ‘size_type’ has not been declared
         size_type size,
         ^
/opt/intel/opencl/include/CL/cl2.hpp:3691:9: error: ‘size_type’ has not been declared
         size_type size,
         ^
/opt/intel/opencl/include/CL/cl2.hpp:3815:18: error: expected ‘,’ or ‘...’ before ‘&&’ token
     Buffer(Buffer&& buf) CL_HPP_NOEXCEPT_ : Memory(std::move(buf)) {}
                  ^
/opt/intel/opencl/include/CL/cl2.hpp:3815:24: error: invalid constructor; you probably meant ‘cl::Buffer (const cl::Buffer&)’
     Buffer(Buffer&& buf) CL_HPP_NOEXCEPT_ : Memory(std::move(buf)) {}
                        ^
/opt/intel/opencl/include/CL/cl2.hpp:3820:32: error: expected ‘,’ or ‘...’ before ‘&&’ token
     Buffer& operator = (Buffer &&buf)
                                ^
/opt/intel/opencl/include/CL/cl2.hpp: In constructor ‘cl::Buffer::Buffer(IteratorType, IteratorType, bool, bool, cl_int*)’:
/opt/intel/opencl/include/CL/cl2.hpp:3734:9: error: ‘size_type’ was not declared in this scope
         size_type size = sizeof(DataType)*(endIterator - startIterator);
         ^
/opt/intel/opencl/include/CL/cl2.hpp:3739:58: error: ‘size’ was not declared in this scope
             object_ = ::clCreateBuffer(context(), flags, size, static_cast<DataType*>(&*startIterator), &error);
                                                          ^
/opt/intel/opencl/include/CL/cl2.hpp:3741:58: error: ‘size’ was not declared in this scope
             object_ = ::clCreateBuffer(context(), flags, size, 0, &error);
                                                          ^
/opt/intel/opencl/include/CL/cl2.hpp: In member function ‘cl::Buffer& cl::Buffer::operator=(const cl::Buffer&)’:
/opt/intel/opencl/include/CL/cl2.hpp:3808:30: error: call of overloaded ‘operator=(const cl::Buffer&)’ is ambiguous
         Memory::operator=(buf);
                              ^
/opt/intel/opencl/include/CL/cl2.hpp:3202:13: note: candidate: cl::Memory& cl::Memory::operator=(const cl::Memory&)
     Memory& operator = (const Memory &mem)
             ^
/opt/intel/opencl/include/CL/cl2.hpp:3216:13: note: candidate: cl::Memory& cl::Memory::operator=(cl::Memory)
     Memory& operator = (Memory &&mem)
             ^
/opt/intel/opencl/include/CL/cl2.hpp: In member function ‘cl::Buffer& cl::Buffer::operator=(cl::Buffer)’:
/opt/intel/opencl/include/CL/cl2.hpp:3822:27: error: ‘move’ is not a member of ‘std’
         Memory::operator=(std::move(buf));
                           ^
/opt/intel/opencl/include/CL/cl2.hpp:3822:37: error: ‘buf’ was not declared in this scope
         Memory::operator=(std::move(buf));
                                     ^
/opt/intel/opencl/include/CL/cl2.hpp: At global scope:
/opt/intel/opencl/include/CL/cl2.hpp:4040:22: error: expected ‘,’ or ‘...’ before ‘&&’ token
     BufferGL(BufferGL&& buf) CL_HPP_NOEXCEPT_ : Buffer(std::move(buf)) {}
                      ^
/opt/intel/opencl/include/CL/cl2.hpp:4040:28: error: invalid constructor; you probably meant ‘cl::BufferGL (const cl::BufferGL&)’
     BufferGL(BufferGL&& buf) CL_HPP_NOEXCEPT_ : Buffer(std::move(buf)) {}
                            ^
/opt/intel/opencl/include/CL/cl2.hpp:4045:36: error: expected ‘,’ or ‘...’ before ‘&&’ token
     BufferGL& operator = (BufferGL &&buf)
                                    ^
/opt/intel/opencl/include/CL/cl2.hpp: In member function ‘cl::BufferGL& cl::BufferGL::operator=(const cl::BufferGL&)’:
/opt/intel/opencl/include/CL/cl2.hpp:4033:30: error: call of overloaded ‘operator=(const cl::BufferGL&)’ is ambiguous
         Buffer::operator=(buf);
                              ^
/opt/intel/opencl/include/CL/cl2.hpp:3806:13: note: candidate: cl::Buffer& cl::Buffer::operator=(const cl::Buffer&)
     Buffer& operator = (const Buffer &buf)
             ^
/opt/intel/opencl/include/CL/cl2.hpp:3820:13: note: candidate: cl::Buffer& cl::Buffer::operator=(cl::Buffer)
     Buffer& operator = (Buffer &&buf)
             ^
/opt/intel/opencl/include/CL/cl2.hpp: In member function ‘cl::BufferGL& cl::BufferGL::operator=(cl::BufferGL)’:
/opt/intel/opencl/include/CL/cl2.hpp:4047:27: error: ‘move’ is not a member of ‘std’
         Buffer::operator=(std::move(buf));
                           ^
/opt/intel/opencl/include/CL/cl2.hpp:4047:37: error: ‘buf’ was not declared in this scope
         Buffer::operator=(std::move(buf));
                                     ^
/opt/intel/opencl/include/CL/cl2.hpp: At global scope:
/opt/intel/opencl/include/CL/cl2.hpp:4137:34: error: expected ‘,’ or ‘...’ before ‘&&’ token
     BufferRenderGL(BufferRenderGL&& buf) CL_HPP_NOEXCEPT_ : Buffer(std::move(buf)) {}
                                  ^
/opt/intel/opencl/include/CL/cl2.hpp:4137:40: error: invalid constructor; you probably meant ‘cl::BufferRenderGL (const cl::BufferRenderGL&)’
     BufferRenderGL(BufferRenderGL&& buf) CL_HPP_NOEXCEPT_ : Buffer(std::move(buf)) {}
                                        ^
/opt/intel/opencl/include/CL/cl2.hpp:4142:48: error: expected ‘,’ or ‘...’ before ‘&&’ token
     BufferRenderGL& operator = (BufferRenderGL &&buf)
                                                ^
/opt/intel/opencl/include/CL/cl2.hpp: In member function ‘cl::BufferRenderGL& cl::BufferRenderGL::operator=(const cl::BufferRenderGL&)’:
/opt/intel/opencl/include/CL/cl2.hpp:4130:30: error: call of overloaded ‘operator=(const cl::BufferRenderGL&)’ is ambiguous
         Buffer::operator=(buf);
                              ^
/opt/intel/opencl/include/CL/cl2.hpp:3806:13: note: candidate: cl::Buffer& cl::Buffer::operator=(const cl::Buffer&)
     Buffer& operator = (const Buffer &buf)
             ^
/opt/intel/opencl/include/CL/cl2.hpp:3820:13: note: candidate: cl::Buffer& cl::Buffer::operator=(cl::Buffer)
     Buffer& operator = (Buffer &&buf)
             ^
/opt/intel/opencl/include/CL/cl2.hpp: In member function ‘cl::BufferRenderGL& cl::BufferRenderGL::operator=(cl::BufferRenderGL)’:
/opt/intel/opencl/include/CL/cl2.hpp:4144:27: error: ‘move’ is not a member of ‘std’
         Buffer::operator=(std::move(buf));
                           ^
/opt/intel/opencl/include/CL/cl2.hpp:4144:37: error: ‘buf’ was not declared in this scope
         Buffer::operator=(std::move(buf));
                                     ^
/opt/intel/opencl/include/CL/cl2.hpp: At global scope:
/opt/intel/opencl/include/CL/cl2.hpp:4208:16: error: expected ‘,’ or ‘...’ before ‘&&’ token
     Image(Image&& img) CL_HPP_NOEXCEPT_ : Memory(std::move(img)) {}
                ^
/opt/intel/opencl/include/CL/cl2.hpp:4208:22: error: invalid constructor; you probably meant ‘cl::Image (const cl::Image&)’
     Image(Image&& img) CL_HPP_NOEXCEPT_ : Memory(std::move(img)) {}
                      ^
/opt/intel/opencl/include/CL/cl2.hpp:4213:30: error: expected ‘,’ or ‘...’ before ‘&&’ token
     Image& operator = (Image &&img)
                              ^
/opt/intel/opencl/include/CL/cl2.hpp: In member function ‘cl::Image& cl::Image::operator=(const cl::Image&)’:
/opt/intel/opencl/include/CL/cl2.hpp:4201:30: error: call of overloaded ‘operator=(const cl::Image&)’ is ambiguous
         Memory::operator=(img);
                              ^
/opt/intel/opencl/include/CL/cl2.hpp:3202:13: note: candidate: cl::Memory& cl::Memory::operator=(const cl::Memory&)
     Memory& operator = (const Memory &mem)
             ^
/opt/intel/opencl/include/CL/cl2.hpp:3216:13: note: candidate: cl::Memory& cl::Memory::operator=(cl::Memory)
     Memory& operator = (Memory &&mem)
             ^
/opt/intel/opencl/include/CL/cl2.hpp: In member function ‘cl::Image& cl::Image::operator=(cl::Image)’:
/opt/intel/opencl/include/CL/cl2.hpp:4215:27: error: ‘move’ is not a member of ‘std’
         Memory::operator=(std::move(img));
                           ^
/opt/intel/opencl/include/CL/cl2.hpp:4215:37: error: ‘img’ was not declared in this scope
         Memory::operator=(std::move(img));
                                     ^
/opt/intel/opencl/include/CL/cl2.hpp: At global scope:
/opt/intel/opencl/include/CL/cl2.hpp:4263:9: error: ‘size_type’ has not been declared
         size_type width,
         ^
/opt/intel/opencl/include/CL/cl2.hpp:4328:20: error: expected ‘,’ or ‘...’ before ‘&&’ token
     Image1D(Image1D&& img) CL_HPP_NOEXCEPT_ : Image(std::move(img)) {}
                    ^
/opt/intel/opencl/include/CL/cl2.hpp:4328:26: error: invalid constructor; you probably meant ‘cl::Image1D (const cl::Image1D&)’
     Image1D(Image1D&& img) CL_HPP_NOEXCEPT_ : Image(std::move(img)) {}
                          ^
/opt/intel/opencl/include/CL/cl2.hpp:4333:34: error: expected ‘,’ or ‘...’ before ‘&&’ token
     Image1D& operator = (Image1D &&img)
                                  ^
/opt/intel/opencl/include/CL/cl2.hpp: In constructor ‘cl::Image1D::Image1D(const cl::Context&, cl_mem_flags, cl::ImageFormat, int, void*, cl_int*)’:
/opt/intel/opencl/include/CL/cl2.hpp:4273:9: warning: narrowing conversion of ‘width’ from ‘int’ to ‘size_t {aka long unsigned int}’ inside { } is ill-formed in C++11 [-Wnarrowing]
         };
         ^
/opt/intel/opencl/include/CL/cl2.hpp: In member function ‘cl::Image1D& cl::Image1D::operator=(const cl::Image1D&)’:
/opt/intel/opencl/include/CL/cl2.hpp:4321:29: error: call of overloaded ‘operator=(const cl::Image1D&)’ is ambiguous
         Image::operator=(img);
                             ^
/opt/intel/opencl/include/CL/cl2.hpp:4199:12: note: candidate: cl::Image& cl::Image::operator=(const cl::Image&)
     Image& operator = (const Image &img)
            ^
/opt/intel/opencl/include/CL/cl2.hpp:4213:12: note: candidate: cl::Image& cl::Image::operator=(cl::Image)
     Image& operator = (Image &&img)
            ^
/opt/intel/opencl/include/CL/cl2.hpp: In member function ‘cl::Image1D& cl::Image1D::operator=(cl::Image1D)’:
/opt/intel/opencl/include/CL/cl2.hpp:4335:26: error: ‘move’ is not a member of ‘std’
         Image::operator=(std::move(img));
                          ^
/opt/intel/opencl/include/CL/cl2.hpp:4335:36: error: ‘img’ was not declared in this scope
         Image::operator=(std::move(img));
                                    ^
/opt/intel/opencl/include/CL/cl2.hpp: At global scope:
/opt/intel/opencl/include/CL/cl2.hpp:4351:9: error: ‘size_type’ has not been declared
         size_type width,
         ^
/opt/intel/opencl/include/CL/cl2.hpp:4412:32: error: expected ‘,’ or ‘...’ before ‘&&’ token
     Image1DBuffer(Image1DBuffer&& img) CL_HPP_NOEXCEPT_ : Image(std::move(img)) {}
                                ^
/opt/intel/opencl/include/CL/cl2.hpp:4412:38: error: invalid constructor; you probably meant ‘cl::Image1DBuffer (const cl::Image1DBuffer&)’
     Image1DBuffer(Image1DBuffer&& img) CL_HPP_NOEXCEPT_ : Image(std::move(img)) {}
                                      ^
/opt/intel/opencl/include/CL/cl2.hpp:4417:46: error: expected ‘,’ or ‘...’ before ‘&&’ token
     Image1DBuffer& operator = (Image1DBuffer &&img)
                                              ^
/opt/intel/opencl/include/CL/cl2.hpp: In constructor ‘cl::Image1DBuffer::Image1DBuffer(const cl::Context&, cl_mem_flags, cl::ImageFormat, int, const cl::Buffer&, cl_int*)’:
/opt/intel/opencl/include/CL/cl2.hpp:4362:9: warning: narrowing conversion of ‘width’ from ‘int’ to ‘size_t {aka long unsigned int}’ inside { } is ill-formed in C++11 [-Wnarrowing]
         };
         ^
/opt/intel/opencl/include/CL/cl2.hpp: In member function ‘cl::Image1DBuffer& cl::Image1DBuffer::operator=(const cl::Image1DBuffer&)’:
/opt/intel/opencl/include/CL/cl2.hpp:4405:29: error: call of overloaded ‘operator=(const cl::Image1DBuffer&)’ is ambiguous
         Image::operator=(img);
                             ^
/opt/intel/opencl/include/CL/cl2.hpp:4199:12: note: candidate: cl::Image& cl::Image::operator=(const cl::Image&)
     Image& operator = (const Image &img)
            ^
/opt/intel/opencl/include/CL/cl2.hpp:4213:12: note: candidate: cl::Image& cl::Image::operator=(cl::Image)
     Image& operator = (Image &&img)
            ^
/opt/intel/opencl/include/CL/cl2.hpp: In member function ‘cl::Image1DBuffer& cl::Image1DBuffer::operator=(cl::Image1DBuffer)’:
/opt/intel/opencl/include/CL/cl2.hpp:4419:26: error: ‘move’ is not a member of ‘std’
         Image::operator=(std::move(img));
                          ^
/opt/intel/opencl/include/CL/cl2.hpp:4419:36: error: ‘img’ was not declared in this scope
         Image::operator=(std::move(img));
                                    ^
/opt/intel/opencl/include/CL/cl2.hpp: At global scope:
/opt/intel/opencl/include/CL/cl2.hpp:4435:9: error: ‘size_type’ has not been declared
         size_type arraySize,
         ^
/opt/intel/opencl/include/CL/cl2.hpp:4436:9: error: ‘size_type’ has not been declared
         size_type width,
         ^
/opt/intel/opencl/include/CL/cl2.hpp:4437:9: error: ‘size_type’ has not been declared
         size_type rowPitch,
         ^
/opt/intel/opencl/include/CL/cl2.hpp:4501:30: error: expected ‘,’ or ‘...’ before ‘&&’ token
     Image1DArray(Image1DArray&& img) CL_HPP_NOEXCEPT_ : Image(std::move(img)) {}
                              ^
/opt/intel/opencl/include/CL/cl2.hpp:4501:36: error: invalid constructor; you probably meant ‘cl::Image1DArray (const cl::Image1DArray&)’
     Image1DArray(Image1DArray&& img) CL_HPP_NOEXCEPT_ : Image(std::move(img)) {}
                                    ^
/opt/intel/opencl/include/CL/cl2.hpp:4506:44: error: expected ‘,’ or ‘...’ before ‘&&’ token
     Image1DArray& operator = (Image1DArray &&img)
                                            ^
/opt/intel/opencl/include/CL/cl2.hpp: In constructor ‘cl::Image1DArray::Image1DArray(const cl::Context&, cl_mem_flags, cl::ImageFormat, int, int, int, void*, cl_int*)’:
/opt/intel/opencl/include/CL/cl2.hpp:4450:9: warning: narrowing conversion of ‘width’ from ‘int’ to ‘size_t {aka long unsigned int}’ inside { } is ill-formed in C++11 [-Wnarrowing]
         };
         ^
/opt/intel/opencl/include/CL/cl2.hpp:4450:9: warning: narrowing conversion of ‘arraySize’ from ‘int’ to ‘size_t {aka long unsigned int}’ inside { } is ill-formed in C++11 [-Wnarrowing]
/opt/intel/opencl/include/CL/cl2.hpp:4450:9: warning: narrowing conversion of ‘rowPitch’ from ‘int’ to ‘size_t {aka long unsigned int}’ inside { } is ill-formed in C++11 [-Wnarrowing]
/opt/intel/opencl/include/CL/cl2.hpp: In member function ‘cl::Image1DArray& cl::Image1DArray::operator=(const cl::Image1DArray&)’:
/opt/intel/opencl/include/CL/cl2.hpp:4494:29: error: call of overloaded ‘operator=(const cl::Image1DArray&)’ is ambiguous
         Image::operator=(img);
                             ^
/opt/intel/opencl/include/CL/cl2.hpp:4199:12: note: candidate: cl::Image& cl::Image::operator=(const cl::Image&)
     Image& operator = (const Image &img)
            ^
/opt/intel/opencl/include/CL/cl2.hpp:4213:12: note: candidate: cl::Image& cl::Image::operator=(cl::Image)
     Image& operator = (Image &&img)
            ^
/opt/intel/opencl/include/CL/cl2.hpp: In member function ‘cl::Image1DArray& cl::Image1DArray::operator=(cl::Image1DArray)’:
/opt/intel/opencl/include/CL/cl2.hpp:4508:26: error: ‘move’ is not a member of ‘std’
         Image::operator=(std::move(img));
                          ^
/opt/intel/opencl/include/CL/cl2.hpp:4508:36: error: ‘img’ was not declared in this scope
         Image::operator=(std::move(img));
                                    ^
/opt/intel/opencl/include/CL/cl2.hpp: At global scope:
/opt/intel/opencl/include/CL/cl2.hpp:4533:9: error: ‘size_type’ has not been declared
         size_type width,
         ^
/opt/intel/opencl/include/CL/cl2.hpp:4534:9: error: ‘size_type’ has not been declared
         size_type height,
         ^
/opt/intel/opencl/include/CL/cl2.hpp:4535:9: error: ‘size_type’ has not been declared
         size_type row_pitch = 0,
         ^
/opt/intel/opencl/include/CL/cl2.hpp:4604:9: error: ‘size_type’ has not been declared
         size_type width,
         ^
/opt/intel/opencl/include/CL/cl2.hpp:4605:9: error: ‘size_type’ has not been declared
         size_type height,
         ^
/opt/intel/opencl/include/CL/cl2.hpp:4606:9: error: ‘size_type’ has not been declared
         size_type row_pitch = 0,
         ^
/opt/intel/opencl/include/CL/cl2.hpp:4743:20: error: expected ‘,’ or ‘...’ before ‘&&’ token
     Image2D(Image2D&& img) CL_HPP_NOEXCEPT_ : Image(std::move(img)) {}
                    ^
/opt/intel/opencl/include/CL/cl2.hpp:4743:26: error: invalid constructor; you probably meant ‘cl::Image2D (const cl::Image2D&)’
     Image2D(Image2D&& img) CL_HPP_NOEXCEPT_ : Image(std::move(img)) {}
                          ^
/opt/intel/opencl/include/CL/cl2.hpp:4748:34: error: expected ‘,’ or ‘...’ before ‘&&’ token
     Image2D& operator = (Image2D &&img)
                                  ^
/opt/intel/opencl/include/CL/cl2.hpp:4607:23: error: ‘nullptr’ was not declared in this scope
         cl_int* err = nullptr)
                       ^
/opt/intel/opencl/include/CL/cl2.hpp:4654:23: error: ‘nullptr’ was not declared in this scope
         cl_int* err = nullptr)
                       ^
/opt/intel/opencl/include/CL/cl2.hpp: In constructor ‘cl::Image2D::Image2D(const cl::Context&, cl_mem_flags, cl::ImageFormat, int, int, int, void*, cl_int*)’:
/opt/intel/opencl/include/CL/cl2.hpp:4565:13: warning: narrowing conversion of ‘width’ from ‘int’ to ‘size_t {aka long unsigned int}’ inside { } is ill-formed in C++11 [-Wnarrowing]
             };
             ^
/opt/intel/opencl/include/CL/cl2.hpp:4565:13: warning: narrowing conversion of ‘height’ from ‘int’ to ‘size_t {aka long unsigned int}’ inside { } is ill-formed in C++11 [-Wnarrowing]
/opt/intel/opencl/include/CL/cl2.hpp:4565:13: warning: narrowing conversion of ‘row_pitch’ from ‘int’ to ‘size_t {aka long unsigned int}’ inside { } is ill-formed in C++11 [-Wnarrowing]
/opt/intel/opencl/include/CL/cl2.hpp: In constructor ‘cl::Image2D::Image2D(const cl::Context&, cl::ImageFormat, const cl::Buffer&, int, int, int, cl_int*)’:
/opt/intel/opencl/include/CL/cl2.hpp:4621:9: warning: narrowing conversion of ‘width’ from ‘int’ to ‘size_t {aka long unsigned int}’ inside { } is ill-formed in C++11 [-Wnarrowing]
         };
         ^
/opt/intel/opencl/include/CL/cl2.hpp:4621:9: warning: narrowing conversion of ‘height’ from ‘int’ to ‘size_t {aka long unsigned int}’ inside { } is ill-formed in C++11 [-Wnarrowing]
/opt/intel/opencl/include/CL/cl2.hpp:4621:9: warning: narrowing conversion of ‘row_pitch’ from ‘int’ to ‘size_t {aka long unsigned int}’ inside { } is ill-formed in C++11 [-Wnarrowing]
/opt/intel/opencl/include/CL/cl2.hpp:4627:13: error: ‘nullptr’ was not declared in this scope
             nullptr,
             ^
/opt/intel/opencl/include/CL/cl2.hpp: In constructor ‘cl::Image2D::Image2D(const cl::Context&, cl_channel_order, const cl::Image&, cl_int*)’:
/opt/intel/opencl/include/CL/cl2.hpp:4659:9: error: ‘size_type’ was not declared in this scope
         size_type sourceWidth = 
         ^
/opt/intel/opencl/include/CL/cl2.hpp:4661:19: error: expected ‘;’ before ‘sourceHeight’
         size_type sourceHeight = 
                   ^
/opt/intel/opencl/include/CL/cl2.hpp:4663:19: error: expected ‘;’ before ‘sourceRowPitch’
         size_type sourceRowPitch =
                   ^
/opt/intel/opencl/include/CL/cl2.hpp:4678:13: error: ‘sourceWidth’ was not declared in this scope
             sourceWidth,
             ^
/opt/intel/opencl/include/CL/cl2.hpp:4679:13: error: ‘sourceHeight’ was not declared in this scope
             sourceHeight,
             ^
/opt/intel/opencl/include/CL/cl2.hpp:4681:13: error: ‘sourceRowPitch’ was not declared in this scope
             sourceRowPitch,
             ^
/opt/intel/opencl/include/CL/cl2.hpp:4693:13: error: ‘nullptr’ was not declared in this scope
             nullptr,
             ^
/opt/intel/opencl/include/CL/cl2.hpp: In member function ‘cl::Image2D& cl::Image2D::operator=(const cl::Image2D&)’:
/opt/intel/opencl/include/CL/cl2.hpp:4736:29: error: call of overloaded ‘operator=(const cl::Image2D&)’ is ambiguous
         Image::operator=(img);
                             ^
/opt/intel/opencl/include/CL/cl2.hpp:4199:12: note: candidate: cl::Image& cl::Image::operator=(const cl::Image&)
     Image& operator = (const Image &img)
            ^
/opt/intel/opencl/include/CL/cl2.hpp:4213:12: note: candidate: cl::Image& cl::Image::operator=(cl::Image)
     Image& operator = (Image &&img)
            ^
/opt/intel/opencl/include/CL/cl2.hpp: In member function ‘cl::Image2D& cl::Image2D::operator=(cl::Image2D)’:
/opt/intel/opencl/include/CL/cl2.hpp:4750:26: error: ‘move’ is not a member of ‘std’
         Image::operator=(std::move(img));
                          ^
/opt/intel/opencl/include/CL/cl2.hpp:4750:36: error: ‘img’ was not declared in this scope
         Image::operator=(std::move(img));
                                    ^
/opt/intel/opencl/include/CL/cl2.hpp: At global scope:
/opt/intel/opencl/include/CL/cl2.hpp:4864:9: error: ‘size_type’ has not been declared
         size_type arraySize,
         ^
/opt/intel/opencl/include/CL/cl2.hpp:4865:9: error: ‘size_type’ has not been declared
         size_type width,
         ^
/opt/intel/opencl/include/CL/cl2.hpp:4866:9: error: ‘size_type’ has not been declared
         size_type height,
         ^
/opt/intel/opencl/include/CL/cl2.hpp:4867:9: error: ‘size_type’ has not been declared
         size_type rowPitch,
         ^
/opt/intel/opencl/include/CL/cl2.hpp:4868:9: error: ‘size_type’ has not been declared
         size_type slicePitch,
         ^
/opt/intel/opencl/include/CL/cl2.hpp:4932:30: error: expected ‘,’ or ‘...’ before ‘&&’ token
     Image2DArray(Image2DArray&& img) CL_HPP_NOEXCEPT_ : Image(std::move(img)) {}
                              ^
/opt/intel/opencl/include/CL/cl2.hpp:4932:36: error: invalid constructor; you probably meant ‘cl::Image2DArray (const cl::Image2DArray&)’
     Image2DArray(Image2DArray&& img) CL_HPP_NOEXCEPT_ : Image(std::move(img)) {}
                                    ^
/opt/intel/opencl/include/CL/cl2.hpp:4937:44: error: expected ‘,’ or ‘...’ before ‘&&’ token
     Image2DArray& operator = (Image2DArray &&img)
                                            ^
/opt/intel/opencl/include/CL/cl2.hpp: In constructor ‘cl::Image2DArray::Image2DArray(const cl::Context&, cl_mem_flags, cl::ImageFormat, int, int, int, int, int, void*, cl_int*)’:
/opt/intel/opencl/include/CL/cl2.hpp:4883:9: warning: narrowing conversion of ‘width’ from ‘int’ to ‘size_t {aka long unsigned int}’ inside { } is ill-formed in C++11 [-Wnarrowing]
         };
         ^
/opt/intel/opencl/include/CL/cl2.hpp:4883:9: warning: narrowing conversion of ‘height’ from ‘int’ to ‘size_t {aka long unsigned int}’ inside { } is ill-formed in C++11 [-Wnarrowing]
/opt/intel/opencl/include/CL/cl2.hpp:4883:9: warning: narrowing conversion of ‘arraySize’ from ‘int’ to ‘size_t {aka long unsigned int}’ inside { } is ill-formed in C++11 [-Wnarrowing]
/opt/intel/opencl/include/CL/cl2.hpp:4883:9: warning: narrowing conversion of ‘rowPitch’ from ‘int’ to ‘size_t {aka long unsigned int}’ inside { } is ill-formed in C++11 [-Wnarrowing]
/opt/intel/opencl/include/CL/cl2.hpp:4883:9: warning: narrowing conversion of ‘slicePitch’ from ‘int’ to ‘size_t {aka long unsigned int}’ inside { } is ill-formed in C++11 [-Wnarrowing]
/opt/intel/opencl/include/CL/cl2.hpp: In member function ‘cl::Image2DArray& cl::Image2DArray::operator=(const cl::Image2DArray&)’:
/opt/intel/opencl/include/CL/cl2.hpp:4925:29: error: call of overloaded ‘operator=(const cl::Image2DArray&)’ is ambiguous
         Image::operator=(img);
                             ^
/opt/intel/opencl/include/CL/cl2.hpp:4199:12: note: candidate: cl::Image& cl::Image::operator=(const cl::Image&)
     Image& operator = (const Image &img)
            ^
/opt/intel/opencl/include/CL/cl2.hpp:4213:12: note: candidate: cl::Image& cl::Image::operator=(cl::Image)
     Image& operator = (Image &&img)
            ^
/opt/intel/opencl/include/CL/cl2.hpp: In member function ‘cl::Image2DArray& cl::Image2DArray::operator=(cl::Image2DArray)’:
/opt/intel/opencl/include/CL/cl2.hpp:4939:26: error: ‘move’ is not a member of ‘std’
         Image::operator=(std::move(img));
                          ^
/opt/intel/opencl/include/CL/cl2.hpp:4939:36: error: ‘img’ was not declared in this scope
         Image::operator=(std::move(img));
                                    ^
/opt/intel/opencl/include/CL/cl2.hpp: At global scope:
/opt/intel/opencl/include/CL/cl2.hpp:4962:9: error: ‘size_type’ has not been declared
         size_type width,
         ^
/opt/intel/opencl/include/CL/cl2.hpp:4963:9: error: ‘size_type’ has not been declared
         size_type height,
         ^
/opt/intel/opencl/include/CL/cl2.hpp:4964:9: error: ‘size_type’ has not been declared
         size_type depth,
         ^
/opt/intel/opencl/include/CL/cl2.hpp:4965:9: error: ‘size_type’ has not been declared
         size_type row_pitch = 0,
         ^
/opt/intel/opencl/include/CL/cl2.hpp:4966:9: error: ‘size_type’ has not been declared
         size_type slice_pitch = 0,
         ^
/opt/intel/opencl/include/CL/cl2.hpp:5068:20: error: expected ‘,’ or ‘...’ before ‘&&’ token
     Image3D(Image3D&& img) CL_HPP_NOEXCEPT_ : Image(std::move(img)) {}
                    ^
/opt/intel/opencl/include/CL/cl2.hpp:5068:26: error: invalid constructor; you probably meant ‘cl::Image3D (const cl::Image3D&)’
     Image3D(Image3D&& img) CL_HPP_NOEXCEPT_ : Image(std::move(img)) {}
                          ^
/opt/intel/opencl/include/CL/cl2.hpp:5073:34: error: expected ‘,’ or ‘...’ before ‘&&’ token
     Image3D& operator = (Image3D &&img)
                                  ^
/opt/intel/opencl/include/CL/cl2.hpp: In constructor ‘cl::Image3D::Image3D(const cl::Context&, cl_mem_flags, cl::ImageFormat, int, int, int, int, int, void*, cl_int*)’:
/opt/intel/opencl/include/CL/cl2.hpp:4998:13: warning: narrowing conversion of ‘width’ from ‘int’ to ‘size_t {aka long unsigned int}’ inside { } is ill-formed in C++11 [-Wnarrowing]
             };
             ^
/opt/intel/opencl/include/CL/cl2.hpp:4998:13: warning: narrowing conversion of ‘height’ from ‘int’ to ‘size_t {aka long unsigned int}’ inside { } is ill-formed in C++11 [-Wnarrowing]
/opt/intel/opencl/include/CL/cl2.hpp:4998:13: warning: narrowing conversion of ‘depth’ from ‘int’ to ‘size_t {aka long unsigned int}’ inside { } is ill-formed in C++11 [-Wnarrowing]
/opt/intel/opencl/include/CL/cl2.hpp:4998:13: warning: narrowing conversion of ‘row_pitch’ from ‘int’ to ‘size_t {aka long unsigned int}’ inside { } is ill-formed in C++11 [-Wnarrowing]
/opt/intel/opencl/include/CL/cl2.hpp:4998:13: warning: narrowing conversion of ‘slice_pitch’ from ‘int’ to ‘size_t {aka long unsigned int}’ inside { } is ill-formed in C++11 [-Wnarrowing]
/opt/intel/opencl/include/CL/cl2.hpp: In member function ‘cl::Image3D& cl::Image3D::operator=(const cl::Image3D&)’:
/opt/intel/opencl/include/CL/cl2.hpp:5061:29: error: call of overloaded ‘operator=(const cl::Image3D&)’ is ambiguous
         Image::operator=(img);
                             ^
/opt/intel/opencl/include/CL/cl2.hpp:4199:12: note: candidate: cl::Image& cl::Image::operator=(const cl::Image&)
     Image& operator = (const Image &img)
            ^
/opt/intel/opencl/include/CL/cl2.hpp:4213:12: note: candidate: cl::Image& cl::Image::operator=(cl::Image)
     Image& operator = (Image &&img)
            ^
/opt/intel/opencl/include/CL/cl2.hpp: In member function ‘cl::Image3D& cl::Image3D::operator=(cl::Image3D)’:
/opt/intel/opencl/include/CL/cl2.hpp:5075:26: error: ‘move’ is not a member of ‘std’
         Image::operator=(std::move(img));
                          ^
/opt/intel/opencl/include/CL/cl2.hpp:5075:36: error: ‘img’ was not declared in this scope
         Image::operator=(std::move(img));
                                    ^
/opt/intel/opencl/include/CL/cl2.hpp: At global scope:
/opt/intel/opencl/include/CL/cl2.hpp:5241:20: error: expected ‘,’ or ‘...’ before ‘&&’ token
     ImageGL(ImageGL&& img) CL_HPP_NOEXCEPT_ : Image(std::move(img)) {}
                    ^
/opt/intel/opencl/include/CL/cl2.hpp:5241:26: error: invalid constructor; you probably meant ‘cl::ImageGL (const cl::ImageGL&)’
     ImageGL(ImageGL&& img) CL_HPP_NOEXCEPT_ : Image(std::move(img)) {}
                          ^
/opt/intel/opencl/include/CL/cl2.hpp:5246:34: error: expected ‘,’ or ‘...’ before ‘&&’ token
     ImageGL& operator = (ImageGL &&img)
                                  ^
/opt/intel/opencl/include/CL/cl2.hpp: In member function ‘cl::ImageGL& cl::ImageGL::operator=(const cl::ImageGL&)’:
/opt/intel/opencl/include/CL/cl2.hpp:5234:29: error: call of overloaded ‘operator=(const cl::ImageGL&)’ is ambiguous
         Image::operator=(img);
                             ^
/opt/intel/opencl/include/CL/cl2.hpp:4199:12: note: candidate: cl::Image& cl::Image::operator=(const cl::Image&)
     Image& operator = (const Image &img)
            ^
/opt/intel/opencl/include/CL/cl2.hpp:4213:12: note: candidate: cl::Image& cl::Image::operator=(cl::Image)
     Image& operator = (Image &&img)
            ^
/opt/intel/opencl/include/CL/cl2.hpp: In member function ‘cl::ImageGL& cl::ImageGL::operator=(cl::ImageGL)’:
/opt/intel/opencl/include/CL/cl2.hpp:5248:26: error: ‘move’ is not a member of ‘std’
         Image::operator=(std::move(img));
                          ^
/opt/intel/opencl/include/CL/cl2.hpp:5248:36: error: ‘img’ was not declared in this scope
         Image::operator=(std::move(img));
                                    ^
/opt/intel/opencl/include/CL/cl2.hpp: At global scope:
/opt/intel/opencl/include/CL/cl2.hpp:5359:14: error: expected ‘,’ or ‘...’ before ‘&&’ token
     Pipe(Pipe&& pipe) CL_HPP_NOEXCEPT_ : Memory(std::move(pipe)) {}
              ^
/opt/intel/opencl/include/CL/cl2.hpp:5359:21: error: invalid constructor; you probably meant ‘cl::Pipe (const cl::Pipe&)’
     Pipe(Pipe&& pipe) CL_HPP_NOEXCEPT_ : Memory(std::move(pipe)) {}
                     ^
/opt/intel/opencl/include/CL/cl2.hpp:5364:28: error: expected ‘,’ or ‘...’ before ‘&&’ token
     Pipe& operator = (Pipe &&pipe)
                            ^
/opt/intel/opencl/include/CL/cl2.hpp: In constructor ‘cl::Pipe::Pipe(const cl::Context&, cl_uint, cl_uint, cl_int*)’:
/opt/intel/opencl/include/CL/cl2.hpp:5285:78: error: ‘nullptr’ was not declared in this scope
         object_ = ::clCreatePipe(context(), flags, packet_size, max_packets, nullptr, &error);
                                                                              ^
/opt/intel/opencl/include/CL/cl2.hpp: In constructor ‘cl::Pipe::Pipe(cl_uint, cl_uint, cl_int*)’:
/opt/intel/opencl/include/CL/cl2.hpp:5311:78: error: ‘nullptr’ was not declared in this scope
         object_ = ::clCreatePipe(context(), flags, packet_size, max_packets, nullptr, &error);
                                                                              ^
/opt/intel/opencl/include/CL/cl2.hpp: In member function ‘cl::Pipe& cl::Pipe::operator=(const cl::Pipe&)’:
/opt/intel/opencl/include/CL/cl2.hpp:5352:31: error: call of overloaded ‘operator=(const cl::Pipe&)’ is ambiguous
         Memory::operator=(pipe);
                               ^
/opt/intel/opencl/include/CL/cl2.hpp:3202:13: note: candidate: cl::Memory& cl::Memory::operator=(const cl::Memory&)
     Memory& operator = (const Memory &mem)
             ^
/opt/intel/opencl/include/CL/cl2.hpp:3216:13: note: candidate: cl::Memory& cl::Memory::operator=(cl::Memory)
     Memory& operator = (Memory &&mem)
             ^
/opt/intel/opencl/include/CL/cl2.hpp: In member function ‘cl::Pipe& cl::Pipe::operator=(cl::Pipe)’:
/opt/intel/opencl/include/CL/cl2.hpp:5366:27: error: ‘move’ is not a member of ‘std’
         Memory::operator=(std::move(pipe));
                           ^
/opt/intel/opencl/include/CL/cl2.hpp:5366:37: error: ‘pipe’ was not declared in this scope
         Memory::operator=(std::move(pipe));
                                     ^
/opt/intel/opencl/include/CL/cl2.hpp: At global scope:
/opt/intel/opencl/include/CL/cl2.hpp:5492:20: error: expected ‘,’ or ‘...’ before ‘&&’ token
     Sampler(Sampler&& sam) CL_HPP_NOEXCEPT_ : detail::Wrapper<cl_type>(std::move(sam)) {}
                    ^
/opt/intel/opencl/include/CL/cl2.hpp:5492:26: error: invalid constructor; you probably meant ‘cl::Sampler (const cl::Sampler&)’
     Sampler(Sampler&& sam) CL_HPP_NOEXCEPT_ : detail::Wrapper<cl_type>(std::move(sam)) {}
                          ^
/opt/intel/opencl/include/CL/cl2.hpp:5497:34: error: expected ‘,’ or ‘...’ before ‘&&’ token
     Sampler& operator = (Sampler &&sam)
                                  ^
/opt/intel/opencl/include/CL/cl2.hpp: In member function ‘cl::Sampler& cl::Sampler::operator=(const cl::Sampler&)’:
/opt/intel/opencl/include/CL/cl2.hpp:5485:48: error: call of overloaded ‘operator=(const cl::Sampler&)’ is ambiguous
         detail::Wrapper<cl_type>::operator=(sam);
                                                ^
In file included from ../src/AnotherCL.cpp:14:0:
/opt/intel/opencl/include/CL/cl2.hpp:1671:23: note: candidate: cl::detail::Wrapper<T>& cl::detail::Wrapper<T>::operator=(const cl::detail::Wrapper<T>&) [with T = _cl_sampler*]
     Wrapper<cl_type>& operator = (const Wrapper<cl_type>& rhs)
                       ^
/opt/intel/opencl/include/CL/cl2.hpp:1681:23: note: candidate: cl::detail::Wrapper<T>& cl::detail::Wrapper<T>::operator=(cl::detail::Wrapper<T>) [with T = _cl_sampler*]
     Wrapper<cl_type>& operator = (Wrapper<cl_type>&& rhs)
                       ^
In file included from ../src/AnotherCL.cpp:14:0:
/opt/intel/opencl/include/CL/cl2.hpp: In member function ‘cl::Sampler& cl::Sampler::operator=(cl::Sampler)’:
/opt/intel/opencl/include/CL/cl2.hpp:5499:45: error: ‘move’ is not a member of ‘std’
         detail::Wrapper<cl_type>::operator=(std::move(sam));
                                             ^
/opt/intel/opencl/include/CL/cl2.hpp:5499:55: error: ‘sam’ was not declared in this scope
         detail::Wrapper<cl_type>::operator=(std::move(sam));
                                                       ^
/opt/intel/opencl/include/CL/cl2.hpp: At global scope:
/opt/intel/opencl/include/CL/cl2.hpp:5536:5: error: ‘size_type’ does not name a type
     size_type sizes_[3];
     ^
/opt/intel/opencl/include/CL/cl2.hpp:5550:23: error: expected ‘)’ before ‘size0’
     NDRange(size_type size0)
                       ^
/opt/intel/opencl/include/CL/cl2.hpp:5559:23: error: expected ‘)’ before ‘size0’
     NDRange(size_type size0, size_type size1)
                       ^
/opt/intel/opencl/include/CL/cl2.hpp:5568:23: error: expected ‘)’ before ‘size0’
     NDRange(size_type size0, size_type size1, size_type size2)
                       ^
/opt/intel/opencl/include/CL/cl2.hpp:5580:20: error: ISO C++ forbids declaration of ‘type name’ with no type [-fpermissive]
     operator const size_type*() const { 
                    ^
/opt/intel/opencl/include/CL/cl2.hpp:5580:5: error: ‘operator const int’ does not name a type
     operator const size_type*() const { 
     ^
/opt/intel/opencl/include/CL/cl2.hpp:5585:5: error: ‘size_type’ does not name a type
     size_type dimensions() const 
     ^
/opt/intel/opencl/include/CL/cl2.hpp:5592:5: error: ‘size_type’ does not name a type
     size_type size() const
     ^
/opt/intel/opencl/include/CL/cl2.hpp:5597:5: error: ‘size_type’ does not name a type
     size_type* get()
     ^
/opt/intel/opencl/include/CL/cl2.hpp:5602:11: error: ‘size_type’ does not name a type
     const size_type* get() const
           ^
/opt/intel/opencl/include/CL/cl2.hpp: In constructor ‘cl::NDRange::NDRange()’:
/opt/intel/opencl/include/CL/cl2.hpp:5544:9: error: ‘sizes_’ was not declared in this scope
         sizes_[0] = 0;
         ^
/opt/intel/opencl/include/CL/cl2.hpp: At global scope:
/opt/intel/opencl/include/CL/cl2.hpp:5614:5: error: ‘size_type’ does not name a type
     size_type size_;
     ^
/opt/intel/opencl/include/CL/cl2.hpp:5625:47: error: ‘enable_if’ in namespace ‘std’ does not name a template type
 struct KernelArgumentHandler<T, typename std::enable_if<!std::is_base_of<cl::Memory, T>::value>::type>
                                               ^
/opt/intel/opencl/include/CL/cl2.hpp:5625:56: error: expected template-argument before ‘<’ token
 struct KernelArgumentHandler<T, typename std::enable_if<!std::is_base_of<cl::Memory, T>::value>::type>
                                                        ^
/opt/intel/opencl/include/CL/cl2.hpp:5625:56: error: expected ‘>’ before ‘<’ token
/opt/intel/opencl/include/CL/cl2.hpp:5625:102: error: template argument 2 is invalid
 struct KernelArgumentHandler<T, typename std::enable_if<!std::is_base_of<cl::Memory, T>::value>::type>
                                                                                                      ^
/opt/intel/opencl/include/CL/cl2.hpp:5626:1: error: expected ‘::’ before ‘{’ token
 {
 ^
/opt/intel/opencl/include/CL/cl2.hpp:5626:1: error: expected identifier before ‘{’ token
/opt/intel/opencl/include/CL/cl2.hpp:5626:1: error: qualified name does not name a class before ‘{’ token
/opt/intel/opencl/include/CL/cl2.hpp:5634:47: error: ‘enable_if’ in namespace ‘std’ does not name a template type
 struct KernelArgumentHandler<T, typename std::enable_if<std::is_base_of<cl::Memory, T>::value>::type>
                                               ^
/opt/intel/opencl/include/CL/cl2.hpp:5634:56: error: expected template-argument before ‘<’ token
 struct KernelArgumentHandler<T, typename std::enable_if<std::is_base_of<cl::Memory, T>::value>::type>
                                                        ^
/opt/intel/opencl/include/CL/cl2.hpp:5634:56: error: expected ‘>’ before ‘<’ token
/opt/intel/opencl/include/CL/cl2.hpp:5634:101: error: template argument 2 is invalid
 struct KernelArgumentHandler<T, typename std::enable_if<std::is_base_of<cl::Memory, T>::value>::type>
                                                                                                     ^
/opt/intel/opencl/include/CL/cl2.hpp:5635:1: error: expected ‘::’ before ‘{’ token
 {
 ^
/opt/intel/opencl/include/CL/cl2.hpp:5635:1: error: expected identifier before ‘{’ token
/opt/intel/opencl/include/CL/cl2.hpp:5635:1: error: qualified name does not name a class before ‘{’ token
/opt/intel/opencl/include/CL/cl2.hpp:5645:12: error: ‘size_type’ does not name a type
     static size_type size(const LocalSpaceArg& value) { return value.size_; }
            ^
/opt/intel/opencl/include/CL/cl2.hpp:5656:7: error: ‘cl::Local’ declared as an ‘inline’ variable
 Local(size_type size)
       ^
/opt/intel/opencl/include/CL/cl2.hpp:5656:7: error: ‘size_type’ was not declared in this scope
/opt/intel/opencl/include/CL/cl2.hpp:5657:1: error: expected ‘,’ or ‘;’ before ‘{’ token
 {
 ^
../src/AnotherCL.cpp:181:1: error: expected ‘}’ at end of input
 }
 ^
In file included from ../src/AnotherCL.cpp:14:0:
/opt/intel/opencl/include/CL/cl2.hpp: In instantiation of ‘cl_int cl::detail::GetInfoFunctor0<Func, Arg0>::operator()(cl_uint, int, void*, int*) [with Func = int (*)(_cl_mem*, unsigned int, long unsigned int, void*, long unsigned int*); Arg0 = _cl_mem*; cl_int = int; cl_uint = unsigned int]’:
/opt/intel/opencl/include/CL/cl2.hpp:929:13:   required from ‘cl_int cl::detail::getInfoHelper(Functor, cl_uint, T*, long int) [with Functor = cl::detail::GetInfoFunctor0<int (*)(_cl_mem*, unsigned int, long unsigned int, void*, long unsigned int*), _cl_mem*>; T = unsigned int; cl_int = int; cl_uint = unsigned int]’
/opt/intel/opencl/include/CL/cl2.hpp:1446:25:   required from ‘cl_int cl::detail::getInfo(Func, const Arg0&, cl_uint, T*) [with Func = int (*)(_cl_mem*, unsigned int, long unsigned int, void*, long unsigned int*); Arg0 = _cl_mem*; T = unsigned int; cl_int = int; cl_uint = unsigned int]’
/opt/intel/opencl/include/CL/cl2.hpp:4226:28:   required from ‘cl_int cl::Image::getImageInfo(cl_image_info, T*) const [with T = unsigned int; cl_int = int; cl_image_info = unsigned int]’
/opt/intel/opencl/include/CL/cl2.hpp:4237:50:   required from ‘typename cl::detail::param_traits<cl::detail::cl_image_info, name>::param_type cl::Image::getImageInfo(cl_int*) const [with int name = 4377; typename cl::detail::param_traits<cl::detail::cl_image_info, name>::param_type = unsigned int; cl_int = int]’
/opt/intel/opencl/include/CL/cl2.hpp:4666:63:   required from here
/opt/intel/opencl/include/CL/cl2.hpp:1429:52: error: cannot convert ‘int*’ to ‘long unsigned int*’ in argument passing
     { return f_(arg0_, param, size, value, size_ret); }
                                                    ^
/opt/intel/opencl/include/CL/cl2.hpp: In member function ‘cl_int cl::detail::Wrapper<T>::release() const [with T = _cl_context*; cl_int = int]’:
/opt/intel/opencl/include/CL/cl2.hpp:1729:5: warning: control reaches end of non-void function [-Wreturn-type]
     }
     ^
/opt/intel/opencl/include/CL/cl2.hpp: In member function ‘cl_int cl::detail::Wrapper<T>::release() const [with T = _cl_platform_id*; cl_int = int]’:
/opt/intel/opencl/include/CL/cl2.hpp:1729:5: warning: control reaches end of non-void function [-Wreturn-type]
     }
     ^
/opt/intel/opencl/include/CL/cl2.hpp: In member function ‘cl_int cl::detail::Wrapper<_cl_device_id*>::release() const’:
/opt/intel/opencl/include/CL/cl2.hpp:1860:5: warning: control reaches end of non-void function [-Wreturn-type]
     }
     ^
make: *** [src/AnotherCL.o] Error 1