Subject: Re: bin/29659: awk handling of END non-portable
To: None <gnats-bugs@netbsd.org, gnats-admin@netbsd.org,>
From: Christos Zoulas <christos@zoulas.com>
List: netbsd-bugs
Date: 03/13/2005 11:55:33
On Mar 13, 12:23pm, he@netbsd.org (Havard Eidnes) wrote:
-- Subject: Re: bin/29659: awk handling of END non-portable
Why don't you commit the proposed patch? It looks fine to me.
christos
| The following reply was made to PR bin/29659; it has been noted by GNATS.
|
| From: Havard Eidnes <he@netbsd.org>
| To: gnats-bugs@netbsd.org
| Cc: netbsd-bugs@netbsd.org
| Subject: Re: bin/29659: awk handling of END non-portable
| Date: Sun, 13 Mar 2005 13:22:48 +0100 (CET)
|
| Hi,
|
| here follows two new regression tests for this particular
| problem, verifying that NF and $0 is retained from the last
| record seen in the input in the END block.
|
| Regards,
|
| - Havard
|
| ------------------------------
|
| # This is a shell archive. Save it in a file, remove anything before
| # this line, and then unpack it by entering "sh file". Note, it may
| # create directories; files and directories will be owned by you and
| # have default permissions.
| #
| # This archive contains:
| #
| # end1/Makefile
| # end1/expected
| # end1/input
| # end1/test.awk
| # end2/Makefile
| # end2/expected
| # end2/input
| # end2/test.awk
| #
| echo x - end1/Makefile
| sed 's/^X//' >end1/Makefile << 'END-of-end1/Makefile'
| X# $NetBSD$
| X
| XNOMAN= # defined
| X
| X.include <bsd.own.mk>
| X
| XCLEANFILES= result
| X
| Xregress:
| X ${AWK} -f ${.CURDIR}/test.awk ${.CURDIR}/input > result
| X @cmp ${.CURDIR}/expected result
| X
| X.include <bsd.prog.mk>
| END-of-end1/Makefile
| echo x - end1/expected
| sed 's/^X//' >end1/expected << 'END-of-end1/expected'
| X4
| END-of-end1/expected
| echo x - end1/input
| sed 's/^X//' >end1/input << 'END-of-end1/input'
| Xa b c d
| END-of-end1/input
| echo x - end1/test.awk
| sed 's/^X//' >end1/test.awk << 'END-of-end1/test.awk'
| X# $Id$
| X
| XEND {
| X print NF;
| X}
| END-of-end1/test.awk
| echo x - end2/Makefile
| sed 's/^X//' >end2/Makefile << 'END-of-end2/Makefile'
| X# $NetBSD$
| X
| XNOMAN= # defined
| X
| X.include <bsd.own.mk>
| X
| XCLEANFILES= result
| X
| Xregress:
| X ${AWK} -f ${.CURDIR}/test.awk ${.CURDIR}/input > result
| X @cmp ${.CURDIR}/expected result
| X
| X.include <bsd.prog.mk>
| END-of-end2/Makefile
| echo x - end2/expected
| sed 's/^X//' >end2/expected << 'END-of-end2/expected'
| Xa b c d
| END-of-end2/expected
| echo x - end2/input
| sed 's/^X//' >end2/input << 'END-of-end2/input'
| Xa b c d
| END-of-end2/input
| echo x - end2/test.awk
| sed 's/^X//' >end2/test.awk << 'END-of-end2/test.awk'
| X# $Id$
| X
| XEND {
| X print $0;
| X}
| END-of-end2/test.awk
| exit
|
-- End of excerpt from Havard Eidnes