Compiler Warnings

Issue #410 new
Former user created an issue

Hi,

Normally there are no compiler warnings when compiling from HG, but meanwhile there is a lot :) Would be nice to have no compiler warnings at all ;)

thx,

Eliot

-- The C compiler identification is GNU 8.1.1 -- The CXX compiler identification is GNU 8.1.1

Scanning dependencies of target encoder [ 1%] Building CXX object encoder/CMakeFiles/encoder.dir/analysis.cpp.o [ 2%] Building CXX object encoder/CMakeFiles/encoder.dir/search.cpp.o /tmp/yaourt-tmp-eliot/aur-x265-hg/src/x265/source/encoder/search.cpp: In member function ‘void x265::Search::predInterSearch(x265::Mode&, const x265::CUGeom&, bool, uint32_t)’: /tmp/yaourt-tmp-eliot/aur-x265-hg/src/x265/source/encoder/search.cpp:2173:36: warning: ‘void memset(void, int, size_t)’ clearing an object of non-trivial type ‘struct x265::Search::MergeData’; use assignment or value-initialization instead [-Wclass-memaccess] memset(&merge, 0, sizeof(merge)); ^ In file included from /tmp/yaourt-tmp-eliot/aur-x265-hg/src/x265/source/encoder/search.cpp:30: /tmp/yaourt-tmp-eliot/aur-x265-hg/src/x265/source/encoder/search.h:414:12: note: ‘struct x265::Search::MergeData’ declared here struct MergeData ^~~ /tmp/yaourt-tmp-eliot/aur-x265-hg/src/x265/source/encoder/search.cpp: In member function ‘void x265::Search::encodeResAndCalcRdInterCU(x265::Mode&, const x265::CUGeom&)’: /tmp/yaourt-tmp-eliot/aur-x265-hg/src/x265/source/encoder/search.cpp:2758:50: warning: ‘void memset(void, int, size_t)’ clearing an object of non-trivial type ‘struct x265::Search::TUInfoCache’; use assignment or value-initialization instead [-Wclass-memaccess] memset(&m_cacheTU, 0, sizeof(TUInfoCache)); ^ In file included from /tmp/yaourt-tmp-eliot/aur-x265-hg/src/x265/source/encoder/search.cpp:30: /tmp/yaourt-tmp-eliot/aur-x265-hg/src/x265/source/encoder/search.h:388:12: note: ‘struct x265::Search::TUInfoCache’ declared here struct TUInfoCache ^~~ [ 3%] Building CXX object encoder/CMakeFiles/encoder.dir/bitcost.cpp.o [ 4%] Building CXX object encoder/CMakeFiles/encoder.dir/motion.cpp.o [ 5%] Building CXX object encoder/CMakeFiles/encoder.dir/slicetype.cpp.o [ 6%] Building CXX object encoder/CMakeFiles/encoder.dir/frameencoder.cpp.o In file included from /tmp/yaourt-tmp-eliot/aur-x265-hg/src/x265/source/encoder/frameencoder.cpp:33: /tmp/yaourt-tmp-eliot/aur-x265-hg/src/x265/source/encoder/frameencoder.h: In member function ‘void x265::CTURow::init(x265::Entropy&, unsigned int)’: /tmp/yaourt-tmp-eliot/aur-x265-hg/src/x265/source/encoder/frameencoder.h:108:46: warning: ‘void memset(void, int, size_t)’ clearing an object of non-trivial type ‘struct x265::FrameStats’; use assignment or value-initialization instead [-Wclass-memaccess] memset(&rowStats, 0, sizeof(rowStats)); ^ In file included from /tmp/yaourt-tmp-eliot/aur-x265-hg/src/x265/source/encoder/frameencoder.cpp:28: /tmp/yaourt-tmp-eliot/aur-x265-hg/src/x265/source/common/framedata.h:41:8: note: ‘struct x265::FrameStats’ declared here struct FrameStats ^~ /tmp/yaourt-tmp-eliot/aur-x265-hg/src/x265/source/encoder/frameencoder.cpp: In constructor ‘x265::FrameEncoder::FrameEncoder()’: /tmp/yaourt-tmp-eliot/aur-x265-hg/src/x265/source/encoder/frameencoder.cpp:64:47: warning: ‘void memset(void, int, size_t)’ clearing an object of non-trivial type ‘struct x265::RateControlEntry’; use assignment or value-initialization instead [-Wclass-memaccess] memset(&m_rce, 0, sizeof(RateControlEntry)); ^ In file included from /tmp/yaourt-tmp-eliot/aur-x265-hg/src/x265/source/encoder/frameencoder.h:40, from /tmp/yaourt-tmp-eliot/aur-x265-hg/src/x265/source/encoder/frameencoder.cpp:33: /tmp/yaourt-tmp-eliot/aur-x265-hg/src/x265/source/encoder/ratecontrol.h:66:8: note: ‘struct x265::RateControlEntry’ declared here struct RateControlEntry ^~~~~~ /tmp/yaourt-tmp-eliot/aur-x265-hg/src/x265/source/encoder/frameencoder.cpp: In member function ‘void x265::FrameEncoder::compressFrame()’: /tmp/yaourt-tmp-eliot/aur-x265-hg/src/x265/source/encoder/frameencoder.cpp:390:92: warning: ‘void memset(void*, int, size_t)’ clearing an object of non-trivial type ‘struct x265::FrameStats’; use assignment or value-initialization instead [-Wclass-memaccess] _frame->m_encData->m_frameStats), 0, sizeof(m_frame->m_encData->m_frameStats)); ^

