Skip to content

Fix compilation warnings #182

@pockerman

Description

@pockerman

Compiling the camera sensor gives the following warnings:

 37%] Building CXX object CMakeFiles/bitrllib.dir/src/bitrl/sensors/messages/camera.cpp.o
In file included from /usr/local/include/opencv4/opencv2/core/mat.hpp:3794,
                 from /usr/local/include/opencv4/opencv2/core.hpp:58,
                 from /usr/local/include/opencv4/opencv2/opencv.hpp:52,
                 from /home/alex/qi3/bitrl/src/bitrl/sensors/messages/camera.h:8,
                 from /home/alex/qi3/bitrl/src/bitrl/sensors/messages/camera.cpp:5:
/usr/local/include/opencv4/opencv2/core/mat.inl.hpp: In constructor ‘cv::_InputArray::_InputArray(const cv::Mat&)’:
/usr/local/include/opencv4/opencv2/core/mat.inl.hpp:103:57: warning: arithmetic between different enumeration types ‘cv::_InputArray::KindFlag’ and ‘cv::AccessFlag’ is deprecated [-Wdeprecated-enum-enum-conversion]
  103 | inline _InputArray::_InputArray(const Mat& m) { init(MAT+ACCESS_READ, &m); }
      |                                                      ~~~^~~~~~~~~~~~
/usr/local/include/opencv4/opencv2/core/mat.inl.hpp: In constructor ‘cv::_InputArray::_InputArray(const std::vector<cv::Mat>&)’:
/usr/local/include/opencv4/opencv2/core/mat.inl.hpp:104:83: warning: arithmetic between different enumeration types ‘cv::_InputArray::KindFlag’ and ‘cv::AccessFlag’ is deprecated [-Wdeprecated-enum-enum-conversion]
  104 | inline _InputArray::_InputArray(const std::vector<Mat>& vec) { init(STD_VECTOR_MAT+ACCESS_READ, &vec); }
      |                                                                     ~~~~~~~~~~~~~~^~~~~~~~~~~~
/usr/local/include/opencv4/opencv2/core/mat.inl.hpp: In constructor ‘cv::_InputArray::_InputArray(const cv::UMat&)’:
/usr/local/include/opencv4/opencv2/core/mat.inl.hpp:105:59: warning: arithmetic between different enumeration types ‘cv::_InputArray::KindFlag’ and ‘cv::AccessFlag’ is deprecated [-Wdeprecated-enum-enum-conversion]
  105 | inline _InputArray::_InputArray(const UMat& m) { init(UMAT+ACCESS_READ, &m); }
      |                                                       ~~~~^~~~~~~~~~~~
/usr/local/include/opencv4/opencv2/core/mat.inl.hpp: In constructor ‘cv::_InputArray::_InputArray(const std::vector<cv::UMat>&)’:
/usr/local/include/opencv4/opencv2/core/mat.inl.hpp:106:85: warning: arithmetic between different enumeration types ‘cv::_InputArray::KindFlag’ and ‘cv::AccessFlag’ is deprecated [-Wdeprecated-enum-enum-conversion]
  106 | inline _InputArray::_InputArray(const std::vector<UMat>& vec) { init(STD_VECTOR_UMAT+ACCESS_READ, &vec); }
      |                                                                      ~~~~~~~~~~~~~~~^~~~~~~~~~~~
/usr/local/include/opencv4/opencv2/core/mat.inl.hpp: In constructor ‘cv::_InputArray::_InputArray(const std::array<cv::Mat, _Nm>&)’:
/usr/local/include/opencv4/opencv2/core/mat.inl.hpp:118:22: warning: arithmetic between different enumeration types ‘cv::_InputArray::KindFlag’ and ‘cv::AccessFlag’ is deprecated [-Wdeprecated-enum-enum-conversion]
  118 | { init(STD_ARRAY_MAT + ACCESS_READ, arr.data(), Size(1, _Nm)); }
      |        ~~~~~~~~~~~~~~^~~~~~~~~~~~~
