Home | History | Annotate | only in /src/usr.bin/sed
History log of /src/usr.bin/sed
RevisionDateAuthorComments
 1.1 21-Mar-1993  cgd branches: 1.1.1;
Initial revision
 1.1.1.2 13-Apr-1993  mycroft Clean up deleted files.
 1.1.1.1 21-Mar-1993  cgd initial import of 386bsd-0.1 sources
 1.1 21-Mar-1993  cgd branches: 1.1.1;
Initial revision
 1.1.1.2 13-Apr-1993  mycroft Clean up deleted files.
 1.1.1.1 21-Mar-1993  cgd initial import of 386bsd-0.1 sources
 1.17 07-Jun-2014  christos put back WARNS=6
 1.16 07-Jun-2014  christos PR/48880: Ryo ONODERA: Unapply one of our patches that broke 'G'.
 1.15 06-Jun-2014  christos Merge our changes.
 1.14 14-Apr-2009  lukem branches: 1.14.12; 1.14.22;
Enable WARNS=4 by default for usr.bin, except for:
awk bdes checknr compile_et error gss hxtool kgetcred kinit
klist ldd less lex locale login m4 man menuc mk_cmds
mklocale msgc openssl rpcgen rpcinfo sdiff spell ssh
string2key telnet tn3270 verify_krb5_conf xlint
 1.13 02-Jun-2006  mrg branches: 1.13.28;
remove sh3/GCC2 hack.
 1.12 07-Apr-2006  mrg branches: 1.12.2;
retire HAVE_GCC3/HAVE_GCC4 and introduce HAVE_GCC that is set to 2, 3 or 4.
 1.11 27-Oct-2003  uwe Deoptimize (gcc-sh3-sed hack) only if ${HAVE_GCC3} != "yes".
 1.10 14-Jun-2002  wiz WARNS=2
 1.9 23-Apr-2002  thorpej Use -O0 on SuperH, for now.
 1.8 09-Jan-1997  tls RCS ID police
 1.7 03-Feb-1994  cgd RCS id's
 1.6 03-Feb-1994  cgd update from Diomidis Spinellis <dspin@leon.nrcps.ariadne-t.gr>
 1.5 11-Nov-1993  jtc Use new POSIX.2 compatible regex routines in C library instead of -lgnuregex.
 1.4 04-Nov-1993  andrew make with -DHISTORIC_PRACTICE to obtain the common EOF behavior of the "n"
command. Don't be fussy about requiring spaces after the "w" command
though.
 1.3 13-Aug-1993  alm removed GNU_REGEX directive
catch infinite substitution for the following cases:
echo hi | sed 's/$/a/g' (prints hia)
echo hi | sed 's/h*/x/g' (terminates with error: infinite substitution)
 1.2 30-Jul-1993  mycroft Add RCS identifiers.
 1.1 13-Apr-1993  alm branches: 1.1.1;
added Berkeley sed with mods to use GNU regex
 1.1.1.2 06-Jun-2014  christos import today's FreeBSD sed.
 1.1.1.1 06-Jun-1993  mrg 4.4BSD-Lite2
 1.12.2.1 19-Jun-2006  chap Sync with head.
 1.13.28.1 13-May-2009  jym Sync with HEAD.

Third (and last) commit. See http://mail-index.netbsd.org/source-changes/2009/05/13/msg221222.html
 1.14.22.1 10-Aug-2014  tls Rebase.
 1.14.12.1 20-Aug-2014  tls Rebase to HEAD as of a few days ago.
 1.2 01-Mar-1995  mycroft Clean up deleted files.
 1.1 13-Apr-1993  alm moved Makefile -> Makefile.bsd
(cvs add ../Makefile doesn't work otherwise)
 1.1 21-Mar-1993  cgd branches: 1.1.1;
Initial revision
 1.1.1.2 13-Apr-1993  mycroft Clean up deleted files.
 1.1.1.1 21-Mar-1993  cgd initial import of 386bsd-0.1 sources
 1.1 21-Mar-1993  cgd branches: 1.1.1;
Initial revision
 1.1.1.2 13-Apr-1993  mycroft Clean up deleted files.
 1.1.1.1 21-Mar-1993  cgd initial import of 386bsd-0.1 sources
 1.5 06-Jun-2014  christos Merge our changes.
 1.4 09-Jan-1997  tls branches: 1.4.76; 1.4.88;
RCS ID police
 1.3 03-Feb-1994  cgd RCS id's
 1.2 03-Feb-1994  cgd update from Diomidis Spinellis <dspin@leon.nrcps.ariadne-t.gr>
 1.1 13-Apr-1993  alm branches: 1.1.1;
added Berkeley sed with mods to use GNU regex
 1.1.1.2 06-Jun-2014  christos import today's FreeBSD sed.
 1.1.1.1 06-Jun-1993  mrg 4.4BSD-Lite2
 1.4.88.1 10-Aug-2014  tls Rebase.
 1.4.76.1 20-Aug-2014  tls Rebase to HEAD as of a few days ago.
 1.1 21-Mar-1993  cgd branches: 1.1.1;
Initial revision
 1.1.1.2 13-Apr-1993  mycroft Clean up deleted files.
 1.1.1.1 21-Mar-1993  cgd initial import of 386bsd-0.1 sources
 1.55 03-Jun-2025  martin PR 59453: fix off by one in escape sequences length check
 1.54 02-Jun-2025  christos Also stop after 2 characters for hex, and 3 for octal and decimal.
 1.53 02-Jun-2025  christos simplify
 1.52 02-Jun-2025  christos PR/59453: Christoph Badura: Don't keep accumulating characters when parsing
\[xod] escapes if the value exceeds the value a character can hold.
 1.51 20-Jan-2023  msaitoh branches: 1.51.2;
s/delimeter/delimiter/ in comment.
 1.50 13-Mar-2021  christos Handle \t too (RVP)
 1.49 11-Mar-2021  christos remove extra increment; fixes: echo o | sed -e 's/o/\a/'
 1.48 05-Oct-2019  christos Recognize \oOOO \dDD \xXX plus the other regular 'C' backslash escapes like
gnu sed does, except when inside regex []. (Gnu sed translates those too,
unless --posix is specified).
 1.47 05-Apr-2016  christos branches: 1.47.16;
PR/49872:Yorick Hardy: sed functions 'i' and 'a' discard leading white space
FIxed as suggested, behavior now matches gnu-sed.
 1.46 12-Mar-2015  christos The latest refactoring changes broke sed -i:
cd /tmp; echo foo > test; sed -i.orig s,fo,ba, test
Back them out until they are fixed.
 1.45 01-Mar-2015  asau Move run-time data structures into processing part.
 1.44 28-Feb-2015  asau Improve modularity of "sed" source:
- move program source input subroutines into compiler part;
- move data I/O subroutines into processor part.
 1.43 26-Jun-2014  christos restore sccsid[]'s per core@'s decision
 1.42 06-Jun-2014  joerg usage is __dead. Kill useless sccsid.
 1.41 06-Jun-2014  christos Merge our changes.
 1.40 05-May-2014  christos Handle a closing brace at the end of a command without a preceding semi-colon:
/foo/ {p;d}
 1.39 28-Jun-2013  joerg branches: 1.39.4;
Fix violations of the sequence point rule.
 1.38 14-Dec-2012  msaitoh Fix memory leak.
 1.37 19-Feb-2010  tnn branches: 1.37.6; 1.37.8; 1.37.12;
Merge the following revisions from OpenBSD to let sed(1) handle
arbitrarily long lines (closes our PR bin/42261).
openbsd/usr.bin/sed/extern.h 1.5
openbsd/usr.bin/sed/main.c 1.13-1.15
openbsd/usr.bin/sed/misc.c 1.8
openbsd/usr.bin/sed/compile.c 1.25-1.28
openbsd/usr.bin/sed/defs.h 1.4
 1.36 13-Apr-2009  lukem Fix WARNS=4 issues (-Wcast-qual -Wsign-compare)
 1.35 17-Apr-2007  christos branches: 1.35.20;
provide _POSIX2_LINE_MAX if not there.
 1.34 18-Jun-2006  gdamore branches: 1.34.4;
Make TOOL_SED, to allow using our own sed in cases where the host's version
is busted in some way.

The TOOL_SED doesn't use TIOCGWINSIZE, and has some changes to include
nbtool_config.h in a cross build environment.

Combined with some other changes (not yet committed), this allows cross
compiling m68k code on Solaris 10/amd64.
 1.33 11-May-2006  mrg branches: 1.33.2;
when calling compile_tr() add (void *) to the 2nd argument's cast chain.
 1.32 02-Apr-2006  christos Coverity CID 878: Remove impossible tests against NULL pointers.
 1.31 17-Nov-2004  matt When adding text due to an a, c, or i command, don't eat the space(s) at
the beginning of the lines since the addition is supposed to be "verbatim".
Fix a comment for compile_text indicating it's also used for the 'c' command.
 1.30 09-Jul-2004  enami Yet another s/xmalloc/xrealloc/ so that large multi line text
can be added.
 1.29 09-Jul-2004  mycroft xmalloc()->xrealloc() so that patterns larger than _POSIX2_LINE_MAX*2-1 work.
 1.28 13-Jun-2004  grant apply patch in PR to avoid writing to unallocated memory.

fixes PR bin/25911 from SHIMIZU Ryo.
 1.27 13-Jun-2004  grant apply patch in PR to fix argument parsing bug.

fixes PR bin/24234 from Keisuke YOSHIDA.
 1.26 12-Jun-2004  minskim Fix a bug that made sed(1) fail if the last character of the line
buffer was a backslash. This closes PR bin/25899.

Patch was borrowed from FreeBSD. Their log says:

Fix a bug in sed(1)'s "s" command wherein if an escape ("\"
character) was initiated at the last character of the line buffer,
the Wrong Thing was done and sed barfed by interpreting the
following NUL byte as a digit. Instead, pull up the next buffer
and record that the "\" was last seen.