In file included from /tmp/yaourt-tmp-eliot/aur-x265-hg/src/x265/source/encoder/frameencoder.cpp:28: /tmp/yaourt-tmp-eliot/aur-x265-hg/src/x265/source/common/framedata.h:41:8: note: ‘struct x265::FrameStats’ declared here struct FrameStats ^~~~ /tmp/yaourt-tmp-eliot/aur-x265-hg/src/x265/source/encoder/frameencoder.cpp: In member function ‘virtual void x265::FrameEncoder::processRowEncoder(int, x265::ThreadLocalData&)’: /tmp/yaourt-tmp-eliot/aur-x265-hg/src/x265/source/encoder/frameencoder.cpp:1645:72: warning: ‘void memset(void, int, size_t)’ clearing an object of non-trivial type ‘struct x265::FrameStats’; use assignment or value-initialization instead [-Wclass-memaccess] memset(&curRow.rowStats, 0, sizeof(curRow.rowStats)); ^ In file included from /tmp/yaourt-tmp-eliot/aur-x265-hg/src/x265/source/encoder/frameencoder.cpp:28: /tmp/yaourt-tmp-eliot/aur-x265-hg/src/x265/source/common/framedata.h:41:8: note: ‘struct x265::FrameStats’ declared here struct FrameStats ^~ /tmp/yaourt-tmp-eliot/aur-x265-hg/src/x265/source/encoder/frameencoder.cpp:1730:78: warning: ‘void memset(void, int, size_t)’ clearing an object of non-trivial type ‘struct x265::FrameStats’; use assignment or value-initialization instead [-Wclass-memaccess] memset(&stopRow.rowStats, 0, sizeof(stopRow.rowStats)); ^ In file included from /tmp/yaourt-tmp-eliot/aur-x265-hg/src/x265/source/encoder/frameencoder.cpp:28: /tmp/yaourt-tmp-eliot/aur-x265-hg/src/x265/source/common/framedata.h:41:8: note: ‘struct x265::FrameStats’ declared here struct FrameStats ^~ [ 7%] Building CXX object encoder/CMakeFiles/encoder.dir/framefilter.cpp.o In file included from /tmp/yaourt-tmp-eliot/aur-x265-hg/src/x265/source/encoder/framefilter.cpp:30: /tmp/yaourt-tmp-eliot/aur-x265-hg/src/x265/source/encoder/frameencoder.h: In member function ‘void x265::CTURow::init(x265::Entropy&, unsigned int)’: /tmp/yaourt-tmp-eliot/aur-x265-hg/src/x265/source/encoder/frameencoder.h:108:46: warning: ‘void memset(void, int, size_t)’ clearing an object of non-trivial type ‘struct x265::FrameStats’; use assignment or value-initialization instead [-Wclass-memaccess] memset(&rowStats, 0, sizeof(rowStats)); ^ In file included from /tmp/yaourt-tmp-eliot/aur-x265-hg/src/x265/source/encoder/framefilter.cpp:27: /tmp/yaourt-tmp-eliot/aur-x265-hg/src/x265/source/common/framedata.h:41:8: note: ‘struct x265::FrameStats’ declared here struct FrameStats ^~ [ 8%] Building CXX object encoder/CMakeFiles/encoder.dir/level.cpp.o [ 10%] Building CXX object encoder/CMakeFiles/encoder.dir/nal.cpp.o [ 11%] Building CXX object encoder/CMakeFiles/encoder.dir/sei.cpp.o [ 12%] Building CXX object encoder/CMakeFiles/encoder.dir/sao.cpp.o [ 13%] Building CXX object encoder/CMakeFiles/encoder.dir/entropy.cpp.o [ 14%] Building CXX object encoder/CMakeFiles/encoder.dir/dpb.cpp.o [ 15%] Building CXX object encoder/CMakeFiles/encoder.dir/ratecontrol.cpp.o /tmp/yaourt-tmp-eliot/aur-x265-hg/src/x265/source/encoder/ratecontrol.cpp: In member function ‘int x265::RateControl::writeRateControlFrameStats(x265::Frame, x265::RateControlEntry)’: /tmp/yaourt-tmp-eliot/aur-x265-hg/src/x265/source/encoder/ratecontrol.cpp:2843:21: warning: passing argument 1 to restrict-qualified parameter aliases with argument 3 [-Wrestrict] sprintf(deltaPOC, "%s%d~", deltaPOC, rpsWriter->deltaPOC[i]); ^~ ~~ /tmp/yaourt-tmp-eliot/aur-x265-hg/src/x265/source/encoder/ratecontrol.cpp:2844:21: warning: passing argument 1 to restrict-qualified parameter aliases with argument 3 [-Wrestrict] sprintf(bUsed, "%s%d~", bUsed, rpsWriter->bUsed[i]); ^ ~ /tmp/yaourt-tmp-eliot/aur-x265-hg/src/x265/source/encoder/ratecontrol.cpp:2843:31: warning: ‘~’ directive writing 1 byte into a region of size between 0 and 127 [-Wformat-overflow=] sprintf(deltaPOC, "%s%d~", deltaPOC, rpsWriter->deltaPOC[i]); ^~~ /tmp/yaourt-tmp-eliot/aur-x265-hg/src/x265/source/encoder/ratecontrol.cpp:2843:20: note: ‘sprintf’ output between 3 and 140 bytes into a destination of size 128 sprintf(deltaPOC, "%s%d~", deltaPOC, rpsWriter->deltaPOC[i]); ~^~~~~~~~~~~ /tmp/yaourt-tmp-eliot/aur-x265-hg/src/x265/source/encoder/ratecontrol.cpp:2844:28: warning: ‘~’ directive writing 1 byte into a region of size between 0 and 39 [-Wformat-overflow=] sprintf(bUsed, "%s%d~", bUsed, rpsWriter->bUsed[i]); ^~~ /tmp/yaourt-tmp-eliot/aur-x265-hg/src/x265/source/encoder/ratecontrol.cpp:2844:20: note: ‘sprintf’ output between 3 and 42 bytes into a destination of size 40 sprintf(bUsed, "%s%d~", bUsed, rpsWriter->bUsed[i]); ~^~~~~~~~~~ [ 16%] Building CXX object encoder/CMakeFiles/encoder.dir/reference.cpp.o [ 17%] Building CXX object encoder/CMakeFiles/encoder.dir/encoder.cpp.o In file included from /tmp/yaourt-tmp-eliot/aur-x265-hg/src/x265/source/encoder/encoder.cpp:36: /tmp/yaourt-tmp-eliot/aur-x265-hg/src/x265/source/encoder/frameencoder.h: In member function ‘void x265::CTURow::init(x265::Entropy&, unsigned int)’: /tmp/yaourt-tmp-eliot/aur-x265-hg/src/x265/source/encoder/frameencoder.h:108:46: warning: ‘void memset(void, int, size_t)’ clearing an object of non-trivial type ‘struct x265::FrameStats’; use assignment or value-initialization instead [-Wclass-memaccess] memset(&rowStats, 0, sizeof(rowStats)); ^ In file included from /tmp/yaourt-tmp-eliot/aur-x265-hg/src/x265/source/encoder/encoder.cpp:30: /tmp/yaourt-tmp-eliot/aur-x265-hg/src/x265/source/common/framedata.h:41:8: note: ‘struct x265::FrameStats’ declared here struct FrameStats ^~ /tmp/yaourt-tmp-eliot/aur-x265-hg/src/x265/source/encoder/encoder.cpp: In member function ‘bool x265::Encoder::computeSPSRPSIndex()’: /tmp/yaourt-tmp-eliot/aur-x265-hg/src/x265/source/encoder/encoder.cpp:4804:61: warning: ‘void memset(void, int, size_t)’ clearing an object of non-trivial type ‘struct x265::RPS’; use assignment or value-initialization instead [-Wclass-memaccess] memset(rpsInSPS, 0, sizeof(RPS) * MAX_NUM_SHORT_TERM_RPS); ^ In file included from /tmp/yaourt-tmp-eliot/aur-x265-hg/src/x265/source/common/framedata.h:28, from /tmp/yaourt-tmp-eliot/aur-x265-hg/src/x265/source/encoder/encoder.cpp:30: /tmp/yaourt-tmp-eliot/aur-x265-hg/src/x265/source/common/slice.h:45:8: note: ‘struct x265::RPS’ declared here struct RPS ^ [ 18%] Building CXX object encoder/CMakeFiles/encoder.dir/api.cpp.o [ 20%] Building CXX object encoder/CMakeFiles/encoder.dir/weightPrediction.cpp.o [ 20%] Built target encoder Scanning dependencies of target common [ 21%] Building ASM_NASM object common/CMakeFiles/common.dir/x86/pixel-a.asm.o [ 22%] Building ASM_NASM object common/CMakeFiles/common.dir/x86/const-a.asm.o [ 23%] Building ASM_NASM object common/CMakeFiles/common.dir/x86/cpu-a.asm.o [ 24%] Building ASM_NASM object common/CMakeFiles/common.dir/x86/ssd-a.asm.o [ 25%] Building ASM_NASM object common/CMakeFiles/common.dir/x86/mc-a.asm.o [ 26%] Building ASM_NASM object common/CMakeFiles/common.dir/x86/mc-a2.asm.o [ 27%] Building ASM_NASM object common/CMakeFiles/common.dir/x86/pixel-util8.asm.o [ 28%] Building ASM_NASM object common/CMakeFiles/common.dir/x86/blockcopy8.asm.o [ 30%] Building ASM_NASM object common/CMakeFiles/common.dir/x86/pixeladd8.asm.o [ 31%] Building ASM_NASM object common/CMakeFiles/common.dir/x86/dct8.asm.o [ 32%] Building ASM_NASM object common/CMakeFiles/common.dir/x86/seaintegral.asm.o [ 33%] Building ASM_NASM object common/CMakeFiles/common.dir/x86/sad-a.asm.o [ 34%] Building ASM_NASM object common/CMakeFiles/common.dir/x86/intrapred8.asm.o [ 35%] Building ASM_NASM object common/CMakeFiles/common.dir/x86/intrapred8_allangs.asm.o [ 36%] Building ASM_NASM object common/CMakeFiles/common.dir/x86/v4-ipfilter8.asm.o [ 37%] Building ASM_NASM object common/CMakeFiles/common.dir/x86/h-ipfilter8.asm.o [ 38%] Building ASM_NASM object common/CMakeFiles/common.dir/x86/ipfilter8.asm.o [ 40%] Building ASM_NASM object common/CMakeFiles/common.dir/x86/loopfilter.asm.o [ 41%] Building CXX object common/CMakeFiles/common.dir/x86/asm-primitives.cpp.o [ 42%] Building CXX object common/CMakeFiles/common.dir/vec/vec-primitives.cpp.o [ 43%] Building CXX object common/CMakeFiles/common.dir/vec/dct-sse3.cpp.o [ 44%] Building CXX object common/CMakeFiles/common.dir/vec/dct-ssse3.cpp.o [ 45%] Building CXX object common/CMakeFiles/common.dir/vec/dct-sse41.cpp.o [ 46%] Building CXX object common/CMakeFiles/common.dir/primitives.cpp.o [ 47%] Building CXX object common/CMakeFiles/common.dir/pixel.cpp.o [ 48%] Building CXX object common/CMakeFiles/common.dir/dct.cpp.o [ 50%] Building CXX object common/CMakeFiles/common.dir/lowpassdct.cpp.o [ 51%] Building CXX object common/CMakeFiles/common.dir/ipfilter.cpp.o [ 52%] Building CXX object common/CMakeFiles/common.dir/intrapred.cpp.o [ 53%] Building CXX object common/CMakeFiles/common.dir/loopfilter.cpp.o [ 54%] Building CXX object common/CMakeFiles/common.dir/constants.cpp.o [ 55%] Building CXX object common/CMakeFiles/common.dir/cpu.cpp.o [ 56%] Building CXX object common/CMakeFiles/common.dir/version.cpp.o [ 57%] Building CXX object common/CMakeFiles/common.dir/threading.cpp.o [ 58%] Building CXX object common/CMakeFiles/common.dir/threadpool.cpp.o [ 60%] Building CXX object common/CMakeFiles/common.dir/wavefront.cpp.o [ 61%] Building CXX object common/CMakeFiles/common.dir/md5.cpp.o [ 62%] Building CXX object common/CMakeFiles/common.dir/bitstream.cpp.o [ 63%] Building CXX object common/CMakeFiles/common.dir/yuv.cpp.o [ 64%] Building CXX object common/CMakeFiles/common.dir/shortyuv.cpp.o [ 65%] Building CXX object common/CMakeFiles/common.dir/picyuv.cpp.o [ 66%] Building CXX object common/CMakeFiles/common.dir/common.cpp.o [ 67%] Building CXX object common/CMakeFiles/common.dir/param.cpp.o [ 68%] Building CXX object common/CMakeFiles/common.dir/frame.cpp.o /tmp/yaourt-tmp-eliot/aur-x265-hg/src/x265/source/common/frame.cpp: In constructor ‘x265::Frame::Frame()’: /tmp/yaourt-tmp-eliot/aur-x265-hg/src/x265/source/common/frame.cpp:47:42: warning: ‘void memset(void, int, size_t)’ clearing an object of non-trivial type ‘struct x265::Lowres’; use assignment or value-initialization instead [-Wclass-memaccess] memset(&m_lowres, 0, sizeof(m_lowres)); ^ In file included from /tmp/yaourt-tmp-eliot/aur-x265-hg/src/x265/source/common/frame.h:29, from /tmp/yaourt-tmp-eliot/aur-x265-hg/src/x265/source/common/frame.cpp:26: /tmp/yaourt-tmp-eliot/aur-x265-hg/src/x265/source/common/lowres.h:107:8: note: ‘struct x265::Lowres’ declared here struct Lowres : public ReferencePlanes ^~ [ 70%] Building CXX object common/CMakeFiles/common.dir/framedata.cpp.o [ 71%] Building CXX object common/CMakeFiles/common.dir/cudata.cpp.o [ 72%] Building CXX object common/CMakeFiles/common.dir/slice.cpp.o [ 73%] Building CXX object common/CMakeFiles/common.dir/lowres.cpp.o [ 74%] Building CXX object common/CMakeFiles/common.dir/piclist.cpp.o [ 75%] Building CXX object common/CMakeFiles/common.dir/predict.cpp.o [ 76%] Building CXX object common/CMakeFiles/common.dir/scalinglist.cpp.o [ 77%] Building CXX object common/CMakeFiles/common.dir/quant.cpp.o [ 78%] Building CXX object common/CMakeFiles/common.dir/deblock.cpp.o [ 78%] Built target common Scanning dependencies of target dynamicHDR10 [ 80%] Building CXX object dynamicHDR10/CMakeFiles/dynamicHDR10.dir/json11/json11.cpp.o [ 81%] Building CXX object dynamicHDR10/CMakeFiles/dynamicHDR10.dir/JsonHelper.cpp.o [ 82%] Building CXX object dynamicHDR10/CMakeFiles/dynamicHDR10.dir/metadataFromJson.cpp.o [ 83%] Building CXX object dynamicHDR10/CMakeFiles/dynamicHDR10.dir/SeiMetadataDictionary.cpp.o [ 84%] Building CXX object dynamicHDR10/CMakeFiles/dynamicHDR10.dir/api.cpp.o [ 84%] Built target dynamicHDR10 Scanning dependencies of target x265-shared [ 85%] Linking CXX shared library libx265.so [ 85%] Built target x265-shared Scanning dependencies of target cli [ 86%] Building CXX object CMakeFiles/cli.dir/input/input.cpp.o [ 87%] Building CXX object CMakeFiles/cli.dir/input/yuv.cpp.o [ 88%] Building CXX object CMakeFiles/cli.dir/input/y4m.cpp.o [ 90%] Building CXX object CMakeFiles/cli.dir/output/output.cpp.o [ 91%] Building CXX object CMakeFiles/cli.dir/output/reconplay.cpp.o [ 92%] Building CXX object CMakeFiles/cli.dir/output/yuv.cpp.o [ 93%] Building CXX object CMakeFiles/cli.dir/output/y4m.cpp.o [ 94%] Building CXX object CMakeFiles/cli.dir/output/raw.cpp.o [ 95%] Building CXX object CMakeFiles/cli.dir/x265.cpp.o [ 96%] Linking CXX executable x265 [ 96%] Built target cli Scanning dependencies of target x265-static [ 97%] Linking CXX static library libx265.a [ 97%] Built target x265-static Scanning dependencies of target hdr10plus-shared [ 98%] Linking CXX shared library libhdr10plus.so [ 98%] Built target hdr10plus-shared Scanning dependencies of target hdr10plus-static [100%] Linking CXX static library libhdr10plus.a [100%] Built target hdr10plus-static

Comments (1)

  1. Log in to comment