Bug#1008630: gcc-12: array-bounds false positive in libsepol
Package: gcc-12
Version: 12-20220319-1
Severity: normal
GCC 12 emits false positives for the array-bounds warning, e.g.
failing to build libsepol:
git clone https://github.com/SELinuxProject/selinux.git
cd selinux/libsepol/
make CC=gcc-12
gcc-12 -Werror -Wall -W -Wundef -Wshadow -Wmissing-format-attribute
-O2 -fno-semantic-interposition -I. -I../include -D_GNU_SOURCE
-I../cil/include -DHAVE_REALLOCARRAY -fPIC -c -o
../cil/src/cil_binary.o ../cil/src/cil_binary.c
In file included from ../include/sepol/policydb/context.h:23,
from ../include/sepol/policydb/policydb.h:62,
from ../cil/src/cil_binary.c:41:
In function ‘mls_level_init’,
inlined from ‘mls_level_destroy’ at
../include/sepol/policydb/mls_types.h:99:2,
inlined from ‘mls_level_destroy’ at
../include/sepol/policydb/mls_types.h:92:20,
inlined from ‘mls_range_destroy’ at
../include/sepol/policydb/mls_types.h:149:2,
inlined from ‘cil_rangetransition_to_policydb’ at
../cil/src/cil_binary.c:3225:6:
../include/sepol/policydb/mls_types.h:89:9: error: ‘memset’ offset [0,
23] is out of the bounds [0, 0] [-Werror=array-bounds]
89 | memset(level, 0, sizeof(mls_level_t));
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/sepol/policydb/mls_types.h:89:9: error: ‘memset’ offset [0,
23] is out of the bounds [0, 0] [-Werror=array-bounds]
cc1: all warnings being treated as errors
Reply to: