diff --git a/modules/sfm/src/libmv_capi.h b/modules/sfm/src/libmv_capi.h index c30e667f74a..20ce63bdc41 100644 --- a/modules/sfm/src/libmv_capi.h +++ b/modules/sfm/src/libmv_capi.h @@ -42,6 +42,8 @@ #ifndef __OPENCV_SFM_LIBMV_CAPI__ #define __OPENCV_SFM_LIBMV_CAPI__ +#include + #include "libmv/logging/logging.h" #include "libmv/correspondence/feature.h" diff --git a/modules/sfm/src/libmv_light/libmv/base/vector.h b/modules/sfm/src/libmv_light/libmv/base/vector.h index ac7a2feead0..9740cfaf6fc 100644 --- a/modules/sfm/src/libmv_light/libmv/base/vector.h +++ b/modules/sfm/src/libmv_light/libmv/base/vector.h @@ -121,7 +121,7 @@ class vector { void reserve(unsigned int size) { if (size > size_) { T *data = static_cast(allocate(size)); -#if 0 +#if defined(__GNUC__) && __GNUC__ < 5 // legacy compilers branch memcpy(data, data_, sizeof(*data)*size_); #else for (int i = 0; i < size_; ++i)