Re: [x265] Several warnings (MSYS2/MinGW, GCC 8.2.0, CMake 3.12.1)

2018-09-25 Thread Mario *LigH* Rohkrämer
Attached: almost complete output of a multi-lib build (a base directory 
was substituted with '§' to save space)
-- cmake version 3.12.1
CMake Deprecation Warning at CMakeLists.txt:10 (cmake_policy):
  The OLD behavior for policy CMP0025 will be removed from a future version
  of CMake.

  The cmake-policies(7) manual explains that the OLD behaviors of all
  policies are deprecated and that a policy should be set to OLD only under
  specific short-term circumstances.  Projects should be ported to the NEW
  behavior and not rely on setting a policy to OLD.


CMake Deprecation Warning at CMakeLists.txt:16 (cmake_policy):
  The OLD behavior for policy CMP0054 will be removed from a future version
  of CMake.

  The cmake-policies(7) manual explains that the OLD behaviors of all
  policies are deprecated and that a policy should be set to OLD only under
  specific short-term circumstances.  Projects should be ported to the NEW
  behavior and not rely on setting a policy to OLD.


-- Detected x86_64 target processor
-- Found Nasm 2.13.03 to build assembly primitives
-- hg found at H:/development/media-autobuild_suite-master/msys64/usr/bin/hg.bat
-- x265 version 2.8+72-bbad4e55b51a
-- Configuring done
-- Generating done
-- Build files have been written to: §/x265-hg/build/msys64_hdr10_ml/12bit
Scanning dependencies of target clean-generated
Built target clean-generated
-- cmake version 3.12.1
CMake Deprecation Warning at CMakeLists.txt:10 (cmake_policy):
  The OLD behavior for policy CMP0025 will be removed from a future version
  of CMake.

  The cmake-policies(7) manual explains that the OLD behaviors of all
  policies are deprecated and that a policy should be set to OLD only under
  specific short-term circumstances.  Projects should be ported to the NEW
  behavior and not rely on setting a policy to OLD.


CMake Deprecation Warning at CMakeLists.txt:16 (cmake_policy):
  The OLD behavior for policy CMP0054 will be removed from a future version
  of CMake.

  The cmake-policies(7) manual explains that the OLD behaviors of all
  policies are deprecated and that a policy should be set to OLD only under
  specific short-term circumstances.  Projects should be ported to the NEW
  behavior and not rely on setting a policy to OLD.