/usr/local/include/opencv4/opencv2/core/mat.inl.hpp: In constructor ‘cv::_InputArray::_InputArray(const cv::cuda::GpuMat&)’:
/usr/local/include/opencv4/opencv2/core/mat.inl.hpp:148:21: warning: arithmetic between different enumeration types ‘cv::_InputArray::KindFlag’ and ‘cv::AccessFlag’ is deprecated [-Wdeprecated-enum-enum-conversion]
  148 | { init(CUDA_GPU_MAT + ACCESS_READ, &d_mat); }
      |        ~~~~~~~~~~~~~^~~~~~~~~~~~~
/usr/local/include/opencv4/opencv2/core/mat.inl.hpp: In constructor ‘cv::_InputArray::_InputArray(const std::vector<cv::cuda::GpuMat>&)’:
/usr/local/include/opencv4/opencv2/core/mat.inl.hpp:151:38: warning: arithmetic between different enumeration types ‘cv::_InputArray::KindFlag’ and ‘cv::AccessFlag’ is deprecated [-Wdeprecated-enum-enum-conversion]
  151 | {       init(STD_VECTOR_CUDA_GPU_MAT + ACCESS_READ, &d_mat);}
      |              ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~
/usr/local/include/opencv4/opencv2/core/mat.inl.hpp: In constructor ‘cv::_InputArray::_InputArray(const cv::ogl::Buffer&)’:
/usr/local/include/opencv4/opencv2/core/mat.inl.hpp:154:22: warning: arithmetic between different enumeration types ‘cv::_InputArray::KindFlag’ and ‘cv::AccessFlag’ is deprecated [-Wdeprecated-enum-enum-conversion]
  154 | { init(OPENGL_BUFFER + ACCESS_READ, &buf); }
      |        ~~~~~~~~~~~~~~^~~~~~~~~~~~~
/usr/local/include/opencv4/opencv2/core/mat.inl.hpp: In constructor ‘cv::_InputArray::_InputArray(const cv::cuda::HostMem&)’:
/usr/local/include/opencv4/opencv2/core/mat.inl.hpp:157:22: warning: arithmetic between different enumeration types ‘cv::_InputArray::KindFlag’ and ‘cv::AccessFlag’ is deprecated [-Wdeprecated-enum-enum-conversion]
  157 | { init(CUDA_HOST_MEM + ACCESS_READ, &cuda_mem); }
      |        ~~~~~~~~~~~~~~^~~~~~~~~~~~~
/usr/local/include/opencv4/opencv2/core/mat.inl.hpp: In constructor ‘cv::_OutputArray::_OutputArray()’:
/usr/local/include/opencv4/opencv2/core/mat.inl.hpp:200:49: warning: arithmetic between different enumeration types ‘cv::_InputArray::KindFlag’ and ‘cv::AccessFlag’ is deprecated [-Wdeprecated-enum-enum-conversion]
  200 | inline _OutputArray::_OutputArray() { init(NONE + ACCESS_WRITE, 0); }
      |                                            ~~~~~^~~~~~~~~~~~~~
/usr/local/include/opencv4/opencv2/core/mat.inl.hpp: In constructor ‘cv::_OutputArray::_OutputArray(cv::Mat&)’:
/usr/local/include/opencv4/opencv2/core/mat.inl.hpp:202:53: warning: arithmetic between different enumeration types ‘cv::_InputArray::KindFlag’ and ‘cv::AccessFlag’ is deprecated [-Wdeprecated-enum-enum-conversion]
  202 | inline _OutputArray::_OutputArray(Mat& m) { init(MAT+ACCESS_WRITE, &m); }
      |                                                  ~~~^~~~~~~~~~~~~
