> From: Stephen Hemminger [mailto:[email protected]] > Sent: Tuesday, 20 October 2026 16.56 > > Without optimization GCC produces warnings for unreachable code paths. > They check memcpy() against the object size even on paths that are dead > for the inlined arguments. This breaks debug builds of app/test > with -Werror on lib/stack/rte_stack_pile.h, > and has required local pragma workarounds elsewhere. > > Disable both warnings when optimization is 0. They stay enabled for > optimized builds, where the analysis is flow-sensitive. > > Bugzilla ID: 2061 > > Reported-by: Ali Alnubani <[email protected]> > Signed-off-by: Stephen Hemminger <[email protected]> > --- > config/meson.build | 6 ++++++ > 1 file changed, 6 insertions(+) > > diff --git a/config/meson.build b/config/meson.build > index 745097e8aa..bfac1cd93d 100644 > --- a/config/meson.build > +++ b/config/meson.build > @@ -378,6 +378,12 @@ if cc.has_argument('-Wno-comma') > no_comma_cflag = '-Wno-comma' > endif > > +# GCC's string/memory access warnings are flow-insensitive without > +# optimization and produce false positives on dead paths of inlined > code. > +if get_option('optimization') == '0' and cc.get_id() == 'gcc' > + global_cflags += ['-Wno-stringop-overflow', '-Wno-stringop- > overread'] > +endif > + > foreach arg: global_cflags > if cc.has_argument(arg) > add_project_arguments(arg, language: 'c') > -- > 2.53.0
I replied in the wrong thread, here it comes again: Also '-Warray-bounds'? Consider making it a series, and also remove existing overflow/overread pragmas in the code (if viable): lib/ring/rte_ring_elem_pvt.h - You did this already! lib/eal/ppc/include/rte_memcpy.h With or without suggested changes, Acked-by: Morten Brørup <[email protected]>

