diff --git a/modules/core/include/opencv2/core.hpp b/modules/core/include/opencv2/core.hpp index fcfc7cd639..b6cc6bc7c4 100644 --- a/modules/core/include/opencv2/core.hpp +++ b/modules/core/include/opencv2/core.hpp @@ -58,7 +58,6 @@ #include "opencv2/core/types.hpp" #include "opencv2/core/mat.hpp" #include "opencv2/core/persistence.hpp" -#include "opencv2/core/softfloat.hpp" /** @defgroup core Core functionality diff --git a/modules/core/include/opencv2/core/softfloat.hpp b/modules/core/include/opencv2/core/softfloat.hpp index 623ba17801..2d62228374 100644 --- a/modules/core/include/opencv2/core/softfloat.hpp +++ b/modules/core/include/opencv2/core/softfloat.hpp @@ -83,6 +83,18 @@ SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. #include "cvdef.h" +// int32_t / uint32_t +#if defined(_MSC_VER) && _MSC_VER < 1600 /* MSVS 2010 */ +namespace cv { +typedef signed int int32_t; +typedef unsigned int uint32_t; +} +#elif defined(_MSC_VER) || __cplusplus >= 201103L +#include +#else +#include +#endif + namespace cv { diff --git a/modules/core/src/precomp.hpp b/modules/core/src/precomp.hpp index 5fa2a742c6..b17ad2b8f2 100644 --- a/modules/core/src/precomp.hpp +++ b/modules/core/src/precomp.hpp @@ -58,8 +58,6 @@ #include "opencv2/core/ocl.hpp" #endif -#include "opencv2/core/softfloat.hpp" - #include #include #include diff --git a/modules/core/src/softfloat.cpp b/modules/core/src/softfloat.cpp index 6ae958b5d5..7b5a6a146b 100644 --- a/modules/core/src/softfloat.cpp +++ b/modules/core/src/softfloat.cpp @@ -79,6 +79,8 @@ SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. #include "precomp.hpp" +#include "opencv2/core/softfloat.hpp" + namespace cv { diff --git a/modules/core/test/test_math.cpp b/modules/core/test/test_math.cpp index d7e8ea6f4d..3bb4201e56 100644 --- a/modules/core/test/test_math.cpp +++ b/modules/core/test/test_math.cpp @@ -5,6 +5,7 @@ #include "test_precomp.hpp" #include #include +#include "opencv2/core/softfloat.hpp" using namespace cv; using namespace std;