On Wed, Jun 24, 2020 at 5:09 AM Dimitry Andric <d...@freebsd.org> wrote: > > On 24 Jun 2020, at 02:41, Kyle Evans <kev...@freebsd.org> wrote: > > > > On Thu, Jun 18, 2020 at 1:09 PM Jung-uk Kim <j...@freebsd.org> wrote: > >> > >> Author: jkim > >> Date: Thu Jun 18 18:09:16 2020 > >> New Revision: 362333 > >> URL: https://svnweb.freebsd.org/changeset/base/362333 > >> > >> Log: > >> MFV: r362286 > >> > >> Merge flex 2.6.4. > >> > > > > Hi, > > > > I'm looking at getting amd64 world buildable again by gcc6; this seems > > to give it some gas: > > > > /usr/src/contrib/flex/src/main.c: In function 'check_options': > > /usr/src/contrib/flex/src/main.c:347:14: error: assignment discards > > 'const' qualifier from pointer target type > > [-Werror=discarded-qualifiers] > > if ((slash = strrchr(M4, '/')) != NULL) { > > > > The following trivial patch seems to make gcc6 happy again. > > This is a strange one. As gcc6 has been removed from ports, I had to > resort to an older 12-STABLE box which still had it, but no matter what > I try, I cannot get the warning that is being produced by the CI system. > What does it do differently? > > Also, the warning is indeed bogus, as strrchr() returns a non-const char > pointer. As I can't reproduce it, I also can't verify which gcc version > fixes the bogus warning. >
It's bogus, but it's also not-even-wrong given that strrchr doesn't do anything to make it actually safe to mutate *strrchr() in a scenario like this where the input is apparently a string literal. I consider it an anti-footgun measure to make sure we've constified slash here. Thanks, Kyle Evans _______________________________________________ svn-src-head@freebsd.org mailing list https://lists.freebsd.org/mailman/listinfo/svn-src-head To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"