diff --git a/modules/dnn/test/cnpy.cpp b/modules/dnn/test/cnpy.cpp index bd5aaddd8..1fc25dfd4 100644 --- a/modules/dnn/test/cnpy.cpp +++ b/modules/dnn/test/cnpy.cpp @@ -9,9 +9,19 @@ #include #include +#ifdef __GNUC__ +# pragma GCC diagnostic ignored "-Wunused-but-set-variable" +#endif + char cnpy::BigEndianTest() { - unsigned char x[] = {1,0}; - short y = *(short*) x; + union + { + unsigned char x[2]; + short y; + }; + x[0] = 1; + x[1] = 0; + return y == 1 ? '<' : '>'; } diff --git a/modules/dnn/test/cnpy.h b/modules/dnn/test/cnpy.h index dfddde7e4..1f6c7062e 100644 --- a/modules/dnn/test/cnpy.h +++ b/modules/dnn/test/cnpy.h @@ -150,7 +150,7 @@ namespace cnpy { std::vector npy_header = create_npy_header(data,shape,ndims); unsigned long nels = 1; - for (int m=0; m