Hi Thomas, Daniel, Stefano,

Regarding the following warning (GCC 11 on Fedora 34):

In file included from pc-bios/s390-ccw/main.c:11:

In function ‘memset’,

    inlined from ‘boot_setup’ at pc-bios/s390-ccw/main.c:185:5,

    inlined from ‘main’ at pc-bios/s390-ccw/main.c:288:5:

pc-bios/s390-ccw/libc.h:28:14: warning: writing 1 byte into a region of
size 0 [-Wstringop-overflow=]

   28 |         p[i] = c;

      |         ~~~~~^~~

Daniel were right on IRC:

danpb: it is from a call  memset((char *)S390EP, 0, 6)     where  S390EP
is just a constant address 0x10008
danpb: the compiler doesn't now how big that is, so it seems to assume
it is zero length

This is a known GCC issue:
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=99578
"gcc-11 -Warray-bounds or -Wstringop-overread warning when accessing a
pointer from integer literal"

Regards,

Phil.


Reply via email to