-- Detected x86_64 target processor
-- Found Nasm 2.13.03 to build assembly primitives
-- hg found at H:/development/media-autobuild_suite-master/msys64/usr/bin/hg.bat
-- x265 version 2.8+72-bbad4e55b51a
-- Configuring done
-- Generating done
-- Build files have been written to: §/x265-hg/build/msys64_hdr10_ml/12bit
Scanning dependencies of target common
[  1%] Building ASM_NASM object common/CMakeFiles/common.dir/x86/pixel-a.asm.obj
[  2%] Building ASM_NASM object common/CMakeFiles/common.dir/x86/const-a.asm.obj
[  3%] Building ASM_NASM object common/CMakeFiles/common.dir/x86/cpu-a.asm.obj
[  5%] Building ASM_NASM object common/CMakeFiles/common.dir/x86/ssd-a.asm.obj
[  6%] Building ASM_NASM object common/CMakeFiles/common.dir/x86/mc-a.asm.obj
[  7%] Building ASM_NASM object common/CMakeFiles/common.dir/x86/mc-a2.asm.obj
[  8%] Building ASM_NASM object 
common/CMakeFiles/common.dir/x86/pixel-util8.asm.obj
[ 10%] Building ASM_NASM object 
common/CMakeFiles/common.dir/x86/blockcopy8.asm.obj
[ 11%] Building ASM_NASM object 
common/CMakeFiles/common.dir/x86/pixeladd8.asm.obj
[ 12%] Building ASM_NASM object common/CMakeFiles/common.dir/x86/dct8.asm.obj
[ 13%] Building ASM_NASM object 
common/CMakeFiles/common.dir/x86/seaintegral.asm.obj
[ 15%] Building ASM_NASM object common/CMakeFiles/common.dir/x86/sad16-a.asm.obj
[ 16%] Building ASM_NASM object 
common/CMakeFiles/common.dir/x86/intrapred16.asm.obj
[ 17%] Building ASM_NASM object 
common/CMakeFiles/common.dir/x86/v4-ipfilter16.asm.obj
[ 18%] Building ASM_NASM object 
common/CMakeFiles/common.dir/x86/h4-ipfilter16.asm.obj
[ 20%] Building ASM_NASM object 
common/CMakeFiles/common.dir/x86/h-ipfilter16.asm.obj
[ 21%] Building ASM_NASM object 
common/CMakeFiles/common.dir/x86/ipfilter16.asm.obj
[ 22%] Building ASM_NASM object 
common/CMakeFiles/common.dir/x86/loopfilter.asm.obj
[ 24%] Building CXX object 
common/CMakeFiles/common.dir/x86/asm-primitives.cpp.obj
[ 25%] Building CXX object 
common/CMakeFiles/common.dir/vec/vec-primitives.cpp.obj
[ 26%] Building CXX object common/CMakeFiles/common.dir/vec/dct-sse3.cpp.obj
[ 27%] Building CXX object common/CMakeFiles/common.dir/vec/dct-ssse3.cpp.obj
[ 29%] Building CXX object common/CMakeFiles/common.dir/vec/dct-sse41.cpp.obj
[ 30%] Building CXX object common/CMakeFiles/common.dir/winxp.cpp.obj
[ 31%] Building CXX object common/CMakeFiles/common.dir/primitives.cpp.obj
[ 32%] Building CXX object common/CMakeFiles/common.dir/pixel.cpp.obj
[ 34%] Building CXX object common/CMakeFiles/common.dir/dct.cpp.obj
[ 35%] Building CXX object common/CMakeFiles/common.dir/lowpassdct.cpp.obj
[ 36%] Building CXX object common/CMakeFiles/common.dir/ipfilter.cpp.obj
[ 37%] Building CXX object common/CMakeFiles/commo

[x265] Several warnings (MSYS2/MinGW, GCC 8.2.0, CMake 3.12.1)

2018-08-29 Thread Mario *LigH* Rohkrämer
Possibly different default warnings enabled in GCC 8.2.0, compared to 
GCC 7.3.0


12 bit encoder, 64 bit build:


[ 56%] Building CXX object common/CMakeFiles/common.dir/frame.cpp.obj
H:/development/media-autobuild_suite-master/build/x265-hg/source/common/frame.cpp: 
In constructor 'x265_12bit::Frame::Frame()':
H:/development/media-autobuild_suite-master/build/x265-hg/source/common/frame.cpp:47:42: 
warning: 'void* memset(void*, int, size_t)' clearing an object of 
non-trivial type 'struct x265_12bit::Lowres'; use assignment or 
value-initialization instead [-Wclass-memaccess]

 memset(&m_lowres, 0, sizeof(m_lowres));
  ^
In file included from 
H:/development/media-autobuild_suite-master/build/x265-hg/source/common/frame.h:29,
 from 
H:/development/media-autobuild_suite-master/build/x265-hg/source/common/frame.cpp:26:
H:/development/media-autobuild_suite-master/build/x265-hg/source/common/lowres.h:107:8: 
note: 'struct x265_12bit::Lowres' declared here

 struct Lowres : public ReferencePlanes
^~