OK'ed by jmc@.
 1.25 07-Aug-2003  agc branches: 1.25.2;
Move UCB-licensed code from 4-clause to 3-clause licence.

Patches provided by Joel Baker in PR 22365, verified by myself.
 1.24 14-Jun-2002  wiz Remove #if __STDC__. De-__P() and ANSIfy.
 1.23 11-Jun-2002  itojun err/errx/warn/warnx do not need \n at the end
 1.22 26-Feb-2002  wiz branches: 1.22.2;
Correct spelling of "delimiter", and remove from ignored-errors lists.
 1.21 23-Jan-2002  atatat Add a -E flag to ed(1) and sed(1) so that they can use extended
regular expressions instead of just basic regular expressions.
 1.20 14-Jan-2002  kleink Accept empty commands separated by semicolons; from Aymeric Vincent in
PR standards/15231.
 1.19 19-Dec-1998  christos char -> unsigned char
 1.18 08-Dec-1998  drochner avoid malloc(0)
 1.17 19-Oct-1997  lukem WARNSify, fix .Nm usage, deprecate register, getopt returns -1 not EOF
 1.16 19-Oct-1997  mrg merge lite-2 -- was mostly already done. grr.
 1.15 09-Jan-1997  tls RCS ID police
 1.14 09-Mar-1995  mycroft Compile group commands differently, using a stack rather than calling the
parser recursively. Don't throw away commands after an end group.
 1.13 15-Nov-1994  mycroft Fix thinko in previous commit.
 1.12 09-Nov-1994  mycroft Fix core dump on end of group reported by John Kohl, in a different way.
 1.11 17-Apr-1994  alm branches: 1.11.2;
echo hello | ./sed 'sl[l]lxl'
historically outputs:
hexlo
 1.10 03-Feb-1994  cgd RCS id's
 1.9 03-Feb-1994  cgd update from Diomidis Spinellis <dspin@leon.nrcps.ariadne-t.gr>
 1.8 05-Dec-1993  mycroft Further patch by Havard Eidnes <Havard.Eidnes@runit.sintef.no> to avoid access
to uninitialized memory.
 1.7 20-Nov-1993  mycroft From: Thomas Eberhardt <thomas@mathematik.uni-Bremen.de>
Patch to prevent core dumping when linked dynamically.
 1.6 04-Nov-1993  andrew make with -DHISTORIC_PRACTICE to obtain the common EOF behavior of the "n"
command. Don't be fussy about requiring spaces after the "w" command
though.
 1.5 13-Aug-1993  alm removed GNU_REGEX directive
catch infinite substitution for the following cases:
echo hi | sed 's/$/a/g' (prints hia)
echo hi | sed 's/h*/x/g' (terminates with error: infinite substitution)
 1.4 01-Aug-1993  mycroft Add RCS identifiers.
 1.3 16-Jun-1993  alm fixed regex initialization
 1.2 27-May-1993  alm Fixed some regex bugs in sed
Added a regresssion test, compile.c.test
 1.1 13-Apr-1993  alm branches: 1.1.1;