/usr/local/include/opencv4/opencv2/core/mat.inl.hpp: In constructor ‘cv::_OutputArray::_OutputArray(std::vector<cv::Mat>&)’:
/usr/local/include/opencv4/opencv2/core/mat.inl.hpp:203:80: warning: arithmetic between different enumeration types ‘cv::_InputArray::KindFlag’ and ‘cv::AccessFlag’ is deprecated [-Wdeprecated-enum-enum-conversion]
  203 | inline _OutputArray::_OutputArray(std::vector<Mat>& vec) { init(STD_VECTOR_MAT + ACCESS_WRITE, &vec); }
      |                                                                 ~~~~~~~~~~~~~~~^~~~~~~~~~~~~~
/usr/local/include/opencv4/opencv2/core/mat.inl.hpp: In constructor ‘cv::_OutputArray::_OutputArray(cv::UMat&)’:
/usr/local/include/opencv4/opencv2/core/mat.inl.hpp:204:56: warning: arithmetic between different enumeration types ‘cv::_InputArray::KindFlag’ and ‘cv::AccessFlag’ is deprecated [-Wdeprecated-enum-enum-conversion]
  204 | inline _OutputArray::_OutputArray(UMat& m) { init(UMAT + ACCESS_WRITE, &m); }
      |                                                   ~~~~~^~~~~~~~~~~~~~
/usr/local/include/opencv4/opencv2/core/mat.inl.hpp: In constructor ‘cv::_OutputArray::_OutputArray(std::vector<cv::UMat>&)’:
/usr/local/include/opencv4/opencv2/core/mat.inl.hpp:205:82: warning: arithmetic between different enumeration types ‘cv::_InputArray::KindFlag’ and ‘cv::AccessFlag’ is deprecated [-Wdeprecated-enum-enum-conversion]
  205 | inline _OutputArray::_OutputArray(std::vector<UMat>& vec) { init(STD_VECTOR_UMAT + ACCESS_WRITE, &vec); }
      |                                                                  ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~
/usr/local/include/opencv4/opencv2/core/mat.inl.hpp: In constructor ‘cv::_OutputArray::_OutputArray(std::array<cv::Mat, _Nm>&)’:
/usr/local/include/opencv4/opencv2/core/mat.inl.hpp:217:22: warning: arithmetic between different enumeration types ‘cv::_InputArray::KindFlag’ and ‘cv::AccessFlag’ is deprecated [-Wdeprecated-enum-enum-conversion]
  217 | { init(STD_ARRAY_MAT + ACCESS_WRITE, arr.data(), Size(1, _Nm)); }
      |        ~~~~~~~~~~~~~~^~~~~~~~~~~~~~
/usr/local/include/opencv4/opencv2/core/mat.inl.hpp: In constructor ‘cv::_OutputArray::_OutputArray(cv::cuda::GpuMat&)’:
/usr/local/include/opencv4/opencv2/core/mat.inl.hpp:272:21: warning: arithmetic between different enumeration types ‘cv::_InputArray::KindFlag’ and ‘cv::AccessFlag’ is deprecated [-Wdeprecated-enum-enum-conversion]
  272 | { init(CUDA_GPU_MAT + ACCESS_WRITE, &d_mat); }
      |        ~~~~~~~~~~~~~^~~~~~~~~~~~~~
/usr/local/include/opencv4/opencv2/core/mat.inl.hpp: In constructor ‘cv::_OutputArray::_OutputArray(std::vector<cv::cuda::GpuMat>&)’:
/usr/local/include/opencv4/opencv2/core/mat.inl.hpp:275:38: warning: arithmetic between different enumeration types ‘cv::_InputArray::KindFlag’ and ‘cv::AccessFlag’ is deprecated [-Wdeprecated-enum-enum-conversion]
  275 | {       init(STD_VECTOR_CUDA_GPU_MAT + ACCESS_WRITE, &d_mat);}
      |              ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~