[ 77%] Building CXX object encoder/CMakeFiles/encoder.dir/search.cpp.obj
H:/development/media-autobuild_suite-master/build/x265-hg/source/encoder/search.cpp: 
In member function 'void 
x265_12bit::Search::predInterSearch(x265_12bit::Mode&, const 
x265_12bit::CUGeom&, bool, uint32_t*)':
H:/development/media-autobuild_suite-master/build/x265-hg/source/encoder/search.cpp:2173:36: 
warning: 'void* memset(void*, int, size_t)' clearing an object of 
non-trivial type 'struct x265_12bit::Search::MergeData'; use assignment 
or value-initialization instead [-Wclass-memaccess]

 memset(&merge, 0, sizeof(merge));
^
In file included from 
H:/development/media-autobuild_suite-master/build/x265-hg/source/encoder/search.cpp:30:
H:/development/media-autobuild_suite-master/build/x265-hg/source/encoder/search.h:414:12: 
note: 'struct x265_12bit::Search::MergeData' declared here

 struct MergeData
^
H:/development/media-autobuild_suite-master/build/x265-hg/source/encoder/search.cpp: 
In member function 'void 
x265_12bit::Search::encodeResAndCalcRdInterCU(x265_12bit::Mode&, const 
x265_12bit::CUGeom&)':
H:/development/media-autobuild_suite-master/build/x265-hg/source/encoder/search.cpp:2760:50: 
warning: 'void* memset(void*, int, size_t)' clearing an object of 
non-trivial type 'struct x265_12bit::Search::TUInfoCache'; use 
assignment or value-initialization instead [-Wclass-memaccess]

 memset(&m_cacheTU, 0, sizeof(TUInfoCache));
  ^
In file included from 
H:/development/media-autobuild_suite-master/build/x265-hg/source/encoder/search.cpp:30:
H:/development/media-autobuild_suite-master/build/x265-hg/source/encoder/search.h:388:12: 
note: 'struct x265_12bit::Search::TUInfoCache' declared here

 struct TUInfoCache
^~~


[ 82%] Building CXX object 
encoder/CMakeFiles/encoder.dir/frameencoder.cpp.obj
In file included from 
H:/development/media-autobuild_suite-master/build/x265-hg/source/encoder/frameencoder.cpp:33:
H:/development/media-autobuild_suite-master/build/x265-hg/source/encoder/frameencoder.h: 
In member function 'void x265_12bit::CTURow::init(x265_12bit::Entropy&, 
unsigned int)':
H:/development/media-autobuild_suite-master/build/x265-hg/source/encoder/frameencoder.h:108:46: 
warning: 'void* memset(void*, int, size_t)' clearing an object of 
non-trivial type 'struct x265_12bit::FrameStats'; use assignment or 
value-initialization instead [-Wclass-memaccess]

 memset(&rowStats, 0, sizeof(rowStats));
  ^
In file included from 
H:/development/media-autobuild_suite-master/build/x265-hg/source/encoder/frameencoder.cpp:28:
H:/development/media-autobuild_suite-master/build/x265-hg/source/common/framedata.h:41:8: 
note: 'struct x265_12bit::FrameStats' declared here

 struct FrameStats
^~
H:/development/media-autobuild_suite-master/build/x265-hg/source/encoder/frameencoder.cpp: 
In constructor 'x265_12bit::FrameEncoder::FrameEncoder()':
H:/development/media-autobuild_suite-master/build/x265-hg/source/encoder/frameencoder.cpp:64:47: 
warning: 'void* memset(void*, int, size_t)' clearing an object of 
non-trivial type 'struct x265_12bit::RateControlEntry'; use assignment 
or value-initialization instead [-Wclass-memaccess]

 memset(&m_rce, 0, sizeof(RateControlEntry));
   ^
In file included from 
H:/development/media-autobuild_suite-master/build/x265-hg/source/encoder/frameencoder.h:40,
 from 
H:/development/media-autobuild_suite-master/build/x265-hg/source/encoder/frameencoder.cpp:33:
H:/development/media-autobuild_suite-master/build/x265-hg/source/encoder/ratecontrol.h:66:8: 
note: 'struct x265_12bit::RateControlEntry' declared here

 struct RateControlEntry
^~~~
H:/developme