svn commit: r360125 - in head/usr.bin/diff: . tests

Kyle Evans kevans at freebsd.org
Tue Apr 28 14:34:55 UTC 2020


On Tue, Apr 28, 2020 at 7:58 AM Kyle Evans <kevans at freebsd.org> wrote:
>
> On Tue, Apr 28, 2020 at 7:55 AM Jan Beich <jbeich at freebsd.org> wrote:
> >
> > Gary Jennejohn <gljennjohn at gmail.com> writes:
> >
> > > On Tue, 28 Apr 2020 07:25:18 -0500
> > > Kyle Evans <kevans at freebsd.org> wrote:
> > >
> > >> On Tue, Apr 28, 2020 at 6:52 AM Jan Beich <jbeich at freebsd.org> wrote:
> > >> >
> > >> > Kyle Evans <kevans at FreeBSD.org> writes:
> > >> >
> > >> > > Author: kevans
> > >> > > Date: Mon Apr 20 16:14:44 2020
> > >> > > New Revision: 360125
> > >> > > URL: https://svnweb.freebsd.org/changeset/base/360125
> > >> > >
> > >> > > Log:
> > >> > >   diff(1): reject conflicting formatting options
> > >> > >
> > >> > >   This matches GNU diff(1) behavior and, more importantly, eliminates any
> > >> > >   source of confusion if multiple formatting options are specified.
> > >> > >
> > >> > >   Note that the committed diff differs slightly from the submitted: I've
> > >> > >   modified it so that we initialize diff_format to something that isn't an
> > >> > >   accepted format option so that we can also reject --normal -c and -c
> > >> > >   --normal, which would've otherwise been accepted because the default was
> > >> > >   --normal. After option parsing we default it to D_NORMAL if it's still
> > >> > >   unset.
> > >> > >
> > >> > >   PR:         243975
> > >> > >   Submitted by:       fehmi noyan isi
> > >> > >   MFC after:  1 week
> > >> >
> > >> > Appears to break ability to specify number of context lines e.g.,
> > >> >
> > >> > $ diff -U999 /usr/include/sha256.h /usr/include/sha512.h
> > >> > error: conflicting output format options.
> > >> > usage: diff [-aBbdilpTtw] [-c | -e | -f | -n | -q | -u] [--ignore-case]
> > >> > [...]
> > >>
> > >> Hmm, bizarre. =-\ This example works on my machine, and I don't see
> > >> off-hand what would be preventing it for you:
> > >>
> > >> root at viper:/usr/src/usr.bin/diff# diff -U999 /usr/include/sha256.h
> > >> /usr/include/sha512.h
> > >> --- /usr/include/sha256.h       2020-04-22 21:38:54.000000000 -0500
> > >> +++ /usr/include/sha512.h       2020-04-22 21:38:54.000000000 -0500
> > >> @@ -1,99 +1,99 @@
> > >>  /*-
> > >>   * Copyright 2005 Colin Percival
> > >>   * All rights reserved.
> > >>   *
> > >> [... omitted ...]
> > >>
> > >> root at viper:/usr/src/usr.bin/diff# strings /usr/bin/diff | grep 'conflicting'
> > >> error: conflicting output format options.
> > >>
> > >
> > > My /usr/bin/diff was built and installed on April 26, after this
> > > commit, and I don't see the error either.
> >
> > Thanks for confirming. Looks like my "diff" was aliased to "diff -up".
> > Indeed, -u and -U are no longer compatible unlike GNU diff.
>
> Whoops, *facepalm*, you certainly shouldn't be restricted from
> specifying the same output style multiple times. Will fix ASAP.
>

As of r360437, this is no longer an issue and the test case has been
amended. Apologies for the hassle. =-)


More information about the svn-src-head mailing list