/usr/local/include/opencv4/opencv2/core/mat.inl.hpp: In constructor ‘cv::_OutputArray::_OutputArray(cv::ogl::Buffer&)’:
/usr/local/include/opencv4/opencv2/core/mat.inl.hpp:278:22: warning: arithmetic between different enumeration types ‘cv::_InputArray::KindFlag’ and ‘cv::AccessFlag’ is deprecated [-Wdeprecated-enum-enum-conversion]
  278 | { init(OPENGL_BUFFER + ACCESS_WRITE, &buf); }
      |        ~~~~~~~~~~~~~~^~~~~~~~~~~~~~
/usr/local/include/opencv4/opencv2/core/mat.inl.hpp: In constructor ‘cv::_OutputArray::_OutputArray(cv::cuda::HostMem&)’:
/usr/local/include/opencv4/opencv2/core/mat.inl.hpp:281:22: warning: arithmetic between different enumeration types ‘cv::_InputArray::KindFlag’ and ‘cv::AccessFlag’ is deprecated [-Wdeprecated-enum-enum-conversion]
  281 | { init(CUDA_HOST_MEM + ACCESS_WRITE, &cuda_mem); }
      |        ~~~~~~~~~~~~~~^~~~~~~~~~~~~~
/usr/local/include/opencv4/opencv2/core/mat.inl.hpp: In constructor ‘cv::_InputOutputArray::_InputOutputArray(cv::Mat&)’:
/usr/local/include/opencv4/opencv2/core/mat.inl.hpp:328:63: warning: arithmetic between different enumeration types ‘cv::_InputArray::KindFlag’ and ‘cv::AccessFlag’ is deprecated [-Wdeprecated-enum-enum-conversion]
  328 | inline _InputOutputArray::_InputOutputArray(Mat& m) { init(MAT+ACCESS_RW, &m); }
      |                                                            ~~~^~~~~~~~~~
/usr/local/include/opencv4/opencv2/core/mat.inl.hpp: In constructor ‘cv::_InputOutputArray::_InputOutputArray(std::vector<cv::Mat>&)’:
/usr/local/include/opencv4/opencv2/core/mat.inl.hpp:329:89: warning: arithmetic between different enumeration types ‘cv::_InputArray::KindFlag’ and ‘cv::AccessFlag’ is deprecated [-Wdeprecated-enum-enum-conversion]
  329 | inline _InputOutputArray::_InputOutputArray(std::vector<Mat>& vec) { init(STD_VECTOR_MAT+ACCESS_RW, &vec); }
      |                                                                           ~~~~~~~~~~~~~~^~~~~~~~~~
/usr/local/include/opencv4/opencv2/core/mat.inl.hpp: In constructor ‘cv::_InputOutputArray::_InputOutputArray(cv::UMat&)’:
/usr/local/include/opencv4/opencv2/core/mat.inl.hpp:330:65: warning: arithmetic between different enumeration types ‘cv::_InputArray::KindFlag’ and ‘cv::AccessFlag’ is deprecated [-Wdeprecated-enum-enum-conversion]
  330 | inline _InputOutputArray::_InputOutputArray(UMat& m) { init(UMAT+ACCESS_RW, &m); }
      |                                                             ~~~~^~~~~~~~~~
/usr/local/include/opencv4/opencv2/core/mat.inl.hpp: In constructor ‘cv::_InputOutputArray::_InputOutputArray(std::vector<cv::UMat>&)’:
/usr/local/include/opencv4/opencv2/core/mat.inl.hpp:331:91: warning: arithmetic between different enumeration types ‘cv::_InputArray::KindFlag’ and ‘cv::AccessFlag’ is deprecated [-Wdeprecated-enum-enum-conversion]
  331 | inline _InputOutputArray::_InputOutputArray(std::vector<UMat>& vec) { init(STD_VECTOR_UMAT+ACCESS_RW, &vec); }
      |                                                                            ~~~~~~~~~~~~~~~^~~~~~~~~~
