Closed marillat closed 3 years ago
That looks like a bug in the static analyzer of the specific GCC version you are using. If you look at the code two lines above the first error, there is a loop condition to check that uiArrayAddr
doesn't exceed the MRG_MAX_NUM_CANDS
range:
while (uiArrayAddr < maxNumMergeCand && uiArrayAddr < MRG_MAX_NUM_CANDS)
{
mrgCtx.interDirNeighbours [uiArrayAddr ] = 1;
mrgCtx.BcwIdx [uiArrayAddr ] = BCW_DEFAULT;
mrgCtx.mvFieldNeighbours [uiArrayAddr << 1] . setMvField(Mv(0, 0), r);
mrgCtx.useAltHpelIf [uiArrayAddr ] = false;
You can work around the issue by adding -Wno-error=stringop-overflow
to the compiler-flags in source/Lib/vvdec/CMakeLists.txt line 100.
I agree the gcc version is old. I already did a build by removing -Werror from compiler flags You can close this bug. I'll report this bug to GCC if I see again this problem with never GCC.
powerpc Debian unstable gcc 10.2.1