added Berkeley sed with mods to use GNU regex
 1.1.1.2 06-Jun-2014  christos import today's FreeBSD sed.
 1.1.1.1 28-Apr-1995  mrg 4.4BSD-Lite2
 1.11.2.1 29-Nov-1994  cgd patch 6: fix core dump on end of group. from charles.
 1.22.2.1 14-Jun-2004  jmc Pullup rev 1.26-1.28 (requested by grant in ticket #1710)

sed(1) fixes for PR#25899, PR#24234, PR#25911
 1.25.2.3 30-Aug-2004  tron branches: 1.25.2.3.2;
Pull up revision 1.30 (requested by manu in ticket #795):
Yet another s/xmalloc/xrealloc/ so that large multi line text
can be added.
 1.25.2.2 30-Aug-2004  tron Pull up revision 1.29 (requested by manu in ticket #795):
xmalloc()->xrealloc() so that patterns larger than _POSIX2_LINE_MAX*2-1
work.
 1.25.2.1 14-Jun-2004  jmc Pullup rev 1.26-1.28 (requested by grant in ticket #494)

sed(1) fixes for PR#25899, PR#24234, PR#25911
 1.25.2.3.2.1 06-Feb-2005  jmc Pullup rev 1.31 (requested by matt in ticket #982)

When adding text due to an a, c, or i command, don't eat the space(s) at
the beginning of the lines since the addition is supposed to be 'verbatim'.
Fix a comment for compile_text indicating it's also used for the 'c'
command.
 1.33.2.1 19-Jun-2006  chap Sync with head.
 1.34.4.1 18-Nov-2008  snj Pull up following revision(s) (requested by tsutsui in ticket #1224):
usr.bin/sed/compile.c: revision 1.35
provide _POSIX2_LINE_MAX if not there.
 1.35.20.1 13-May-2009  jym Sync with HEAD.

Third (and last) commit. See http://mail-index.netbsd.org/source-changes/2009/05/13/msg221222.html
 1.37.12.2 20-Aug-2014  tls Rebase to HEAD as of a few days ago.
 1.37.12.1 25-Feb-2013  tls resync with head
 1.37.8.1 25-Dec-2012  snj Pull up following revision(s) (requested by msaitoh in ticket #764):
usr.bin/sed/compile.c: revision 1.38
Fix memory leak.
 1.37.6.2 22-May-2014  yamt sync with head.

for a reference, the tree before this commit was tagged
as yamt-pagecache-tag8.

this commit was splitted into small chunks to avoid
a limitation of cvs. ("Protocol error: too many arguments")
 1.37.6.1 23-Jan-2013  yamt sync with head
 1.39.4.1 10-Aug-2014  tls Rebase.
 1.47.16.1 13-Apr-2020  martin Mostly merge changes from HEAD upto 20200411
 1.51.2.1 02-Aug-2025  perseant Sync with HEAD
 1.3 03-Feb-1994  mycroft Clean up deleted files.
 1.2 16-Jun-1993  alm fixed regex initialization
 1.1 27-May-1993  alm Fixed some regex bugs in sed
Added a regresssion test, compile.c.test
 1.14 31-May-2022  andvar fix various typos in comments, documentation and messages.
 1.13 15-May-2020  christos sed(1): Don't force a newline on last line, if input stream doesn't have one

While here, change how we check if the current line is the last one.
Before, we just checked if there were more files after the current one.
Now, we check the actual content of those files: they files may not have
a line at all. This matches the definition of the "last line" by the
Open Group.

The new behavior is closer to GNU sed.

From FreeBSD (9dd857db3dc558dc61dc8674d204ebc83cac0739), requested by mrg@
 1.12 06-Jun-2014  wiz Renumber so that 3 follows 2.
 1.11 06-Jun-2014  christos Merge our changes.
 1.10 19-Feb-2010  tnn branches: 1.10.12; 1.10.22;
Merge the following revisions from OpenBSD to let sed(1) handle
arbitrarily long lines (closes our PR bin/42261).
openbsd/usr.bin/sed/extern.h 1.5
openbsd/usr.bin/sed/main.c 1.13-1.15
openbsd/usr.bin/sed/misc.c 1.8
openbsd/usr.bin/sed/compile.c 1.25-1.28
openbsd/usr.bin/sed/defs.h 1.4
 1.9 20-Nov-2004  grant no trailing comma at end of enum.
 1.8 07-Aug-2003  agc Move UCB-licensed code from 4-clause to 3-clause licence.

Patches provided by Joel Baker in PR 22365, verified by myself.
 1.7 09-Jan-1997  tls RCS ID police
 1.6 09-Mar-1995  mycroft Compile group commands differently, using a stack rather than calling the
parser recursively. Don't throw away commands after an end group.
 1.5 03-Feb-1994  cgd RCS id's
 1.4 03-Feb-1994  cgd update from Diomidis Spinellis <dspin@leon.nrcps.ariadne-t.gr>
 1.3 01-Aug-1993  mycroft Add RCS identifiers.
 1.2 16-Jun-1993  alm fixed regex initialization
 1.1 13-Apr-1993  alm branches: 1.1.1;
added Berkeley sed with mods to use GNU regex
 1.1.1.2 06-Jun-2014  christos import today's FreeBSD sed.
 1.1.1.1 06-Jun-1993  mrg 4.4BSD-Lite2
 1.10.22.1 10-Aug-2014  tls Rebase.
 1.10.12.1 20-Aug-2014  tls Rebase to HEAD as of a few days ago.
 1.20 12-Mar-2015  christos The latest refactoring changes broke sed -i:
cd /tmp; echo foo > test; sed -i.orig s,fo,ba, test
Back them out until they are fixed.
 1.19 01-Mar-2015  asau Hide more subroutines in processing phase.
 1.18 01-Mar-2015  asau Close files opened at processing time within processing phase.
 1.17 01-Mar-2015  asau Move run-time data structures into processing part.
 1.16 01-Mar-2015  asau Move data I/O file pointers into processing part.
 1.15 28-Feb-2015  asau Improve modularity of "sed" source:
- move program source input subroutines into compiler part;
- move data I/O subroutines into processor part.
 1.14 06-Jun-2014  wiz Renumber so that 3 follows 2.
 1.13 06-Jun-2014  christos add netbsd
 1.12 06-Jun-2014  christos Merge our changes.
 1.11 19-Feb-2010  tnn branches: 1.11.12; 1.11.22;
Merge the following revisions from OpenBSD to let sed(1) handle
arbitrarily long lines (closes our PR bin/42261).
openbsd/usr.bin/sed/extern.h 1.5
openbsd/usr.bin/sed/main.c 1.13-1.15
openbsd/usr.bin/sed/misc.c 1.8
openbsd/usr.bin/sed/compile.c 1.25-1.28
openbsd/usr.bin/sed/defs.h 1.4
 1.10 13-Apr-2009  lukem Fix WARNS=4 issues (-Wcast-qual -Wsign-compare)
 1.9 07-Aug-2003  agc branches: 1.9.42;
Move UCB-licensed code from 4-clause to 3-clause licence.

Patches provided by Joel Baker in PR 22365, verified by myself.
 1.8 14-Jun-2002  wiz Remove #if __STDC__. De-__P() and ANSIfy.
 1.7 23-Jan-2002  atatat Add a -E flag to ed(1) and sed(1) so that they can use extended
regular expressions instead of just basic regular expressions.
 1.6 11-Oct-2000  is More format string cleanup by sommerfeld.
 1.5 09-Jan-1997  tls branches: 1.5.4; 1.5.12;
RCS ID police
 1.4 03-Feb-1994  cgd RCS id's
 1.3 03-Feb-1994  cgd update from Diomidis Spinellis <dspin@leon.nrcps.ariadne-t.gr>
 1.2 01-Aug-1993  mycroft Add RCS identifiers.
 1.1 13-Apr-1993  alm branches: 1.1.1;
added Berkeley sed with mods to use GNU regex
 1.1.1.2 06-Jun-2014  christos import today's FreeBSD sed.
 1.1.1.1 06-Jun-1993  mrg 4.4BSD-Lite2
 1.5.12.1 18-Oct-2000  tv Pullup usr.bin string format fixes [is].
See "cvs log" for explicit revision numbers per file, from sommerfeld.
 1.5.4.1 19-Oct-2000  he Pull up revision 1.6 (requested by he):
Format string cleanup.
 1.9.42.1 13-May-2009  jym Sync with HEAD.

Third (and last) commit. See http://mail-index.netbsd.org/source-changes/2009/05/13/msg221222.html
 1.11.22.1 10-Aug-2014  tls Rebase.
 1.11.12.1 20-Aug-2014  tls Rebase to HEAD as of a few days ago.
 1.1 21-Mar-1993  cgd branches: 1.1.1;
Initial revision
 1.1.1.2 13-Apr-1993  mycroft Clean up deleted files.
 1.1.1.1 21-Mar-1993  cgd initial import of 386bsd-0.1 sources
 1.1 21-Mar-1993  cgd branches: 1.1.1;
Initial revision
 1.1.1.2 01-Mar-1995  mycroft Clean up deleted files.
 1.1.1.1 21-Mar-1993  cgd initial import of 386bsd-0.1 sources
 1.1 21-Mar-1993  cgd branches: 1.1.1;
Initial revision
 1.1.1.2 01-Mar-1995  mycroft Clean up deleted files.
 1.1.1.1 21-Mar-1993  cgd initial import of 386bsd-0.1 sources
 1.2 03-Feb-1994  mycroft Clean up deleted files.
 1.1 13-Apr-1993  alm added Berkeley sed with mods to use GNU regex
 1.38 11-Mar-2021  christos Use the same options like m4 (-g turns on GNU, -G turns off GNU) Suggested
by uwe@
 1.37 11-Mar-2021  christos Add -G to support GNU extensions
 1.36 15-May-2020  christos sed(1): Don't force a newline on last line, if input stream doesn't have one

While here, change how we check if the current line is the last one.
Before, we just checked if there were more files after the current one.
Now, we check the actual content of those files: they files may not have
a line at all. This matches the definition of the "last line" by the
Open Group.

The new behavior is closer to GNU sed.

From FreeBSD (9dd857db3dc558dc61dc8674d204ebc83cac0739), requested by mrg@
 1.35 05-Oct-2019  christos add an abort for a case that can't happen
 1.34 12-Mar-2015  christos branches: 1.34.16;
The latest refactoring changes broke sed -i:
cd /tmp; echo foo > test; sed -i.orig s,fo,ba, test
Back them out until they are fixed.
 1.33 01-Mar-2015  asau Close files opened at processing time within processing phase.
 1.32 01-Mar-2015  asau Move data I/O file pointers into processing part.
 1.31 28-Feb-2015  asau Improve modularity of "sed" source:
- move program source input subroutines into compiler part;
- move data I/O subroutines into processor part.
 1.30 26-Jun-2014  christos restore sccsid[]'s per core@'s decision
 1.29 21-Jun-2014  christos typo
 1.28 21-Jun-2014  christos CID 10006930: Prevent outfile overwrite resource leak.
 1.27 18-Jun-2014  christos Fix usage. The man page is incorrect with respect to -I and -i and need
fixing, but my troff foo is not there.
 1.26 18-Jun-2014  wiz Sync usage with manpage.
 1.25 17-Jun-2014  christos add -u (unbuffered output) after GNU sed.
 1.24 06-Jun-2014  joerg usage is __dead. Kill useless sccsid.
 1.23 06-Jun-2014  christos Prefer setvbuf for those who have it.
 1.22 06-Jun-2014  christos Merge our changes.
 1.21 19-Feb-2010  tnn branches: 1.21.12; 1.21.22;
Merge the following revisions from OpenBSD to let sed(1) handle
arbitrarily long lines (closes our PR bin/42261).
openbsd/usr.bin/sed/extern.h 1.5
openbsd/usr.bin/sed/main.c 1.13-1.15
openbsd/usr.bin/sed/misc.c 1.8
openbsd/usr.bin/sed/compile.c 1.25-1.28
openbsd/usr.bin/sed/defs.h 1.4
 1.20 13-Apr-2009  lukem Fix WARNS=4 issues (-Wcast-qual -Wsign-compare)
 1.19 16-Sep-2008  perry branches: 1.19.6;
Add a -r flag that is an alias for -E, for compatibility with gnu sed.
 1.18 21-Jul-2008  lukem Remove the \n and tabs from the __COPYRIGHT() strings.
Tweak to use a consistent format.
 1.17 18-Jun-2006  gdamore branches: 1.17.20;
Make TOOL_SED, to allow using our own sed in cases where the host's version
is busted in some way.

The TOOL_SED doesn't use TIOCGWINSIZE, and has some changes to include
nbtool_config.h in a cross build environment.

Combined with some other changes (not yet committed), this allows cross
compiling m68k code on Solaris 10/amd64.
 1.16 13-Jul-2004  wiz branches: 1.16.6;
Usage: Options before arguments; add -E. From Kouichirou Hiratsuka in PR 26255.
 1.15 16-Oct-2003  grant call setprogname(), replace a 'sed' with getprogname().
 1.14 07-Aug-2003  agc Move UCB-licensed code from 4-clause to 3-clause licence.

Patches provided by Joel Baker in PR 22365, verified by myself.
 1.13 14-Jun-2002  wiz Remove #if __STDC__. De-__P() and ANSIfy.
 1.12 17-May-2002  wiz Fix format string in usage. bin/16869 by Julio Merino.
 1.11 23-Jan-2002  atatat Add a -E flag to ed(1) and sed(1) so that they can use extended
regular expressions instead of just basic regular expressions.
 1.10 19-Oct-1997  lukem WARNSify, fix .Nm usage, deprecate register, getopt returns -1 not EOF
 1.9 09-Jan-1997  tls RCS ID police
 1.8 08-May-1996  mark Use an integer instead of a char with getc() and ungetc() in mf_fgets()
so that it works with compilers that default to unsigned chars
Note: getc() and ungetc() are prototyped to use ints rather than
chars.
 1.7 23-Feb-1995  jtc Fixed typo in usage string.
 1.6 03-Feb-1994  cgd RCS id's
 1.5 03-Feb-1994  cgd update from Diomidis Spinellis <dspin@leon.nrcps.ariadne-t.gr>
 1.4 04-Jan-1994  cgd rename fgetline() and sharpen axe for bostic...
 1.3 22-Dec-1993  cgd update for fgetline
 1.2 01-Aug-1993  mycroft Add RCS identifiers.
 1.1 13-Apr-1993  alm branches: 1.1.1;
added Berkeley sed with mods to use GNU regex
 1.1.1.2 06-Jun-2014  christos import today's FreeBSD sed.
 1.1.1.1 03-Jan-1994  mrg 4.4BSD-Lite2
 1.16.6.1 19-Jun-2006  chap Sync with head.
 1.17.20.2 24-Sep-2008  wrstuden Merge in changes between wrstuden-revivesa-base-2 and
wrstuden-revivesa-base-3.
 1.17.20.1 18-Sep-2008  wrstuden Sync with wrstuden-revivesa-base-2.
 1.19.6.1 13-May-2009  jym Sync with HEAD.

Third (and last) commit. See http://mail-index.netbsd.org/source-changes/2009/05/13/msg221222.html
 1.21.22.1 10-Aug-2014  tls Rebase.
 1.21.12.1 20-Aug-2014  tls Rebase to HEAD as of a few days ago.
 1.34.16.1 13-Apr-2020  martin Mostly merge changes from HEAD upto 20200411
 1.2 03-Feb-1994  mycroft Clean up deleted files.
 1.1 13-Apr-1993  alm added Berkeley sed with mods to use GNU regex
 1.15 26-Jun-2014  christos restore sccsid[]'s per core@'s decision
 1.14 06-Jun-2014  wiz Renumber so that 3 follows 2.
 1.13 06-Jun-2014  joerg usage is __dead. Kill useless sccsid.
 1.12 06-Jun-2014  christos Merge our changes.
 1.11 19-Feb-2010  tnn branches: 1.11.12; 1.11.22;
Merge the following revisions from OpenBSD to let sed(1) handle
arbitrarily long lines (closes our PR bin/42261).
openbsd/usr.bin/sed/extern.h 1.5
openbsd/usr.bin/sed/main.c 1.13-1.15
openbsd/usr.bin/sed/misc.c 1.8
openbsd/usr.bin/sed/compile.c 1.25-1.28
openbsd/usr.bin/sed/defs.h 1.4
 1.10 13-Apr-2009  lukem Fix WARNS=4 issues (-Wcast-qual -Wsign-compare)
 1.9 18-Jun-2006  gdamore branches: 1.9.28;
Make TOOL_SED, to allow using our own sed in cases where the host's version
is busted in some way.

The TOOL_SED doesn't use TIOCGWINSIZE, and has some changes to include
nbtool_config.h in a cross build environment.

Combined with some other changes (not yet committed), this allows cross
compiling m68k code on Solaris 10/amd64.
 1.8 07-Aug-2003  agc branches: 1.8.12;
Move UCB-licensed code from 4-clause to 3-clause licence.

Patches provided by Joel Baker in PR 22365, verified by myself.
 1.7 14-Jun-2002  wiz Remove #if __STDC__. De-__P() and ANSIfy.
 1.6 19-Oct-1997  lukem WARNSify, fix .Nm usage, deprecate register, getopt returns -1 not EOF
 1.5 09-Jan-1997  tls RCS ID police
 1.4 03-Feb-1994  cgd RCS id's
 1.3 03-Feb-1994  cgd update from Diomidis Spinellis <dspin@leon.nrcps.ariadne-t.gr>
 1.2 01-Aug-1993  mycroft Add RCS identifiers.
 1.1 13-Apr-1993  alm branches: 1.1.1;
added Berkeley sed with mods to use GNU regex
 1.1.1.2 06-Jun-2014  christos import today's FreeBSD sed.
 1.1.1.1 06-Jun-1993  mrg 4.4BSD-Lite2
 1.8.12.1 19-Jun-2006  chap Sync with head.
 1.9.28.1 13-May-2009  jym Sync with HEAD.

Third (and last) commit. See http://mail-index.netbsd.org/source-changes/2009/05/13/msg221222.html
 1.11.22.1 10-Aug-2014  tls Rebase.
 1.11.12.1 20-Aug-2014  tls Rebase to HEAD as of a few days ago.
 1.54 17-Sep-2024  kre PR lib/58674

When building the tools version of sed, treat all wide characters
as if they occupy just one column for the purposes of sed's 'l'
command (which it is very unlikely to be used from the tools sed).

wdwidth() is another XSI function, not necessarily available everywhere.
 1.53 15-May-2020  christos branches: 1.53.6; 1.53.8;
sed(1): Don't force a newline on last line, if input stream doesn't have one

While here, change how we check if the current line is the last one.
Before, we just checked if there were more files after the current one.
Now, we check the actual content of those files: they files may not have
a line at all. This matches the definition of the "last line" by the
Open Group.

The new behavior is closer to GNU sed.

From FreeBSD (9dd857db3dc558dc61dc8674d204ebc83cac0739), requested by mrg@
 1.52 12-Mar-2015  christos branches: 1.52.18;
The latest refactoring changes broke sed -i:
cd /tmp; echo foo > test; sed -i.orig s,fo,ba, test
Back them out until they are fixed.
 1.51 01-Mar-2015  asau Hide more subroutines in processing phase.
 1.50 01-Mar-2015  asau Close files opened at processing time within processing phase.
 1.49 01-Mar-2015  asau Move run-time data structures into processing part.
 1.48 01-Mar-2015  asau Move data I/O file pointers into processing part.
 1.47 28-Feb-2015  asau Improve modularity of "sed" source:
- move program source input subroutines into compiler part;
- move data I/O subroutines into processor part.
 1.46 13-Aug-2014  christos PR/49109: Jeremie Le Hen: fix sed relative addressin (1,+N)
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=192108
http://svnweb.freebsd.org/base?view=revision&revision=269302
XXX: pullup 7.
 1.45 26-Jun-2014  christos branches: 1.45.2;
restore sccsid[]'s per core@'s decision
 1.44 09-Jun-2014  christos PR/48883: Justin Cormack: Cope with systems that don't provide REG_STARTEND
 1.43 07-Jun-2014  christos PR/48880: Ryo ONODERA: Unapply one of our patches that broke 'G'.
 1.42 07-Jun-2014  ryoon Restore G command
 1.41 06-Jun-2014  joerg usage is __dead. Kill useless sccsid.
 1.40 06-Jun-2014  christos Merge our changes.
 1.39 17-Mar-2013  uwe branches: 1.39.6;
The change ("c") command should start a new cycle.

Apply one line patch I posted in PR #45981 and document this in the
manual page.
 1.38 13-Apr-2009  lukem branches: 1.38.6; 1.38.8; 1.38.12;
Fix WARNS=4 issues (-Wcast-qual -Wsign-compare)
 1.37 18-Jun-2006  gdamore branches: 1.37.28;
Make TOOL_SED, to allow using our own sed in cases where the host's version
is busted in some way.

The TOOL_SED doesn't use TIOCGWINSIZE, and has some changes to include
nbtool_config.h in a cross build environment.

Combined with some other changes (not yet committed), this allows cross
compiling m68k code on Solaris 10/amd64.
 1.36 02-Apr-2006  christos branches: 1.36.2;
Coverity CID 1181: Protect access against NULL.
 1.35 07-Nov-2003  itojun safer realloc, from openbsd
 1.34 07-Nov-2003  itojun prevent integer underflow. freebsd rev 1.32. via openbsd
 1.33 07-Aug-2003  agc Move UCB-licensed code from 4-clause to 3-clause licence.

Patches provided by Joel Baker in PR 22365, verified by myself.
 1.32 14-Jun-2002  wiz Remove #if __STDC__. De-__P() and ANSIfy.
 1.31 11-Jun-2002  itojun err/errx/warn/warnx do not need \n at the end
 1.30 02-Oct-2001  atatat branches: 1.30.2;
Back out last patch (again). This patch seems to satisfy test suites
that I've found, while the previous one did not.
 1.29 28-Sep-2001  atatat New fix for PR bin/14074. This one doesn't make sed hang.
 1.28 28-Sep-2001  atatat Back out the pr fix. It doesn't work.
 1.27 27-Sep-2001  atatat Don't attempt to memmove() if psl (pattern space length) is zero.
Fixes PR bin/14074: Simple expression core dumps sed.
 1.26 09-Nov-1999  drochner branches: 1.26.4;
Since our gcc doesn't warn about NULL format strings anymore, we can
fix the incorrect err(1, "%s", "") et al.
Closes PR bin/7592 by cgd.
 1.25 31-May-1999  kim branches: 1.25.4;
Fix bug pointed out by Jerry Peek <jpeek@jpeek.com> in PR bin/7674.
If hold space null when doing an 'G', make sure it contains a newline.
Fix copied from revision 1.17 where cgd applied a fix for 'x'.
 1.24 19-Dec-1998  christos branches: 1.24.2;
char -> unsigned char
compensate for not having REG_STARTEND
 1.23 25-Aug-1998  ross Add { and } to shut up egcs. Reformat the more questionable code.
 1.22 30-Mar-1998  mrg use int as array index.
 1.21 22-Oct-1997  thorpej Remove an extra semicolon that broke processing of the "r" directive.
 1.20 19-Oct-1997  lukem branches: 1.20.2;
WARNSify, fix .Nm usage, deprecate register, getopt returns -1 not EOF
 1.19 19-Oct-1997  mrg merge lite-2 -- was mostly already done. grr.
 1.18 09-Jan-1997  tls RCS ID police
 1.17 11-Jul-1995  cgd fix bug pointed out by Dennis Ferguson <dennis@mci.net>. if hold space null
when doing an 'x', make sure it contains a newline.
 1.16 15-Mar-1995  mycroft The `D' command should only input a new line if the pattern space becomes empty.
 1.15 15-Mar-1995  mycroft Fix the P command, and optimize D slightly.
 1.14 15-Mar-1995  mycroft Remove an old #ifndef of little value.
 1.13 24-Mar-1994  mycroft Fix bug with D leaving junk at end of pattern space.
 1.12 01-Mar-1994  cgd DTRT with empty RE matches. or at least, do something better. fix off
to bostic and dspin.
 1.11 28-Feb-1994  andrew Restore the traditional behaviour of the "n" command.
 1.10 09-Feb-1994  cgd patch from Diomidis Spinellis to fix 'infinite' loop
 1.9 03-Feb-1994  cgd RCS id's
 1.8 03-Feb-1994  cgd update from Diomidis Spinellis <dspin@leon.nrcps.ariadne-t.gr>
 1.7 14-Aug-1993  mycroft Put back RCS identifier.
 1.6 14-Aug-1993  alm Was testing against rm_so instead of rm_eo. So now:
$ echo aabb | sed 's/\(.*\)\1/(\1)/g'
(a)(b)(c)
 1.5 13-Aug-1993  alm removed GNU_REGEX directive
catch infinite substitution for the following cases:
echo hi | sed 's/$/a/g' (prints hia)
echo hi | sed 's/h*/x/g' (terminates with error: infinite substitution)
 1.4 01-Aug-1993  mycroft Add RCS identifiers.
 1.3 02-Jul-1993  alm added missing parens in buffer allocation (caused seg violation)
 1.2 08-May-1993  alm fixed HS initialization bug; swapping HS (`x') before a hold (`h')
command set the pattern space to NULL
 1.1 13-Apr-1993  alm branches: 1.1.1;
added Berkeley sed with mods to use GNU regex
 1.1.1.2 06-Jun-2014  christos import today's FreeBSD sed.
 1.1.1.1 29-Apr-1995  mrg 4.4BSD-Lite2
 1.20.2.1 22-Oct-1997  thorpej Pull up from trunk:

Remove an extra semicolon that broke processing of the "r" directive.
 1.24.2.1 25-Jun-1999  perry pullup 1.24->1.25 (Kimmo Suominen)
 1.25.4.1 27-Dec-1999  wrstuden Pull up to last week's -current.
 1.26.4.2 07-Apr-2004  jmc Pullup rev 1.34 (requested by itojun in ticket #108)

Prevent integer underflow.
 1.26.4.1 27-Oct-2001  he Pull up revisions 1.27-1.30 (requested by atatat):
Don't attempt memmove() if pattern space length is zero.
Fixes PR#14074.
 1.30.2.1 12-Mar-2004  jmc Pullup rev 1.34 (requested by itojun in ticket #1558)

Prevent integer underflow.
 1.36.2.1 19-Jun-2006  chap Sync with head.
 1.37.28.1 13-May-2009  jym Sync with HEAD.

Third (and last) commit. See http://mail-index.netbsd.org/source-changes/2009/05/13/msg221222.html
 1.38.12.2 20-Aug-2014  tls Rebase to HEAD as of a few days ago.
 1.38.12.1 23-Jun-2013  tls resync from head
 1.38.8.1 11-May-2013  riz Pull up following revision(s) (requested by uwe in ticket #888):
usr.bin/sed/process.c: revision 1.39
usr.bin/sed/sed.1: revision 1.30
usr.bin/sed/sed.1: revision 1.31
The change ("c") command should start a new cycle.
Apply one line patch I posted in PR #45981 and document this in the
manual page.
Bump date for previous (PR #45981): the change ("c") command starts a
new cycle.
 1.38.6.1 22-May-2014  yamt sync with head.

for a reference, the tree before this commit was tagged
as yamt-pagecache-tag8.

this commit was splitted into small chunks to avoid
a limitation of cvs. ("Protocol error: too many arguments")
 1.39.6.1 10-Aug-2014  tls Rebase.
 1.45.2.1 18-Aug-2014  martin Pull up following revision(s) (requested by christos in ticket #34):
usr.bin/sed/process.c: revision 1.46
PR/49109: Jeremie Le Hen: fix sed relative addressin (1,+N)
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=192108
http://svnweb.freebsd.org/base?view=revision&revision=269302
XXX: pullup 7.
 1.52.18.1 15-Oct-2024  martin Pull up following revision(s) (requested by kre in ticket #1914):

bin/date/date.c (apply patch)
usr.bin/sed/process.c: revision 1.54
sys/sys/signal.h: revision 1.77
sys/sys/signal.h: revision 1.78
external/gpl2/gmake/dist/main.c: revision 1.2

PR lib/58674

When building the tools version of sed, treat all wide characters
as if they occupy just one column for the purposes of sed's 'l'
command (which it is very unlikely to be used from the tools sed).
wdwidth() is another XSI function, not necessarily available everywhere.

PR lib/58674
bsd_signal should only be visible with _NETBSD_SOURCE - it isn't any kind of
standard function (despite also existing in other systems).

This change inspired by the PR, but doesn't fix it in any way, the tools
config script for gmake doesn't care if the function is visible in any
header, merely if present in libc.

PR lib/58674 (not really so much any more)
Correct previous.
bsd_signal should only be visible with _NETBSD_SOURCE - it isn't any kind of
standard function (despite also existing in other systems).

Turns out that it used to be an XSI function, back in the dark ages
('twas removed in POSIX issue 7, back in 2008, after being marked
obsolete in issue 6 (2001)).

So, make it visible to any applications that request a suitable
X/Open version (and of course, for _NETBSD_SOURCE).
Still no effect on the issue for the PR.

PR lib/58674
Hopefully allow the tools gmake to build (everywhere).

Don't use the system bsd_signal() function, even if one is
defined, use a locally defined one instead. Note that it
cannot be declared static (which the code would do) as it
is possible that system header files might define the function,
if it exists on the host system, and that prototype would not
(cannot) be static.

This is a horrible hack, feel free to do something better.

Note: this version of gmake is (currently anyway) used only
as part of the tools used for building NetBSD - apart from that
it is used for nothing.
 1.53.8.1 02-Aug-2025  perseant Sync with HEAD
 1.53.6.1 14-Oct-2024  martin Pull up following revision(s) (requested by kre in ticket #978):

bin/date/date.c (apply patch)
usr.bin/sed/process.c: revision 1.54
sys/sys/signal.h: revision 1.77
sys/sys/signal.h: revision 1.78
external/gpl2/gmake/dist/main.c: revision 1.2

PR lib/58674
When building the tools version of sed, treat all wide characters
as if they occupy just one column for the purposes of sed's 'l'
command (which it is very unlikely to be used from the tools sed).
wdwidth() is another XSI function, not necessarily available everywhere.

PR lib/58674
bsd_signal should only be visible with _NETBSD_SOURCE - it isn't any kind =
of
standard function (despite also existing in other systems).
This change inspired by the PR, but doesn't fix it in any way, the tools
config script for gmake doesn't care if the function is visible in any
header, merely if present in libc.

PR lib/58674 (not really so much any more)
Correct previous.
bsd_signal should only be visible with _NETBSD_SOURCE - it isn't any kind =
of
standard function (despite also existing in other systems).

Turns out that it used to be an XSI function, back in the dark ages
('twas removed in POSIX issue 7, back in 2008, after being marked
obsolete in issue 6 (2001)).
So, make it visible to any applications that request a suitable
X/Open version (and of course, for _NETBSD_SOURCE).
Still no effect on the issue for the PR.

PR lib/58674
Hopefully allow the tools gmake to build (everywhere).
Don't use the system bsd_signal() function, even if one is
defined, use a locally defined one instead. Note that it
cannot be declared static (which the code would do) as it
is possible that system header files might define the function,
if it exists on the host system, and that prototype would not
(cannot) be static.

This is a horrible hack, feel free to do something better.

Note: this version of gmake is (currently anyway) used only
as part of the tools used for building NetBSD - apart from that
it is used for nothing.
 1.1 21-Mar-1993  cgd branches: 1.1.1;
Initial revision
 1.1.1.2 01-Mar-1995  mycroft Clean up deleted files.
 1.1.1.1 21-Mar-1993  cgd initial import of 386bsd-0.1 sources
 1.1 21-Mar-1993  cgd branches: 1.1.1;
Initial revision
 1.1.1.2 01-Mar-1995  mycroft Clean up deleted files.
 1.1.1.1 21-Mar-1993  cgd initial import of 386bsd-0.1 sources
 1.2 20-May-1993  mycroft Clean up deleted files.
 1.1 13-Apr-1993  alm added Berkeley sed with mods to use GNU regex
 1.45 19-Jun-2025  bad sed.1: must use capital 'I' to make address RE ignore case

While here, remove a doubled space added in the previous commit.
Ride the date bump of the previous commit.
 1.44 19-Jun-2025  bad document the escape sequences in REs and the substitute command

NB: gsed's "\cx" is not supported and hence not documented.

PR bin/59453
 1.43 11-Mar-2021  wiz branches: 1.43.8;
Remove trailing whitespace.
 1.42 11-Mar-2021  christos Use the same options like m4 (-g turns on GNU, -G turns off GNU) Suggested
by uwe@
 1.41 11-Mar-2021  christos Add -G to support GNU extensions
 1.40 25-Jun-2014  uwe Command file argument to -f is not optional.
 1.39 18-Jun-2014  uwe Suppress space after -I and -i options in description too.
XXX: This should be documented explicitly.
 1.38 18-Jun-2014  uwe Suppress space after -I and -i options.
 1.37 18-Jun-2014  christos fix second line of synopsis.
 1.36 18-Jun-2014  wiz Sort options. Use Ss for non-standard headers. New sentence, new line.
Add missing Op.
 1.35 17-Jun-2014  christos add -u (unbuffered output) after GNU sed.
 1.34 06-Jun-2014  christos After 2 comes...
 1.33 06-Jun-2014  christos Merge our changes.
 1.32 29-May-2013  wiz branches: 1.32.4;
- Reference tr(1) in `SEE ALSO' section;
- bump date.

From Bug Hunting.
 1.31 17-Mar-2013  uwe Bump date for previous (PR #45981): the change ("c") command starts a
new cycle.
 1.30 17-Mar-2013  uwe The change ("c") command should start a new cycle.

Apply one line patch I posted in PR #45981 and document this in the
manual page.
 1.29 04-Oct-2012  dholland Improve previous change with better wording.
 1.28 02-Oct-2012  abs "i.e." -> "i.e.," - from Snader_LB on IRC
 1.27 21-Sep-2008  wiz branches: 1.27.2; 1.27.20; 1.27.24;
Sort options. Uppercase GNU.
 1.26 16-Sep-2008  perry Add a -r flag that is an alias for -E, for compatibility with gnu sed.
 1.25 14-May-2006  wiz branches: 1.25.22;
Clarify location of `}'. Requested by joerg. Bump date.
 1.24 13-Jul-2004  wiz Sort options. From Kouichirou Hiratsuka in PR 26255 (slightly changed).
 1.23 04-Jan-2004  wiz Bump Dd for previous.
 1.22 04-Jan-2004  wiz Point people to re_format(7) instead of regex(3) for
RE description; from Greg A. Woods.
 1.21 07-Aug-2003  agc Move UCB-licensed code from 4-clause to 3-clause licence.

Patches provided by Joel Baker in PR 22365, verified by myself.
 1.20 27-Jun-2003  wiz Quote bang.
 1.19 25-Feb-2003  wiz .Nm does not need a dummy argument ("") before punctuation or
for correct formatting of the SYNOPSIS any longer.
 1.18 08-Feb-2002  ross Generate <>& symbolically. I'm avoiding .../dist/... directories for now.
 1.17 08-Feb-2002  ross tweak the description of the n function
 1.16 07-Feb-2002  ross Note that the `n' function does not restart the script.
 1.15 23-Jan-2002  atatat Add a -E flag to ed(1) and sed(1) so that they can use extended
regular expressions instead of just basic regular expressions.
 1.14 08-Dec-2001  wiz Uppercase and unquote section headers, punctuation nit.
 1.13 24-Dec-1998  ross Punctuation character are magic to -mdoc and can't be used directly
as macro arguments unless combined with \&.
 1.12 10-Jan-1998  enami .Nm in SYNOPSIS except first one should be followed by "".
 1.11 19-Oct-1997  lukem WARNSify, fix .Nm usage, deprecate register, getopt returns -1 not EOF
 1.10 09-Sep-1997  jtc Changed order of STANDARDS and HISTORY subheads to conform with
specification in mdoc(7).
 1.9 29-May-1997  cgd Fix broken uses of Dd. Both the mdoc and mdoc.samples pages agree:
.Dd is supposed to be invoked like:
.Dd month day, year
e.g. ".Dd January 25, 1989", rather than:
.Dd "month day, year"
which is what these pages did.
 1.8 13-Mar-1997  mikel add missing backslash; from David Brownlee in PR bin/3321.
also cleanup RCSids a bit.
 1.7 09-Jan-1997  tls RCS ID police
 1.6 15-Dec-1996  cjs Make it clearer how to use alternate delimiters in context patterns.
 1.5 04-Dec-1994  mycroft Fix typo.
 1.4 03-Feb-1994  cgd RCS id's
 1.3 03-Feb-1994  cgd update from Diomidis Spinellis <dspin@leon.nrcps.ariadne-t.gr>
 1.2 01-Aug-1993  mycroft Add RCS indentifiers.
 1.1 13-Apr-1993  alm branches: 1.1.1;
added Berkeley sed with mods to use GNU regex
 1.1.1.2 06-Jun-2014  christos import today's FreeBSD sed.
 1.1.1.1 30-Dec-1993  mrg 4.4BSD-Lite2
 1.25.22.1 24-Sep-2008  wrstuden Merge in changes between wrstuden-revivesa-base-2 and
wrstuden-revivesa-base-3.
 1.27.24.3 20-Aug-2014  tls Rebase to HEAD as of a few days ago.
 1.27.24.2 23-Jun-2013  tls resync from head
 1.27.24.1 20-Nov-2012  tls Resync to 2012-11-19 00:00:00 UTC
 1.27.20.1 11-May-2013  riz Pull up following revision(s) (requested by uwe in ticket #888):
usr.bin/sed/process.c: revision 1.39
usr.bin/sed/sed.1: revision 1.30
usr.bin/sed/sed.1: revision 1.31
The change ("c") command should start a new cycle.
Apply one line patch I posted in PR #45981 and document this in the
manual page.
Bump date for previous (PR #45981): the change ("c") command starts a
new cycle.
 1.27.2.2 22-May-2014  yamt sync with head.

for a reference, the tree before this commit was tagged
as yamt-pagecache-tag8.

this commit was splitted into small chunks to avoid
a limitation of cvs. ("Protocol error: too many arguments")
 1.27.2.1 30-Oct-2012  yamt sync with head
 1.32.4.1 10-Aug-2014  tls Rebase.
 1.43.8.1 02-Aug-2025  perseant Sync with HEAD
 1.1 21-Mar-1993  cgd branches: 1.1.1;
Initial revision
 1.1.1.2 01-Mar-1995  mycroft Clean up deleted files.
 1.1.1.1 21-Mar-1993  cgd initial import of 386bsd-0.1 sources
 1.2 03-Feb-1994  mycroft Clean up deleted files.
 1.1 13-Apr-1993  alm added Berkeley sed with mods to use GNU regex
 1.1 21-Mar-1993  cgd branches: 1.1.1;
Initial revision
 1.1.1.2 01-Mar-1995  mycroft Clean up deleted files.
 1.1.1.1 21-Mar-1993  cgd initial import of 386bsd-0.1 sources
 1.3 09-Jan-1997  tls RCS ID police
 1.2 03-Feb-1994  cgd RCS id's
 1.1 03-Feb-1994  cgd branches: 1.1.1;
update from Diomidis Spinellis <dspin@leon.nrcps.ariadne-t.gr>
 1.1.1.1 19-Oct-1997  mrg 4.4BSD-Lite2
 1.3 09-Jan-1997  tls RCS ID police
 1.2 03-Feb-1994  cgd RCS id's
 1.1 03-Feb-1994  cgd branches: 1.1.1;
update from Diomidis Spinellis <dspin@leon.nrcps.ariadne-t.gr>
 1.1.1.1 19-Oct-1997  mrg 4.4BSD-Lite2
 1.5 12-Nov-2011  christos compare the sed we just build with the installed one instead of bogus
paths.
 1.4 27-Oct-2003  uwe branches: 1.4.56;
In test_error() use <& to duplicate input descriptors,
correct the order of descriptors in redirection that saves stdin.
 1.3 09-Jan-1997  tls RCS ID police
 1.2 03-Feb-1994  cgd RCS id's
 1.1 03-Feb-1994  cgd branches: 1.1.1;
update from Diomidis Spinellis <dspin@leon.nrcps.ariadne-t.gr>
 1.1.1.1 19-Oct-1997  mrg 4.4BSD-Lite2
 1.4.56.1 17-Apr-2012  yamt sync with head

RSS XML Feed