/usr/local/include/opencv4/opencv2/core/mat.inl.hpp: In constructor ‘cv::_InputOutputArray::_InputOutputArray(std::array<cv::Mat, _Nm>&)’:
/usr/local/include/opencv4/opencv2/core/mat.inl.hpp:343:22: warning: arithmetic between different enumeration types ‘cv::_InputArray::KindFlag’ and ‘cv::AccessFlag’ is deprecated [-Wdeprecated-enum-enum-conversion]
  343 | { init(STD_ARRAY_MAT + ACCESS_RW, arr.data(), Size(1, _Nm)); }
      |        ~~~~~~~~~~~~~~^~~~~~~~~~~
/usr/local/include/opencv4/opencv2/core/mat.inl.hpp: In constructor ‘cv::_InputOutputArray::_InputOutputArray(cv::cuda::GpuMat&)’:
/usr/local/include/opencv4/opencv2/core/mat.inl.hpp:398:21: warning: arithmetic between different enumeration types ‘cv::_InputArray::KindFlag’ and ‘cv::AccessFlag’ is deprecated [-Wdeprecated-enum-enum-conversion]
  398 | { init(CUDA_GPU_MAT + ACCESS_RW, &d_mat); }
      |        ~~~~~~~~~~~~~^~~~~~~~~~~
/usr/local/include/opencv4/opencv2/core/mat.inl.hpp: In constructor ‘cv::_InputOutputArray::_InputOutputArray(cv::ogl::Buffer&)’:
/usr/local/include/opencv4/opencv2/core/mat.inl.hpp:401:22: warning: arithmetic between different enumeration types ‘cv::_InputArray::KindFlag’ and ‘cv::AccessFlag’ is deprecated [-Wdeprecated-enum-enum-conversion]
  401 | { init(OPENGL_BUFFER + ACCESS_RW, &buf); }
      |        ~~~~~~~~~~~~~~^~~~~~~~~~~
/usr/local/include/opencv4/opencv2/core/mat.inl.hpp: In constructor ‘cv::_InputOutputArray::_InputOutputArray(cv::cuda::HostMem&)’:
/usr/local/include/opencv4/opencv2/core/mat.inl.hpp:404:22: warning: arithmetic between different enumeration types ‘cv::_InputArray::KindFlag’ and ‘cv::AccessFlag’ is deprecated [-Wdeprecated-enum-enum-conversion]
  404 | { init(CUDA_HOST_MEM + ACCESS_RW, &cuda_mem); }
      |        ~~~~~~~~~~~~~~^~~~~~~~~~~
In file included from /usr/local/include/opencv4/opencv2/highgui.hpp:51,
                 from /usr/local/include/opencv4/opencv2/opencv.hpp:68,
                 from /home/alex/qi3/bitrl/src/bitrl/sensors/messages/camera.h:8,
                 from /home/alex/qi3/bitrl/src/bitrl/sensors/messages/camera.cpp:5:
