bug-gnulib
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Grep-devel] avoiding new warnings


From: Jim Meyering
Subject: Re: [Grep-devel] avoiding new warnings
Date: Sun, 21 May 2017 13:02:07 -0700

On Sun, May 21, 2017 at 12:18 PM, Paul Eggert <address@hidden> wrote:
> Jim Meyering wrote:
>>
>>    - -Wduplicated-branches complained about three false positives,
>
> In Emacs, I found -Wduplicated-branches to be useless and I disabled it.
> Since it's finding only false alarms in grep, too, I suggest that we disable
> it by default at the Gnulib level. My impression is that for GNU code,
> -Wduplicated-branches is mostly just the compiler saying "Look how smart I
> am!" rather than something that's helpful in finding real bugs.

Hi Paul,
I'm inclined to wait for more exposure, and/or to let projects disable
it themselves, since two of the three instances it flagged in grep
were odd enough that I feel they benefit from the added attention:

src/kwset.c:759:  ptrdiff_t ret = (IGNORE_DUPLICATE_BRANCH_WARNING
src/kwset.c-760-                   (kwset->trans
src/kwset.c-761-                    ? bmexec_trans (kwset, text, size)
src/kwset.c-762-                    : bmexec_trans (kwset, text, size)));
--
src/kwset.c:908:  return (IGNORE_DUPLICATE_BRANCH_WARNING
src/kwset.c-909-          (kwset->trans
src/kwset.c-910-           ? acexec_trans (kwset, text, size, kwsmatch, longest)
src/kwset.c-911-           : acexec_trans (kwset, text, size,
kwsmatch, longest)));

In those cases, the duplication is tied to compiler optimization
internals, which makes me think we should have a test to ensure that
this very unusual (and kludgey-feeling) technique is still required.
I.e., it feels like a technique that a compiler optimizer may perform
on its own, rendering this duplication unnecessary.



reply via email to

[Prev in Thread] Current Thread [Next in Thread]