From 1dff385e021020889b71bf93f5b59329e5770dbd Mon Sep 17 00:00:00 2001 From: Paul Eggert Date: Tue, 21 Nov 2006 17:29:01 +0000 Subject: [PATCH] * doc/autoconf.texi (Limitations of Usual Tools): Don't claim that traditional Awk lacks 3-arg "split". It has it. Mention that FS must be a single character, and a few other 99-byte limits of traditional Awk. --- ChangeLog | 7 +++++++ doc/autoconf.texi | 12 +++++++++++- 2 files changed, 18 insertions(+), 1 deletion(-) diff --git a/ChangeLog b/ChangeLog index a8a084e3..737d523f 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,10 @@ +2006-11-21 Paul Eggert + + * doc/autoconf.texi (Limitations of Usual Tools): Don't claim + that traditional Awk lacks 3-arg "split". It has it. + Mention that FS must be a single character, and a few other + 99-byte limits of traditional Awk. + 2006-11-18 Paul Eggert * tests/autotest.at (BSx641-newline in command): diff --git a/doc/autoconf.texi b/doc/autoconf.texi index adecc7a6..06651d30 100644 --- a/doc/autoconf.texi +++ b/doc/autoconf.texi @@ -13046,12 +13046,22 @@ Traditional Awk supports only the predefined functions @code{exp}, Traditional Awk @code{getline} is not at all compatible with Posix; avoid it. -Traditional Awk @code{split} supports only two arguments. +In traditional Awk, @code{FS} must be a string containing just one +ordinary character, and similarly for the field-separator argument to +@code{split}. Traditional Awk has a limit of 99 fields in a record. You may be able to circumvent this problem by using @code{split}. +The original version of Awk had a limit of at most 99 bytes per +@code{split} field, 99 bytes per @code{substr} substring, and 99 bytes +per run of non-special characters in a @code{printf} format, but these +bugs have been fixed on all practical hosts that we know of. + +Traditional Awk has a limit of at most 99 bytes in a number formatted by +@code{OFMT}; for example, @code{OFMT="%.300e"; print 0.1;} will dump +core. @item @command{basename} @c --------------------- -- 2.11.4.GIT