/usr/local/include/opencv4/opencv2/videoio.hpp: At global scope:
/usr/local/include/opencv4/opencv2/videoio.hpp:322:80: warning: arithmetic between different enumeration types ‘cv::<unnamed enum>’ and ‘cv::<unnamed enum>’ is deprecated [-Wdeprecated-enum-enum-conversion]
  322 | enum { CAP_OPENNI_IMAGE_GENERATOR_PRESENT         = CAP_OPENNI_IMAGE_GENERATOR + CAP_PROP_OPENNI_GENERATOR_PRESENT,
      |                                                     ~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/local/include/opencv4/opencv2/videoio.hpp:323:80: warning: arithmetic between different enumeration types ‘cv::<unnamed enum>’ and ‘cv::<unnamed enum>’ is deprecated [-Wdeprecated-enum-enum-conversion]
  323 |        CAP_OPENNI_IMAGE_GENERATOR_OUTPUT_MODE     = CAP_OPENNI_IMAGE_GENERATOR + CAP_PROP_OPENNI_OUTPUT_MODE,
      |                                                     ~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/local/include/opencv4/opencv2/videoio.hpp:324:80: warning: arithmetic between different enumeration types ‘cv::<unnamed enum>’ and ‘cv::<unnamed enum>’ is deprecated [-Wdeprecated-enum-enum-conversion]
  324 |        CAP_OPENNI_DEPTH_GENERATOR_PRESENT         = CAP_OPENNI_DEPTH_GENERATOR + CAP_PROP_OPENNI_GENERATOR_PRESENT,
      |                                                     ~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/local/include/opencv4/opencv2/videoio.hpp:325:80: warning: arithmetic between different enumeration types ‘cv::<unnamed enum>’ and ‘cv::<unnamed enum>’ is deprecated [-Wdeprecated-enum-enum-conversion]
  325 |        CAP_OPENNI_DEPTH_GENERATOR_BASELINE        = CAP_OPENNI_DEPTH_GENERATOR + CAP_PROP_OPENNI_BASELINE,
      |                                                     ~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/local/include/opencv4/opencv2/videoio.hpp:326:80: warning: arithmetic between different enumeration types ‘cv::<unnamed enum>’ and ‘cv::<unnamed enum>’ is deprecated [-Wdeprecated-enum-enum-conversion]
  326 |        CAP_OPENNI_DEPTH_GENERATOR_FOCAL_LENGTH    = CAP_OPENNI_DEPTH_GENERATOR + CAP_PROP_OPENNI_FOCAL_LENGTH,
      |                                                     ~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/local/include/opencv4/opencv2/videoio.hpp:327:80: warning: arithmetic between different enumeration types ‘cv::<unnamed enum>’ and ‘cv::<unnamed enum>’ is deprecated [-Wdeprecated-enum-enum-conversion]
  327 |        CAP_OPENNI_DEPTH_GENERATOR_REGISTRATION    = CAP_OPENNI_DEPTH_GENERATOR + CAP_PROP_OPENNI_REGISTRATION,
      |                                                     ~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/local/include/opencv4/opencv2/videoio.hpp:329:77: warning: arithmetic between different enumeration types ‘cv::<unnamed enum>’ and ‘cv::<unnamed enum>’ is deprecated [-Wdeprecated-enum-enum-conversion]
  329 |        CAP_OPENNI_IR_GENERATOR_PRESENT            = CAP_OPENNI_IR_GENERATOR + CAP_PROP_OPENNI_GENERATOR_PRESENT,
      |                                                     ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from /usr/local/include/opencv4/opencv2/core/mat.hpp:3794,
                 from /usr/local/include/opencv4/opencv2/core.hpp:58,
                 from /usr/local/include/opencv4/opencv2/opencv.hpp:52,
                 from /home/alex/qi3/bitrl/src/bitrl/sensors/messages/camera.h:8,
                 from /home/alex/qi3/bitrl/src/bitrl/sensors/messages/camera.cpp:5:
/usr/local/include/opencv4/opencv2/core/mat.inl.hpp: In instantiation of ‘cv::Mat::Mat(const cv::Matx<_Tp, m, n>&, bool) [with _Tp = double; int m = 2; int n = 3]’:
/usr/local/include/opencv4/opencv2/imgproc.hpp:2586:64:   required from here
/usr/local/include/opencv4/opencv2/core/mat.inl.hpp:533:23: warning: arithmetic between different enumeration types ‘cv::Mat::<unnamed enum>’ and ‘cv::traits::Type<double>::<unnamed enum>’ is deprecated [-Wdeprecated-enum-enum-conversion]
  533 |     : flags(MAGIC_VAL + traits::Type<_Tp>::value + CV_MAT_CONT_FLAG), dims(2), rows(m), cols(n), data(0),
      |             ~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    Status

    To do

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions