[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[SCM] gawk branch, master, updated. gawk-4.1.0-4746-g03f79dcb
From: |
Arnold Robbins |
Subject: |
[SCM] gawk branch, master, updated. gawk-4.1.0-4746-g03f79dcb |
Date: |
Mon, 20 Jun 2022 01:38:40 -0400 (EDT) |
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "gawk".
The branch, master has been updated
via 03f79dcb6aff98574c32609c80ecdd6e52730244 (commit)
from f2e718519ec9759fa0f2f5cc329fb4d5102d37c6 (commit)
Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.
- Log -----------------------------------------------------------------
http://git.sv.gnu.org/cgit/gawk.git/commit/?id=03f79dcb6aff98574c32609c80ecdd6e52730244
commit 03f79dcb6aff98574c32609c80ecdd6e52730244
Author: Arnold D. Robbins <arnold@skeeve.com>
Date: Mon Jun 20 08:38:06 2022 +0300
MPFR now "on parole" instead of deprecated.
diff --git a/ChangeLog b/ChangeLog
index c279ad25..85101e98 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,9 @@
+2022-06-20 Arnold D. Robbins <arnold@skeeve.com>
+
+ * NEWS: MPFR is now "on parole" instead of deprecated.
+ * main.c (deprecate_mpfr): ifdef'ed out.
+ (parse_args): Comment out call to deprecate_mpfr().
+
2022-06-15 Andrew J. Schorr <aschorr@telemetry-investments.com>
* main.c (load_environ): Init ENVIRON_node before filling
diff --git a/NEWS b/NEWS
index 89807bd4..abd396e7 100644
--- a/NEWS
+++ b/NEWS
@@ -7,12 +7,12 @@
Changes from 5.1.x to 5.2.0
---------------------------
-***********************************************************************
-* MPFR mode (the -M option) is now DEPRECATED. This feature will be *
-* removed in 2024. Using -M produces a warning message unless you *
-* set GAWK_NO_MPFR_WARN in the environment. For more information see *
-* https://...... *
-***********************************************************************
+*****************************************************************************
+* MPFR mode (the -M option) is now ON PAROLE. This feature is now being *
+* supported by a volunteer in the development team and not by the primary *
+* maintainer. If this situation changes, then the feature will be removed. *
+* For more information see https://...... *
+*****************************************************************************
1. Numeric scalars now compare in the same way as C for the relational
operators. Comparison order for sorting has not changed. This only
diff --git a/doc/ChangeLog b/doc/ChangeLog
index eee7808f..eea6a919 100644
--- a/doc/ChangeLog
+++ b/doc/ChangeLog
@@ -1,3 +1,8 @@
+2022-06-20 Arnold D. Robbins <arnold@skeeve.com>
+
+ * gawk.1: MPFR is now "on parole" instead of deprecated.
+ * gawktexi.in: Ditto. Update copyright year.
+
2022-06-06 Andrew J. Schorr <aschorr@telemetry-investments.com>
* gawktexi.in (Array Functions): Add new function destroy_array.
diff --git a/doc/gawk.1 b/doc/gawk.1
index 98bdff8a..8e7b8794 100644
--- a/doc/gawk.1
+++ b/doc/gawk.1
@@ -13,7 +13,7 @@
. if \w'\(rq' .ds rq "\(rq
. \}
.\}
-.TH GAWK 1 "May 03 2022" "Free Software Foundation" "Utility Commands"
+.TH GAWK 1 "Jun 08 2022" "Free Software Foundation" "Utility Commands"
.SH NAME
gawk \- pattern scanning and processing language
.SH SYNOPSIS
@@ -267,12 +267,19 @@ issues a warning.)
.sp
.B NOTE:
This feature is
-.IR deprecated .
-It will be removed from
+.IR "on parole" .
+The primary
.I gawk
-in 2024 and its use produces a warning messge. Set
+maintainer is no longer supporting it, although there is
+a member of the development team who is. If this situation
+changes, the feature
+will be removed from
+.IR gawk .
+.ig
+Set
.B GAWK_NO_MPFR_WARN
in the environment to silence the warning.
+..
.TP
.BR \-n ", "\c
.B \-\^\-non\-decimal\-data
@@ -2315,11 +2322,13 @@ If
has been specified,
.I gawk
issues a warning message to this effect.
+.ig
.PP
Set
.B GAWK_NO_MPFR_WARN
in the environment to silence the warning about MPFR mode
being deprecated.
+..
.SH EXIT STATUS
If the
.B exit
diff --git a/doc/gawk.info b/doc/gawk.info
index 804caf15..4d87e3e1 100644
--- a/doc/gawk.info
+++ b/doc/gawk.info
@@ -1,6 +1,6 @@
This is gawk.info, produced by makeinfo version 6.8 from gawk.texi.
-Copyright (C) 1989, 1991, 1992, 1993, 1996-2005, 2007, 2009-2021
+Copyright (C) 1989, 1991, 1992, 1993, 1996-2005, 2007, 2009-2022
Free Software Foundation, Inc.
@@ -37,7 +37,7 @@ General Introduction
This file documents 'awk', a program that you can use to select
particular records in a file and perform operations upon them.
- Copyright (C) 1989, 1991, 1992, 1993, 1996-2005, 2007, 2009-2021
+ Copyright (C) 1989, 1991, 1992, 1993, 1996-2005, 2007, 2009-2022
Free Software Foundation, Inc.
@@ -552,7 +552,7 @@ in (a) below. A copy of the license is included in the
section entitled
* Computer Arithmetic:: A quick intro to computer math.
* Math Definitions:: Defining terms used.
* MPFR features:: The MPFR features in 'gawk'.
-* MPFR Deprecated:: MPFR features are deprecated!
+* MPFR On Parole:: MPFR features are on parole!
* MPFR Intro:: MPFR General introduction.
* FP Math Caution:: Things to know.
* Inexactness of computations:: Floating point math is not exact.
@@ -2751,10 +2751,11 @@ The following list describes options mandated by the
POSIX standard:
libraries (*note Arbitrary Precision Arithmetic::).
As of version 5.2, the arbitrary precision arithmetic features in
- 'gawk' are _deprecated_. They will be removed from 'gawk' in 2024.
- If you use this option, 'gawk' generates a warning message. Create
- the environment variable 'GAWK_NO_MPFR_WARN' with an arbitrary
- value in order to silence the warning.
+ 'gawk' are "on parole." The primary maintainer is no longer
+ willing to support this feature, but another member of the
+ development team has stepped up to take it over. As long as this
+ situation reamins stable, MPFR will be supported. If it changes,
+ the MPFR support will be removed from 'gawk'.
'-n'
'--non-decimal-data'
@@ -3207,10 +3208,6 @@ used by regular users:
On systems that do not support the 'usleep()' system call, the
value is rounded up to an integral number of seconds.
-'GAWK_NO_MPFR_WARN'
- Specifies that 'gawk' should not print a deprecation warning when
- used with the '-M'/'--bignum' options.
-
'GAWK_READ_TIMEOUT'
Specifies the time, in milliseconds, for 'gawk' to wait for input
before returning with an error. *Note Read Timeout::.
@@ -24590,29 +24587,29 @@ This minor node briefly describes arbitrary-precision
arithmetic in
* Menu:
-* MPFR Deprecated:: MPFR features are deprecated!
+* MPFR On Parole:: MPFR features are on parole!
* MPFR Intro:: MPFR General introduction.
-File: gawk.info, Node: MPFR Deprecated, Next: MPFR Intro, Up: MPFR features
+File: gawk.info, Node: MPFR On Parole, Next: MPFR Intro, Up: MPFR features
-16.3.1 Arbitrary Precision Arithmetic is Deprecated!
-----------------------------------------------------
+16.3.1 Arbitrary Precision Arithmetic is On Parole!
+---------------------------------------------------
-As of version 5.2, arbitrary precision arithmetic in 'gawk' is
-_deprecated_. It will be removed from 'gawk' in 2024.
+As of version 5.2, arbitrary precision arithmetic in 'gawk' is "on
+parole." The primary 'gawk' maintainer is no longer maintaining it.
+Fortunately, a volunteer from the development team has agreed to take it
+over.
- This feature is deprecated because its inclusion was a mistake. It
+ This feature is on parole because its inclusion was a mistake. It
has led to endless bug reports, misuse of the feature and public abuse
of the maintainer, for no real increased value.
- If you use this feature, you should start working now to find a
-different toolset with which to accomplish your goals.(1)
+ If the situation with support changes, the feature will be removed
+from 'gawk'.
- If the feature is very important to you, then consider if you are
-willing to volunteer to maintain it, so that it can continue to be
-included in 'gawk'. If that is the case, contact the maintainer to
-discuss it with him. You may do so by submitting a bug report.
+ If you use this feature, you should consider finding a different
+toolset with which to accomplish your goals.(1)
---------- Footnotes ----------
@@ -24621,7 +24618,7 @@ that still supports arbitrary precision arithmetic. It
simply will be
unmaintained.
-File: gawk.info, Node: MPFR Intro, Prev: MPFR Deprecated, Up: MPFR features
+File: gawk.info, Node: MPFR Intro, Prev: MPFR On Parole, Up: MPFR features
16.3.2 Arbitrary Precision Introduction
---------------------------------------
@@ -35402,7 +35399,7 @@ Index
* + (plus sign), += operator <1>: Precedence. (line 94)
* , (comma), in range patterns: Ranges. (line 6)
* - (hyphen), file names beginning with: Options. (line 63)
-* - (hyphen), -- end of options marker: Options. (line 353)
+* - (hyphen), -- end of options marker: Options. (line 354)
* - (hyphen), in bracket expressions: Bracket Expressions. (line 25)
* - (hyphen), -= operator: Assignment Ops. (line 129)
* - (hyphen), -- operator: Increment Ops. (line 48)
@@ -35438,21 +35435,21 @@ Index
* --include option: Options. (line 180)
* --lint option: Command Line. (line 20)
* --lint option <1>: Options. (line 215)
-* --lint-old option: Options. (line 343)
+* --lint-old option: Options. (line 344)
* --load option: Options. (line 203)
-* --no-optimize option: Options. (line 328)
-* --non-decimal-data option: Options. (line 254)
+* --no-optimize option: Options. (line 329)
+* --non-decimal-data option: Options. (line 255)
* --non-decimal-data option <1>: Nondecimal Data. (line 6)
* --non-decimal-data option, strtonum() function and: Nondecimal Data.
(line 35)
-* --optimize option: Options. (line 279)
-* --posix option: Options. (line 301)
-* --posix option, --traditional option and: Options. (line 316)
-* --pretty-print option: Options. (line 268)
-* --profile option: Options. (line 289)
+* --optimize option: Options. (line 280)
+* --posix option: Options. (line 302)
+* --posix option, --traditional option and: Options. (line 317)
+* --pretty-print option: Options. (line 269)
+* --profile option: Options. (line 290)
* --profile option <1>: Profiling. (line 12)
-* --re-interval option: Options. (line 322)
-* --sandbox option: Options. (line 333)
+* --re-interval option: Options. (line 323)
+* --sandbox option: Options. (line 334)
* --sandbox option, input redirection with getline: Getline. (line 19)
* --sandbox option, output redirection with print, printf: Redirection.
(line 6)
@@ -35461,9 +35458,9 @@ Index
* --source option: Options. (line 120)
* --trace option: Options. (line 197)
* --traditional option: Options. (line 85)
-* --traditional option, --posix option and: Options. (line 316)
-* --use-lc-numeric option: Options. (line 263)
-* --version option: Options. (line 348)
+* --traditional option, --posix option and: Options. (line 317)
+* --use-lc-numeric option: Options. (line 264)
+* --version option: Options. (line 349)
* -b option: Options. (line 72)
* -c option: Options. (line 85)
* -C option: Options. (line 92)
@@ -35471,12 +35468,12 @@ Index
* -D option: Options. (line 111)
* -e option: Options. (line 120)
* -E option: Options. (line 146)
-* -e option <1>: Options. (line 389)
+* -e option <1>: Options. (line 390)
* -f option: Long. (line 12)
* -F option: Options. (line 21)
* -f option <1>: Options. (line 25)
-* -F option, -Ft sets FS to TAB: Options. (line 361)
-* -f option, multiple uses: Options. (line 366)
+* -F option, -Ft sets FS to TAB: Options. (line 362)
+* -f option, multiple uses: Options. (line 367)
* -F option, command-line: Command Line Field Separator.
(line 6)
* -g option: Options. (line 168)
@@ -35485,19 +35482,19 @@ Index
* -I option: Options. (line 197)
* -l option: Options. (line 203)
* -l option <1>: Options. (line 215)
-* -L option: Options. (line 343)
+* -L option: Options. (line 344)
* -M option: Options. (line 242)
-* -n option: Options. (line 254)
-* -N option: Options. (line 263)
-* -o option: Options. (line 268)
-* -O option: Options. (line 279)
-* -p option: Options. (line 289)
-* -P option: Options. (line 301)
-* -r option: Options. (line 322)
-* -s option: Options. (line 328)
-* -S option: Options. (line 333)
+* -n option: Options. (line 255)
+* -N option: Options. (line 264)
+* -o option: Options. (line 269)
+* -O option: Options. (line 280)
+* -p option: Options. (line 290)
+* -P option: Options. (line 302)
+* -r option: Options. (line 323)
+* -s option: Options. (line 329)
+* -S option: Options. (line 334)
* -v option: Options. (line 36)
-* -V option: Options. (line 348)
+* -V option: Options. (line 349)
* -v option <1>: Assignment Options. (line 12)
* -W option: Options. (line 50)
* . (period), regexp operator: Regexp Operator Details.
@@ -35733,7 +35730,7 @@ Index
* arguments, command-line <1>: Auto-set. (line 15)
* arguments, command-line <2>: ARGC and ARGV. (line 6)
* arguments, processing: Getopt Function. (line 6)
-* ARGV array: Options. (line 333)
+* ARGV array: Options. (line 334)
* ARGV array, indexing into: Other Arguments. (line 21)
* arithmetic operators: Arithmetic Ops. (line 6)
* array manipulation in extensions: Array Manipulation. (line 6)
@@ -35857,7 +35854,7 @@ Index
* awk, uses for <1>: Getting Started. (line 12)
* awk, uses for <2>: When. (line 6)
* awk, invoking: Command Line. (line 6)
-* awk, profiling, enabling: Options. (line 289)
+* awk, profiling, enabling: Options. (line 290)
* awk, implementations, limits: Getline Notes. (line 14)
* awk, implementation issues, pipes: Redirection. (line 129)
* awk, new vs. old, OFMT variable: Strings And Numbers. (line 56)
@@ -36307,7 +36304,7 @@ Index
* cosine: Numeric Functions. (line 15)
* counting words, lines, characters, and bytes: Wc Program. (line 6)
* csh utility: Statements/Lines. (line 45)
-* csh utility, POSIXLY_CORRECT environment variable: Options. (line 410)
+* csh utility, POSIXLY_CORRECT environment variable: Options. (line 411)
* csh utility, |& operator, comparison with: Two-way I/O. (line 27)
* CSV (comma separated values) data, parsing with FPAT: Splitting By Content.
(line 20)
@@ -36541,7 +36538,7 @@ Index
* debugging, example session: Sample Debugging Session.
(line 6)
* debugging gawk, bug reports: Bugs. (line 9)
-* decimal point character, locale specific: Options. (line 313)
+* decimal point character, locale specific: Options. (line 314)
* decrement operators: Increment Ops. (line 35)
* default keyword: Switch Statement. (line 6)
* Deifik, Scott: Acknowledgments. (line 60)
@@ -36738,7 +36735,7 @@ Index
* endpwent() user-defined function: Passwd Functions. (line 210)
* English, Steve: Advanced Features. (line 6)
* ENVIRON array: Auto-set. (line 59)
-* environment variables, POSIXLY_CORRECT: Options. (line 395)
+* environment variables, POSIXLY_CORRECT: Options. (line 396)
* environment variables, used by gawk: Environment Variables.
(line 6)
* environment variables, AWKPATH: AWKPATH Variable. (line 6)
@@ -37031,7 +37028,7 @@ Index
* Free Software Foundation (FSF) <3>: Glossary. (line 403)
* FreeBSD: Glossary. (line 747)
* FS variable, --field-separator option and: Options. (line 21)
-* FS variable, TAB character as: Options. (line 310)
+* FS variable, TAB character as: Options. (line 311)
* FS variable: Field Separators. (line 15)
* FS variable, changing value of: Field Separators. (line 34)
* FS variable, containing ^: Regexp Field Splitting.
@@ -37106,8 +37103,8 @@ Index
* gawk, uses for: Preface. (line 34)
* gawk, awk and <1>: This Manual. (line 14)
* gawk, newlines in: Statements/Lines. (line 12)
-* gawk, extensions, disabling: Options. (line 301)
-* gawk, version of, printing information about: Options. (line 348)
+* gawk, extensions, disabling: Options. (line 302)
+* gawk, version of, printing information about: Options. (line 349)
* gawk, ARGIND variable in: Other Arguments. (line 21)
* gawk, PROCINFO array in: Other Arguments. (line 21)
* gawk, escape sequences: Escape Sequences. (line 120)
@@ -37312,13 +37309,13 @@ Index
* help debugger command: Miscellaneous Debugger Commands.
(line 67)
* hexadecimal numbers: Nondecimal-numbers. (line 6)
-* hexadecimal values, enabling interpretation of: Options. (line 254)
+* hexadecimal values, enabling interpretation of: Options. (line 255)
* history expansion, in debugger: Readline Support. (line 6)
* histsort.awk program: History Sorting. (line 25)
* Hughes, Phil: Acknowledgments. (line 43)
* HUP signal, for dynamic profiling: Profiling. (line 217)
* hyphen (-), file names beginning with: Options. (line 63)
-* hyphen (-), -- end of options marker: Options. (line 353)
+* hyphen (-), -- end of options marker: Options. (line 354)
* hyphen (-), in bracket expressions: Bracket Expressions. (line 25)
* hyphen (-), -= operator: Assignment Ops. (line 129)
* hyphen (-), -- operator: Increment Ops. (line 48)
@@ -37542,7 +37539,7 @@ Index
* lint checking, empty programs: Command Line. (line 16)
* lint checking, issuing warnings: Options. (line 215)
* lint checking, POSIXLY_CORRECT environment variable: Options.
- (line 395)
+ (line 396)
* lint checking: User-modified. (line 90)
* lint checking, array subscripts: Uninitialized Subscripts.
(line 43)
@@ -37561,7 +37558,7 @@ Index
* local variables, in a function: Variable Scope. (line 6)
* local variables, show in debugger: Debugger Info. (line 34)
* locale categories: Explaining gettext. (line 81)
-* locale decimal point character: Options. (line 313)
+* locale decimal point character: Options. (line 314)
* locale, definition of: Locales. (line 6)
* log: Numeric Functions. (line 28)
* log files, timestamps in: Time Functions. (line 6)
@@ -37680,7 +37677,7 @@ Index
* networks, support for: Special Network. (line 6)
* networks, programming: TCP/IP Networking. (line 6)
* newlines: Statements/Lines. (line 6)
-* newlines <1>: Options. (line 307)
+* newlines <1>: Options. (line 308)
* newlines, in dynamic regexps: Computed Regexps. (line 60)
* newlines, in regexp constants: Computed Regexps. (line 70)
* newlines, as record separators: awk split records. (line 12)
@@ -37757,7 +37754,7 @@ Index
* o debugger command (alias for option): Debugger Info. (line 57)
* obsolete features: Obsolete. (line 6)
* octal numbers: Nondecimal-numbers. (line 6)
-* octal values, enabling interpretation of: Options. (line 254)
+* octal values, enabling interpretation of: Options. (line 255)
* OFMT variable: OFMT. (line 15)
* OFMT variable, POSIX awk and: OFMT. (line 27)
* OFMT variable <1>: Strings And Numbers. (line 56)
@@ -37888,7 +37885,7 @@ Index
* portability, #! (executable scripts): Executable Scripts. (line 29)
* portability, ARGV variable: Executable Scripts. (line 55)
* portability, backslash continuation and: Statements/Lines. (line 30)
-* portability, POSIXLY_CORRECT environment variable: Options. (line 415)
+* portability, POSIXLY_CORRECT environment variable: Options. (line 416)
* portability: Escape Sequences. (line 103)
* portability, backslash in escape sequences: Escape Sequences.
(line 108)
@@ -37964,8 +37961,8 @@ Index
* POSIX awk, date utility and: Time Functions. (line 254)
* POSIX awk, function keyword in: Definition Syntax. (line 99)
* POSIX awk, changes in awk versions: POSIX. (line 6)
-* POSIX mode: Options. (line 301)
-* POSIX mode <1>: Options. (line 395)
+* POSIX mode: Options. (line 302)
+* POSIX mode <1>: Options. (line 396)
* POSIX mode <2>: Regexp Operator Details.
(line 47)
* POSIX mode <3>: Input Summary. (line 69)
@@ -37985,7 +37982,7 @@ Index
* POSIX mode <12>: POSIX Floating Point Problems.
(line 83)
* POSIX mode <13>: Feature History. (line 315)
-* POSIXLY_CORRECT environment variable: Options. (line 395)
+* POSIXLY_CORRECT environment variable: Options. (line 396)
* PREC variable: User-modified. (line 126)
* precedence, regexp operators: Regexp Operator Details.
(line 137)
@@ -37997,7 +37994,7 @@ Index
* predefined variables, conveying information: Auto-set. (line 6)
* pretty printer, interaction with namespaces: Namespace And Features.
(line 9)
-* pretty printing: Options. (line 266)
+* pretty printing: Options. (line 267)
* pretty printing <1>: Profiling. (line 228)
* pretty printing, profiling, difference with: Profiling. (line 235)
* print debugger command: Viewing And Changing Data.
@@ -38169,7 +38166,7 @@ Index
(line 149)
* register loadable extension: Registration Functions.
(line 6)
-* regular expressions, interval expressions and: Options. (line 322)
+* regular expressions, interval expressions and: Options. (line 323)
* regular expressions: Regexp. (line 6)
* regular expressions, as patterns: Regexp Usage. (line 6)
* regular expressions, operators: Regexp Usage. (line 19)
@@ -38271,7 +38268,7 @@ Index
(line 68)
* sample debugging session: Sample Debugging Session.
(line 6)
-* sandbox mode: Options. (line 333)
+* sandbox mode: Options. (line 334)
* save debugger options: Debugger Info. (line 85)
* scalar or array: Type Functions. (line 11)
* scalar values: Basic Data Typing. (line 13)
@@ -38631,7 +38628,7 @@ Index
* treating files, as single records: gawk split records. (line 104)
* troubleshooting, typographical errors, global variables: Options.
(line 102)
-* troubleshooting, --non-decimal-data option: Options. (line 254)
+* troubleshooting, --non-decimal-data option: Options. (line 255)
* troubleshooting, backslash before nonspecial character: Escape Sequences.
(line 108)
* troubleshooting, regexp constants vs. string constants: Computed Regexps.
@@ -38819,7 +38816,7 @@ Index
(line 13)
* while statement, use of regexps in: Regexp Usage. (line 19)
* while statement: While Statement. (line 6)
-* whitespace, newlines as: Options. (line 307)
+* whitespace, newlines as: Options. (line 308)
* whitespace, definition of: Fields. (line 6)
* whitespace, as field separators: Default Field Splitting.
(line 6)
@@ -38855,615 +38852,615 @@ Index
Tag Table:
Node: Top1200
-Node: Foreword345721
-Node: Foreword450163
-Node: Preface51695
-Ref: Preface-Footnote-154554
-Ref: Preface-Footnote-254663
-Ref: Preface-Footnote-354897
-Node: History55039
-Node: Names57391
-Ref: Names-Footnote-158495
-Node: This Manual58642
-Ref: This Manual-Footnote-165281
-Node: Conventions65381
-Node: Manual History67750
-Ref: Manual History-Footnote-170747
-Ref: Manual History-Footnote-270788
-Node: How To Contribute70862
-Node: Acknowledgments71784
-Node: Getting Started76721
-Node: Running gawk79160
-Node: One-shot80350
-Node: Read Terminal81613
-Node: Long83606
-Node: Executable Scripts85119
-Ref: Executable Scripts-Footnote-187752
-Node: Comments87855
-Node: Quoting90339
-Node: DOS Quoting95865
-Node: Sample Data Files97921
-Node: Very Simple100516
-Node: Two Rules106618
-Node: More Complex108503
-Node: Statements/Lines110835
-Ref: Statements/Lines-Footnote-1115319
-Node: Other Features115584
-Node: When116520
-Ref: When-Footnote-1118274
-Node: Intro Summary118339
-Node: Invoking Gawk119223
-Node: Command Line120737
-Node: Options121535
-Ref: Options-Footnote-1139719
-Ref: Options-Footnote-2139950
-Node: Other Arguments139975
-Node: Naming Standard Input143986
-Node: Environment Variables145196
-Node: AWKPATH Variable145754
-Ref: AWKPATH Variable-Footnote-1149166
-Ref: AWKPATH Variable-Footnote-2149200
-Node: AWKLIBPATH Variable149571
-Ref: AWKLIBPATH Variable-Footnote-1151268
-Node: Other Environment Variables151643
-Node: Exit Status155731
-Node: Include Files156408
-Node: Loading Shared Libraries160098
-Node: Obsolete161526
-Node: Undocumented162146
-Node: Invoking Summary162443
-Node: Regexp165284
-Node: Regexp Usage166738
-Node: Escape Sequences168775
-Node: Regexp Operators175017
-Node: Regexp Operator Details175502
-Ref: Regexp Operator Details-Footnote-1182866
-Node: Interval Expressions183013
-Ref: Interval Expressions-Footnote-1185188
-Node: Bracket Expressions185286
-Ref: table-char-classes187762
-Node: Leftmost Longest191089
-Node: Computed Regexps192392
-Node: GNU Regexp Operators195819
-Node: Case-sensitivity199497
-Ref: Case-sensitivity-Footnote-1202363
-Ref: Case-sensitivity-Footnote-2202598
-Node: Regexp Summary202706
-Node: Reading Files204172
-Node: Records206441
-Node: awk split records207516
-Node: gawk split records212216
-Ref: gawk split records-Footnote-1217290
-Node: Fields217327
-Node: Nonconstant Fields220068
-Ref: Nonconstant Fields-Footnote-1222304
-Node: Changing Fields222508
-Node: Field Separators228539
-Node: Default Field Splitting231237
-Node: Regexp Field Splitting232355
-Node: Single Character Fields236032
-Node: Command Line Field Separator237092
-Node: Full Line Fields240310
-Ref: Full Line Fields-Footnote-1241832
-Ref: Full Line Fields-Footnote-2241878
-Node: Field Splitting Summary241979
-Node: Constant Size244053
-Node: Fixed width data244785
-Node: Skipping intervening248252
-Node: Allowing trailing data249050
-Node: Fields with fixed data250087
-Node: Splitting By Content251605
-Ref: Splitting By Content-Footnote-1255441
-Node: More CSV255604
-Node: FS versus FPAT257219
-Node: Testing field creation258379
-Node: Multiple Line260004
-Node: Getline266281
-Node: Plain Getline268750
-Node: Getline/Variable271323
-Node: Getline/File272474
-Node: Getline/Variable/File273862
-Ref: Getline/Variable/File-Footnote-1275467
-Node: Getline/Pipe275555
-Node: Getline/Variable/Pipe278259
-Node: Getline/Coprocess279394
-Node: Getline/Variable/Coprocess280661
-Node: Getline Notes281403
-Node: Getline Summary284200
-Ref: table-getline-variants284624
-Node: Read Timeout285373
-Ref: Read Timeout-Footnote-1289289
-Node: Retrying Input289347
-Node: Command-line directories290546
-Node: Input Summary291452
-Node: Input Exercises294624
-Node: Printing295058
-Node: Print296892
-Node: Print Examples298349
-Node: Output Separators301129
-Node: OFMT303146
-Node: Printf304502
-Node: Basic Printf305287
-Node: Control Letters306861
-Node: Format Modifiers312023
-Node: Printf Examples318038
-Node: Redirection320524
-Node: Special FD327365
-Ref: Special FD-Footnote-1330533
-Node: Special Files330607
-Node: Other Inherited Files331224
-Node: Special Network332225
-Node: Special Caveats333085
-Node: Close Files And Pipes334034
-Ref: table-close-pipe-return-values340941
-Ref: Close Files And Pipes-Footnote-1341755
-Ref: Close Files And Pipes-Footnote-2341903
-Node: Nonfatal342055
-Node: Output Summary344393
-Node: Output Exercises345615
-Node: Expressions346294
-Node: Values347482
-Node: Constants348160
-Node: Scalar Constants348851
-Ref: Scalar Constants-Footnote-1351361
-Node: Nondecimal-numbers351611
-Node: Regexp Constants354612
-Node: Using Constant Regexps355138
-Node: Standard Regexp Constants355760
-Node: Strong Regexp Constants358948
-Node: Variables362663
-Node: Using Variables363320
-Node: Assignment Options365230
-Node: Conversion367701
-Node: Strings And Numbers368225
-Ref: Strings And Numbers-Footnote-1371288
-Node: Locale influences conversions371397
-Ref: table-locale-affects374155
-Node: All Operators374774
-Node: Arithmetic Ops375403
-Node: Concatenation378119
-Ref: Concatenation-Footnote-1380966
-Node: Assignment Ops381073
-Ref: table-assign-ops386064
-Node: Increment Ops387378
-Node: Truth Values and Conditions390838
-Node: Truth Values391912
-Node: Typing and Comparison392960
-Node: Variable Typing393780
-Ref: Variable Typing-Footnote-1400243
-Ref: Variable Typing-Footnote-2400315
-Node: Comparison Operators400392
-Ref: table-relational-ops400811
-Node: POSIX String Comparison404307
-Ref: POSIX String Comparison-Footnote-1406002
-Ref: POSIX String Comparison-Footnote-2406141
-Node: Boolean Ops406225
-Ref: Boolean Ops-Footnote-1410707
-Node: Conditional Exp410799
-Node: Function Calls412535
-Node: Precedence416412
-Node: Locales420071
-Node: Expressions Summary421703
-Node: Patterns and Actions424276
-Node: Pattern Overview425396
-Node: Regexp Patterns427073
-Node: Expression Patterns427615
-Node: Ranges431396
-Node: BEGIN/END434504
-Node: Using BEGIN/END435265
-Ref: Using BEGIN/END-Footnote-1438019
-Node: I/O And BEGIN/END438125
-Node: BEGINFILE/ENDFILE440438
-Node: Empty443669
-Node: Using Shell Variables443986
-Node: Action Overview446260
-Node: Statements448585
-Node: If Statement450433
-Node: While Statement451928
-Node: Do Statement453956
-Node: For Statement455104
-Node: Switch Statement458359
-Node: Break Statement460800
-Node: Continue Statement462892
-Node: Next Statement464719
-Node: Nextfile Statement467102
-Node: Exit Statement469791
-Node: Built-in Variables472194
-Node: User-modified473327
-Node: Auto-set481094
-Ref: Auto-set-Footnote-1497901
-Ref: Auto-set-Footnote-2498107
-Node: ARGC and ARGV498163
-Node: Pattern Action Summary502376
-Node: Arrays504806
-Node: Array Basics506135
-Node: Array Intro506979
-Ref: figure-array-elements508954
-Ref: Array Intro-Footnote-1511659
-Node: Reference to Elements511787
-Node: Assigning Elements514251
-Node: Array Example514742
-Node: Scanning an Array516696
-Node: Controlling Scanning519718
-Ref: Controlling Scanning-Footnote-1526174
-Node: Numeric Array Subscripts526490
-Node: Uninitialized Subscripts528674
-Node: Delete530293
-Ref: Delete-Footnote-1533045
-Node: Multidimensional533102
-Node: Multiscanning536197
-Node: Arrays of Arrays537788
-Node: Arrays Summary542556
-Node: Functions544649
-Node: Built-in545687
-Node: Calling Built-in546840
-Node: Boolean Functions548836
-Node: Numeric Functions549390
-Ref: Numeric Functions-Footnote-1553417
-Ref: Numeric Functions-Footnote-2554065
-Ref: Numeric Functions-Footnote-3554113
-Node: String Functions554385
-Ref: String Functions-Footnote-1579227
-Ref: String Functions-Footnote-2579355
-Ref: String Functions-Footnote-3579603
-Node: Gory Details579690
-Ref: table-sub-escapes581481
-Ref: table-sub-proposed583001
-Ref: table-posix-sub584365
-Ref: table-gensub-escapes585907
-Ref: Gory Details-Footnote-1586731
-Node: I/O Functions586885
-Ref: table-system-return-values593339
-Ref: I/O Functions-Footnote-1595420
-Ref: I/O Functions-Footnote-2595568
-Node: Time Functions595688
-Ref: Time Functions-Footnote-1606359
-Ref: Time Functions-Footnote-2606427
-Ref: Time Functions-Footnote-3606585
-Ref: Time Functions-Footnote-4606696
-Ref: Time Functions-Footnote-5606808
-Ref: Time Functions-Footnote-6607035
-Node: Bitwise Functions607301
-Ref: table-bitwise-ops607895
-Ref: Bitwise Functions-Footnote-1613959
-Ref: Bitwise Functions-Footnote-2614132
-Node: Type Functions614323
-Node: I18N Functions617743
-Node: User-defined619394
-Node: Definition Syntax620206
-Ref: Definition Syntax-Footnote-1625900
-Node: Function Example625971
-Ref: Function Example-Footnote-1628893
-Node: Function Calling628915
-Node: Calling A Function629503
-Node: Variable Scope630461
-Node: Pass By Value/Reference633455
-Node: Function Caveats636099
-Ref: Function Caveats-Footnote-1638146
-Node: Return Statement638266
-Node: Dynamic Typing641245
-Node: Indirect Calls642175
-Node: Functions Summary653102
-Node: Library Functions655807
-Ref: Library Functions-Footnote-1659414
-Ref: Library Functions-Footnote-2659557
-Node: Library Names659728
-Ref: Library Names-Footnote-1663395
-Ref: Library Names-Footnote-2663618
-Node: General Functions663704
-Node: Strtonum Function664886
-Node: Assert Function667908
-Node: Round Function671234
-Node: Cliff Random Function672774
-Node: Ordinal Functions673790
-Ref: Ordinal Functions-Footnote-1676853
-Ref: Ordinal Functions-Footnote-2677105
-Node: Join Function677315
-Ref: Join Function-Footnote-1679085
-Node: Getlocaltime Function679285
-Node: Readfile Function683027
-Node: Shell Quoting685004
-Node: Isnumeric Function686432
-Node: Data File Management687820
-Node: Filetrans Function688452
-Node: Rewind Function692548
-Node: File Checking694457
-Ref: File Checking-Footnote-1695791
-Node: Empty Files695992
-Node: Ignoring Assigns697971
-Node: Getopt Function699521
-Ref: Getopt Function-Footnote-1714818
-Node: Passwd Functions715018
-Ref: Passwd Functions-Footnote-1723857
-Node: Group Functions723945
-Ref: Group Functions-Footnote-1731843
-Node: Walking Arrays732050
-Node: Library Functions Summary735058
-Node: Library Exercises736464
-Node: Sample Programs736929
-Node: Running Examples737699
-Node: Clones738427
-Node: Cut Program739651
-Node: Egrep Program749791
-Node: Id Program758792
-Node: Split Program768727
-Ref: Split Program-Footnote-1778620
-Node: Tee Program778793
-Node: Uniq Program781583
-Node: Wc Program789171
-Node: Bytes vs. Characters789558
-Node: Using extensions791106
-Node: wc program791860
-Node: Miscellaneous Programs796725
-Node: Dupword Program797938
-Node: Alarm Program799968
-Node: Translate Program804823
-Ref: Translate Program-Footnote-1809388
-Node: Labels Program809658
-Ref: Labels Program-Footnote-1813009
-Node: Word Sorting813093
-Node: History Sorting817165
-Node: Extract Program819390
-Node: Simple Sed827403
-Node: Igawk Program830477
-Ref: Igawk Program-Footnote-1844808
-Ref: Igawk Program-Footnote-2845010
-Ref: Igawk Program-Footnote-3845132
-Node: Anagram Program845247
-Node: Signature Program848309
-Node: Programs Summary849556
-Node: Programs Exercises850770
-Ref: Programs Exercises-Footnote-1854900
-Node: Advanced Features854986
-Node: Nondecimal Data857117
-Node: Boolean Typed Values858715
-Node: Array Sorting860596
-Node: Controlling Array Traversal861301
-Ref: Controlling Array Traversal-Footnote-1869669
-Node: Array Sorting Functions869787
-Ref: Array Sorting Functions-Footnote-1875698
-Node: Two-way I/O875894
-Ref: Two-way I/O-Footnote-1883620
-Ref: Two-way I/O-Footnote-2883807
-Node: TCP/IP Networking883889
-Node: Profiling886965
-Node: Extension Philosophy896274
-Node: Advanced Features Summary897753
-Node: Internationalization899768
-Node: I18N and L10N901442
-Node: Explaining gettext902129
-Ref: Explaining gettext-Footnote-1908021
-Ref: Explaining gettext-Footnote-2908206
-Node: Programmer i18n908371
-Ref: Programmer i18n-Footnote-1913320
-Node: Translator i18n913369
-Node: String Extraction914163
-Ref: String Extraction-Footnote-1915295
-Node: Printf Ordering915381
-Ref: Printf Ordering-Footnote-1918167
-Node: I18N Portability918231
-Ref: I18N Portability-Footnote-1920687
-Node: I18N Example920750
-Ref: I18N Example-Footnote-1924025
-Ref: I18N Example-Footnote-2924098
-Node: Gawk I18N924207
-Node: I18N Summary924829
-Node: Debugger926170
-Node: Debugging927170
-Node: Debugging Concepts927611
-Node: Debugging Terms929420
-Node: Awk Debugging931995
-Ref: Awk Debugging-Footnote-1932940
-Node: Sample Debugging Session933072
-Node: Debugger Invocation933606
-Node: Finding The Bug934992
-Node: List of Debugger Commands941466
-Node: Breakpoint Control942799
-Node: Debugger Execution Control946493
-Node: Viewing And Changing Data949855
-Node: Execution Stack953396
-Node: Debugger Info955033
-Node: Miscellaneous Debugger Commands959104
-Node: Readline Support964166
-Node: Limitations965062
-Node: Debugging Summary967616
-Node: Namespaces968895
-Node: Global Namespace970006
-Node: Qualified Names971404
-Node: Default Namespace972403
-Node: Changing The Namespace973144
-Node: Naming Rules974758
-Node: Internal Name Management976606
-Node: Namespace Example977648
-Node: Namespace And Features980210
-Node: Namespace Summary981645
-Node: Arbitrary Precision Arithmetic983122
-Node: Computer Arithmetic984609
-Ref: table-numeric-ranges988375
-Ref: table-floating-point-ranges988869
-Ref: Computer Arithmetic-Footnote-1989528
-Node: Math Definitions989585
-Ref: table-ieee-formats992561
-Node: MPFR features993129
-Node: MPFR Deprecated993575
-Ref: MPFR Deprecated-Footnote-1994505
-Node: MPFR Intro994660
-Node: FP Math Caution996300
-Ref: FP Math Caution-Footnote-1997372
-Node: Inexactness of computations997741
-Node: Inexact representation998772
-Node: Comparing FP Values1000132
-Node: Errors accumulate1001373
-Node: Strange values1002829
-Ref: Strange values-Footnote-11005417
-Node: Getting Accuracy1005522
-Node: Try To Round1008232
-Node: Setting precision1009131
-Ref: table-predefined-precision-strings1009828
-Node: Setting the rounding mode1011659
-Ref: table-gawk-rounding-modes1012033
-Ref: Setting the rounding mode-Footnote-11015965
-Node: Arbitrary Precision Integers1016144
-Ref: Arbitrary Precision Integers-Footnote-11019319
-Node: Checking for MPFR1019468
-Node: POSIX Floating Point Problems1020942
-Ref: POSIX Floating Point Problems-Footnote-11025595
-Node: Floating point summary1025633
-Node: Dynamic Extensions1027823
-Node: Extension Intro1029376
-Node: Plugin License1030642
-Node: Extension Mechanism Outline1031439
-Ref: figure-load-extension1031878
-Ref: figure-register-new-function1033444
-Ref: figure-call-new-function1034537
-Node: Extension API Description1036600
-Node: Extension API Functions Introduction1038313
-Ref: table-api-std-headers1040149
-Node: General Data Types1044399
-Ref: General Data Types-Footnote-11053105
-Node: Memory Allocation Functions1053404
-Ref: Memory Allocation Functions-Footnote-11057905
-Node: Constructor Functions1058004
-Node: API Ownership of MPFR and GMP Values1061657
-Node: Registration Functions1063190
-Node: Extension Functions1063890
-Node: Exit Callback Functions1069212
-Node: Extension Version String1070462
-Node: Input Parsers1071125
-Node: Output Wrappers1083846
-Node: Two-way processors1088358
-Node: Printing Messages1090623
-Ref: Printing Messages-Footnote-11091794
-Node: Updating ERRNO1091947
-Node: Requesting Values1092686
-Ref: table-value-types-returned1093423
-Node: Accessing Parameters1094532
-Node: Symbol Table Access1095769
-Node: Symbol table by name1096281
-Ref: Symbol table by name-Footnote-11099306
-Node: Symbol table by cookie1099434
-Ref: Symbol table by cookie-Footnote-11103619
-Node: Cached values1103683
-Ref: Cached values-Footnote-11107219
-Node: Array Manipulation1107372
-Ref: Array Manipulation-Footnote-11108463
-Node: Array Data Types1108500
-Ref: Array Data Types-Footnote-11111158
-Node: Array Functions1111250
-Node: Flattening Arrays1116035
-Node: Creating Arrays1123011
-Node: Redirection API1127778
-Node: Extension API Variables1130611
-Node: Extension Versioning1131322
-Ref: gawk-api-version1131751
-Node: Extension GMP/MPFR Versioning1133483
-Node: Extension API Informational Variables1135111
-Node: Extension API Boilerplate1136184
-Node: Changes from API V11140158
-Node: Finding Extensions1141730
-Node: Extension Example1142289
-Node: Internal File Description1143087
-Node: Internal File Ops1147167
-Ref: Internal File Ops-Footnote-11158517
-Node: Using Internal File Ops1158657
-Ref: Using Internal File Ops-Footnote-11161040
-Node: Extension Samples1161314
-Node: Extension Sample File Functions1162843
-Node: Extension Sample Fnmatch1170492
-Node: Extension Sample Fork1171979
-Node: Extension Sample Inplace1173197
-Node: Extension Sample Ord1176823
-Node: Extension Sample Readdir1177659
-Ref: table-readdir-file-types1178548
-Node: Extension Sample Revout1179616
-Node: Extension Sample Rev2way1180205
-Node: Extension Sample Read write array1180945
-Node: Extension Sample Readfile1184110
-Node: Extension Sample Time1185205
-Node: Extension Sample API Tests1186957
-Node: gawkextlib1187449
-Node: Extension summary1190367
-Node: Extension Exercises1194069
-Node: Language History1195311
-Node: V7/SVR3.11196967
-Node: SVR41199119
-Node: POSIX1200553
-Node: BTL1201934
-Node: POSIX/GNU1202663
-Node: Feature History1208441
-Node: Common Extensions1225616
-Node: Ranges and Locales1226899
-Ref: Ranges and Locales-Footnote-11231515
-Ref: Ranges and Locales-Footnote-21231542
-Ref: Ranges and Locales-Footnote-31231777
-Node: Contributors1232000
-Node: History summary1237997
-Node: Installation1239377
-Node: Gawk Distribution1240321
-Node: Getting1240805
-Node: Extracting1241768
-Node: Distribution contents1243406
-Node: Unix Installation1250467
-Node: Quick Installation1251271
-Node: Compiling with MPFR1253691
-Node: Shell Startup Files1254381
-Node: Additional Configuration Options1255470
-Node: Configuration Philosophy1257785
-Node: Compiling from Git1260181
-Node: Building the Documentation1260736
-Node: Non-Unix Installation1262120
-Node: PC Installation1262580
-Node: PC Binary Installation1263418
-Node: PC Compiling1264291
-Node: PC Using1265408
-Node: Cygwin1268961
-Node: MSYS1270185
-Node: VMS Installation1270787
-Node: VMS Compilation1271506
-Ref: VMS Compilation-Footnote-11272735
-Node: VMS Dynamic Extensions1272793
-Node: VMS Installation Details1274478
-Node: VMS Running1276740
-Node: VMS GNV1281019
-Node: Bugs1281733
-Node: Bug definition1282645
-Node: Bug address1285581
-Node: Usenet1288769
-Node: Performance bugs1289958
-Node: Asking for help1292879
-Node: Maintainers1294846
-Node: Other Versions1296040
-Node: Installation summary1304310
-Node: Notes1305674
-Node: Compatibility Mode1306468
-Node: Additions1307250
-Node: Accessing The Source1308175
-Node: Adding Code1309612
-Node: New Ports1316427
-Node: Derived Files1320802
-Ref: Derived Files-Footnote-11326462
-Ref: Derived Files-Footnote-21326497
-Ref: Derived Files-Footnote-31327095
-Node: Future Extensions1327209
-Node: Implementation Limitations1327867
-Node: Extension Design1329077
-Node: Old Extension Problems1330221
-Ref: Old Extension Problems-Footnote-11331739
-Node: Extension New Mechanism Goals1331796
-Ref: Extension New Mechanism Goals-Footnote-11335160
-Node: Extension Other Design Decisions1335349
-Node: Extension Future Growth1337462
-Node: Notes summary1338068
-Node: Basic Concepts1339226
-Node: Basic High Level1339907
-Ref: figure-general-flow1340189
-Ref: figure-process-flow1340875
-Ref: Basic High Level-Footnote-11344177
-Node: Basic Data Typing1344362
-Node: Glossary1347690
-Node: Copying1379577
-Node: GNU Free Documentation License1417120
-Node: Index1442240
+Node: Foreword345720
+Node: Foreword450162
+Node: Preface51694
+Ref: Preface-Footnote-154553
+Ref: Preface-Footnote-254662
+Ref: Preface-Footnote-354896
+Node: History55038
+Node: Names57390
+Ref: Names-Footnote-158494
+Node: This Manual58641
+Ref: This Manual-Footnote-165280
+Node: Conventions65380
+Node: Manual History67749
+Ref: Manual History-Footnote-170746
+Ref: Manual History-Footnote-270787
+Node: How To Contribute70861
+Node: Acknowledgments71783
+Node: Getting Started76720
+Node: Running gawk79159
+Node: One-shot80349
+Node: Read Terminal81612
+Node: Long83605
+Node: Executable Scripts85118
+Ref: Executable Scripts-Footnote-187751
+Node: Comments87854
+Node: Quoting90338
+Node: DOS Quoting95864
+Node: Sample Data Files97920
+Node: Very Simple100515
+Node: Two Rules106617
+Node: More Complex108502
+Node: Statements/Lines110834
+Ref: Statements/Lines-Footnote-1115318
+Node: Other Features115583
+Node: When116519
+Ref: When-Footnote-1118273
+Node: Intro Summary118338
+Node: Invoking Gawk119222
+Node: Command Line120736
+Node: Options121534
+Ref: Options-Footnote-1139783
+Ref: Options-Footnote-2140014
+Node: Other Arguments140039
+Node: Naming Standard Input144050
+Node: Environment Variables145260
+Node: AWKPATH Variable145818
+Ref: AWKPATH Variable-Footnote-1149230
+Ref: AWKPATH Variable-Footnote-2149264
+Node: AWKLIBPATH Variable149635
+Ref: AWKLIBPATH Variable-Footnote-1151332
+Node: Other Environment Variables151707
+Node: Exit Status155659
+Node: Include Files156336
+Node: Loading Shared Libraries160026
+Node: Obsolete161454
+Node: Undocumented162074
+Node: Invoking Summary162371
+Node: Regexp165212
+Node: Regexp Usage166666
+Node: Escape Sequences168703
+Node: Regexp Operators174945
+Node: Regexp Operator Details175430
+Ref: Regexp Operator Details-Footnote-1182794
+Node: Interval Expressions182941
+Ref: Interval Expressions-Footnote-1185116
+Node: Bracket Expressions185214
+Ref: table-char-classes187690
+Node: Leftmost Longest191017
+Node: Computed Regexps192320
+Node: GNU Regexp Operators195747
+Node: Case-sensitivity199425
+Ref: Case-sensitivity-Footnote-1202291
+Ref: Case-sensitivity-Footnote-2202526
+Node: Regexp Summary202634
+Node: Reading Files204100
+Node: Records206369
+Node: awk split records207444
+Node: gawk split records212144
+Ref: gawk split records-Footnote-1217218
+Node: Fields217255
+Node: Nonconstant Fields219996
+Ref: Nonconstant Fields-Footnote-1222232
+Node: Changing Fields222436
+Node: Field Separators228467
+Node: Default Field Splitting231165
+Node: Regexp Field Splitting232283
+Node: Single Character Fields235960
+Node: Command Line Field Separator237020
+Node: Full Line Fields240238
+Ref: Full Line Fields-Footnote-1241760
+Ref: Full Line Fields-Footnote-2241806
+Node: Field Splitting Summary241907
+Node: Constant Size243981
+Node: Fixed width data244713
+Node: Skipping intervening248180
+Node: Allowing trailing data248978
+Node: Fields with fixed data250015
+Node: Splitting By Content251533
+Ref: Splitting By Content-Footnote-1255369
+Node: More CSV255532
+Node: FS versus FPAT257147
+Node: Testing field creation258307
+Node: Multiple Line259932
+Node: Getline266209
+Node: Plain Getline268678
+Node: Getline/Variable271251
+Node: Getline/File272402
+Node: Getline/Variable/File273790
+Ref: Getline/Variable/File-Footnote-1275395
+Node: Getline/Pipe275483
+Node: Getline/Variable/Pipe278187
+Node: Getline/Coprocess279322
+Node: Getline/Variable/Coprocess280589
+Node: Getline Notes281331
+Node: Getline Summary284128
+Ref: table-getline-variants284552
+Node: Read Timeout285301
+Ref: Read Timeout-Footnote-1289217
+Node: Retrying Input289275
+Node: Command-line directories290474
+Node: Input Summary291380
+Node: Input Exercises294552
+Node: Printing294986
+Node: Print296820
+Node: Print Examples298277
+Node: Output Separators301057
+Node: OFMT303074
+Node: Printf304430
+Node: Basic Printf305215
+Node: Control Letters306789
+Node: Format Modifiers311951
+Node: Printf Examples317966
+Node: Redirection320452
+Node: Special FD327293
+Ref: Special FD-Footnote-1330461
+Node: Special Files330535
+Node: Other Inherited Files331152
+Node: Special Network332153
+Node: Special Caveats333013
+Node: Close Files And Pipes333962
+Ref: table-close-pipe-return-values340869
+Ref: Close Files And Pipes-Footnote-1341683
+Ref: Close Files And Pipes-Footnote-2341831
+Node: Nonfatal341983
+Node: Output Summary344321
+Node: Output Exercises345543
+Node: Expressions346222
+Node: Values347410
+Node: Constants348088
+Node: Scalar Constants348779
+Ref: Scalar Constants-Footnote-1351289
+Node: Nondecimal-numbers351539
+Node: Regexp Constants354540
+Node: Using Constant Regexps355066
+Node: Standard Regexp Constants355688
+Node: Strong Regexp Constants358876
+Node: Variables362591
+Node: Using Variables363248
+Node: Assignment Options365158
+Node: Conversion367629
+Node: Strings And Numbers368153
+Ref: Strings And Numbers-Footnote-1371216
+Node: Locale influences conversions371325
+Ref: table-locale-affects374083
+Node: All Operators374702
+Node: Arithmetic Ops375331
+Node: Concatenation378047
+Ref: Concatenation-Footnote-1380894
+Node: Assignment Ops381001
+Ref: table-assign-ops385992
+Node: Increment Ops387306
+Node: Truth Values and Conditions390766
+Node: Truth Values391840
+Node: Typing and Comparison392888
+Node: Variable Typing393708
+Ref: Variable Typing-Footnote-1400171
+Ref: Variable Typing-Footnote-2400243
+Node: Comparison Operators400320
+Ref: table-relational-ops400739
+Node: POSIX String Comparison404235
+Ref: POSIX String Comparison-Footnote-1405930
+Ref: POSIX String Comparison-Footnote-2406069
+Node: Boolean Ops406153
+Ref: Boolean Ops-Footnote-1410635
+Node: Conditional Exp410727
+Node: Function Calls412463
+Node: Precedence416340
+Node: Locales419999
+Node: Expressions Summary421631
+Node: Patterns and Actions424204
+Node: Pattern Overview425324
+Node: Regexp Patterns427001
+Node: Expression Patterns427543
+Node: Ranges431324
+Node: BEGIN/END434432
+Node: Using BEGIN/END435193
+Ref: Using BEGIN/END-Footnote-1437947
+Node: I/O And BEGIN/END438053
+Node: BEGINFILE/ENDFILE440366
+Node: Empty443597
+Node: Using Shell Variables443914
+Node: Action Overview446188
+Node: Statements448513
+Node: If Statement450361
+Node: While Statement451856
+Node: Do Statement453884
+Node: For Statement455032
+Node: Switch Statement458287
+Node: Break Statement460728
+Node: Continue Statement462820
+Node: Next Statement464647
+Node: Nextfile Statement467030
+Node: Exit Statement469719
+Node: Built-in Variables472122
+Node: User-modified473255
+Node: Auto-set481022
+Ref: Auto-set-Footnote-1497829
+Ref: Auto-set-Footnote-2498035
+Node: ARGC and ARGV498091
+Node: Pattern Action Summary502304
+Node: Arrays504734
+Node: Array Basics506063
+Node: Array Intro506907
+Ref: figure-array-elements508882
+Ref: Array Intro-Footnote-1511587
+Node: Reference to Elements511715
+Node: Assigning Elements514179
+Node: Array Example514670
+Node: Scanning an Array516624
+Node: Controlling Scanning519646
+Ref: Controlling Scanning-Footnote-1526102
+Node: Numeric Array Subscripts526418
+Node: Uninitialized Subscripts528602
+Node: Delete530221
+Ref: Delete-Footnote-1532973
+Node: Multidimensional533030
+Node: Multiscanning536125
+Node: Arrays of Arrays537716
+Node: Arrays Summary542484
+Node: Functions544577
+Node: Built-in545615
+Node: Calling Built-in546768
+Node: Boolean Functions548764
+Node: Numeric Functions549318
+Ref: Numeric Functions-Footnote-1553345
+Ref: Numeric Functions-Footnote-2553993
+Ref: Numeric Functions-Footnote-3554041
+Node: String Functions554313
+Ref: String Functions-Footnote-1579155
+Ref: String Functions-Footnote-2579283
+Ref: String Functions-Footnote-3579531
+Node: Gory Details579618
+Ref: table-sub-escapes581409
+Ref: table-sub-proposed582929
+Ref: table-posix-sub584293
+Ref: table-gensub-escapes585835
+Ref: Gory Details-Footnote-1586659
+Node: I/O Functions586813
+Ref: table-system-return-values593267
+Ref: I/O Functions-Footnote-1595348
+Ref: I/O Functions-Footnote-2595496
+Node: Time Functions595616
+Ref: Time Functions-Footnote-1606287
+Ref: Time Functions-Footnote-2606355
+Ref: Time Functions-Footnote-3606513
+Ref: Time Functions-Footnote-4606624
+Ref: Time Functions-Footnote-5606736
+Ref: Time Functions-Footnote-6606963
+Node: Bitwise Functions607229
+Ref: table-bitwise-ops607823
+Ref: Bitwise Functions-Footnote-1613887
+Ref: Bitwise Functions-Footnote-2614060
+Node: Type Functions614251
+Node: I18N Functions617671
+Node: User-defined619322
+Node: Definition Syntax620134
+Ref: Definition Syntax-Footnote-1625828
+Node: Function Example625899
+Ref: Function Example-Footnote-1628821
+Node: Function Calling628843
+Node: Calling A Function629431
+Node: Variable Scope630389
+Node: Pass By Value/Reference633383
+Node: Function Caveats636027
+Ref: Function Caveats-Footnote-1638074
+Node: Return Statement638194
+Node: Dynamic Typing641173
+Node: Indirect Calls642103
+Node: Functions Summary653030
+Node: Library Functions655735
+Ref: Library Functions-Footnote-1659342
+Ref: Library Functions-Footnote-2659485
+Node: Library Names659656
+Ref: Library Names-Footnote-1663323
+Ref: Library Names-Footnote-2663546
+Node: General Functions663632
+Node: Strtonum Function664814
+Node: Assert Function667836
+Node: Round Function671162
+Node: Cliff Random Function672702
+Node: Ordinal Functions673718
+Ref: Ordinal Functions-Footnote-1676781
+Ref: Ordinal Functions-Footnote-2677033
+Node: Join Function677243
+Ref: Join Function-Footnote-1679013
+Node: Getlocaltime Function679213
+Node: Readfile Function682955
+Node: Shell Quoting684932
+Node: Isnumeric Function686360
+Node: Data File Management687748
+Node: Filetrans Function688380
+Node: Rewind Function692476
+Node: File Checking694385
+Ref: File Checking-Footnote-1695719
+Node: Empty Files695920
+Node: Ignoring Assigns697899
+Node: Getopt Function699449
+Ref: Getopt Function-Footnote-1714746
+Node: Passwd Functions714946
+Ref: Passwd Functions-Footnote-1723785
+Node: Group Functions723873
+Ref: Group Functions-Footnote-1731771
+Node: Walking Arrays731978
+Node: Library Functions Summary734986
+Node: Library Exercises736392
+Node: Sample Programs736857
+Node: Running Examples737627
+Node: Clones738355
+Node: Cut Program739579
+Node: Egrep Program749719
+Node: Id Program758720
+Node: Split Program768655
+Ref: Split Program-Footnote-1778548
+Node: Tee Program778721
+Node: Uniq Program781511
+Node: Wc Program789099
+Node: Bytes vs. Characters789486
+Node: Using extensions791034
+Node: wc program791788
+Node: Miscellaneous Programs796653
+Node: Dupword Program797866
+Node: Alarm Program799896
+Node: Translate Program804751
+Ref: Translate Program-Footnote-1809316
+Node: Labels Program809586
+Ref: Labels Program-Footnote-1812937
+Node: Word Sorting813021
+Node: History Sorting817093
+Node: Extract Program819318
+Node: Simple Sed827331
+Node: Igawk Program830405
+Ref: Igawk Program-Footnote-1844736
+Ref: Igawk Program-Footnote-2844938
+Ref: Igawk Program-Footnote-3845060
+Node: Anagram Program845175
+Node: Signature Program848237
+Node: Programs Summary849484
+Node: Programs Exercises850698
+Ref: Programs Exercises-Footnote-1854828
+Node: Advanced Features854914
+Node: Nondecimal Data857045
+Node: Boolean Typed Values858643
+Node: Array Sorting860524
+Node: Controlling Array Traversal861229
+Ref: Controlling Array Traversal-Footnote-1869597
+Node: Array Sorting Functions869715
+Ref: Array Sorting Functions-Footnote-1875626
+Node: Two-way I/O875822
+Ref: Two-way I/O-Footnote-1883548
+Ref: Two-way I/O-Footnote-2883735
+Node: TCP/IP Networking883817
+Node: Profiling886893
+Node: Extension Philosophy896202
+Node: Advanced Features Summary897681
+Node: Internationalization899696
+Node: I18N and L10N901370
+Node: Explaining gettext902057
+Ref: Explaining gettext-Footnote-1907949
+Ref: Explaining gettext-Footnote-2908134
+Node: Programmer i18n908299
+Ref: Programmer i18n-Footnote-1913248
+Node: Translator i18n913297
+Node: String Extraction914091
+Ref: String Extraction-Footnote-1915223
+Node: Printf Ordering915309
+Ref: Printf Ordering-Footnote-1918095
+Node: I18N Portability918159
+Ref: I18N Portability-Footnote-1920615
+Node: I18N Example920678
+Ref: I18N Example-Footnote-1923953
+Ref: I18N Example-Footnote-2924026
+Node: Gawk I18N924135
+Node: I18N Summary924757
+Node: Debugger926098
+Node: Debugging927098
+Node: Debugging Concepts927539
+Node: Debugging Terms929348
+Node: Awk Debugging931923
+Ref: Awk Debugging-Footnote-1932868
+Node: Sample Debugging Session933000
+Node: Debugger Invocation933534
+Node: Finding The Bug934920
+Node: List of Debugger Commands941394
+Node: Breakpoint Control942727
+Node: Debugger Execution Control946421
+Node: Viewing And Changing Data949783
+Node: Execution Stack953324
+Node: Debugger Info954961
+Node: Miscellaneous Debugger Commands959032
+Node: Readline Support964094
+Node: Limitations964990
+Node: Debugging Summary967544
+Node: Namespaces968823
+Node: Global Namespace969934
+Node: Qualified Names971332
+Node: Default Namespace972331
+Node: Changing The Namespace973072
+Node: Naming Rules974686
+Node: Internal Name Management976534
+Node: Namespace Example977576
+Node: Namespace And Features980138
+Node: Namespace Summary981573
+Node: Arbitrary Precision Arithmetic983050
+Node: Computer Arithmetic984537
+Ref: table-numeric-ranges988303
+Ref: table-floating-point-ranges988797
+Ref: Computer Arithmetic-Footnote-1989456
+Node: Math Definitions989513
+Ref: table-ieee-formats992489
+Node: MPFR features993057
+Node: MPFR On Parole993502
+Ref: MPFR On Parole-Footnote-1994331
+Node: MPFR Intro994486
+Node: FP Math Caution996125
+Ref: FP Math Caution-Footnote-1997197
+Node: Inexactness of computations997566
+Node: Inexact representation998597
+Node: Comparing FP Values999957
+Node: Errors accumulate1001198
+Node: Strange values1002654
+Ref: Strange values-Footnote-11005242
+Node: Getting Accuracy1005347
+Node: Try To Round1008057
+Node: Setting precision1008956
+Ref: table-predefined-precision-strings1009653
+Node: Setting the rounding mode1011484
+Ref: table-gawk-rounding-modes1011858
+Ref: Setting the rounding mode-Footnote-11015790
+Node: Arbitrary Precision Integers1015969
+Ref: Arbitrary Precision Integers-Footnote-11019144
+Node: Checking for MPFR1019293
+Node: POSIX Floating Point Problems1020767
+Ref: POSIX Floating Point Problems-Footnote-11025420
+Node: Floating point summary1025458
+Node: Dynamic Extensions1027648
+Node: Extension Intro1029201
+Node: Plugin License1030467
+Node: Extension Mechanism Outline1031264
+Ref: figure-load-extension1031703
+Ref: figure-register-new-function1033269
+Ref: figure-call-new-function1034362
+Node: Extension API Description1036425
+Node: Extension API Functions Introduction1038138
+Ref: table-api-std-headers1039974
+Node: General Data Types1044224
+Ref: General Data Types-Footnote-11052930
+Node: Memory Allocation Functions1053229
+Ref: Memory Allocation Functions-Footnote-11057730
+Node: Constructor Functions1057829
+Node: API Ownership of MPFR and GMP Values1061482
+Node: Registration Functions1063015
+Node: Extension Functions1063715
+Node: Exit Callback Functions1069037
+Node: Extension Version String1070287
+Node: Input Parsers1070950
+Node: Output Wrappers1083671
+Node: Two-way processors1088183
+Node: Printing Messages1090448
+Ref: Printing Messages-Footnote-11091619
+Node: Updating ERRNO1091772
+Node: Requesting Values1092511
+Ref: table-value-types-returned1093248
+Node: Accessing Parameters1094357
+Node: Symbol Table Access1095594
+Node: Symbol table by name1096106
+Ref: Symbol table by name-Footnote-11099131
+Node: Symbol table by cookie1099259
+Ref: Symbol table by cookie-Footnote-11103444
+Node: Cached values1103508
+Ref: Cached values-Footnote-11107044
+Node: Array Manipulation1107197
+Ref: Array Manipulation-Footnote-11108288
+Node: Array Data Types1108325
+Ref: Array Data Types-Footnote-11110983
+Node: Array Functions1111075
+Node: Flattening Arrays1115860
+Node: Creating Arrays1122836
+Node: Redirection API1127603
+Node: Extension API Variables1130436
+Node: Extension Versioning1131147
+Ref: gawk-api-version1131576
+Node: Extension GMP/MPFR Versioning1133308
+Node: Extension API Informational Variables1134936
+Node: Extension API Boilerplate1136009
+Node: Changes from API V11139983
+Node: Finding Extensions1141555
+Node: Extension Example1142114
+Node: Internal File Description1142912
+Node: Internal File Ops1146992
+Ref: Internal File Ops-Footnote-11158342
+Node: Using Internal File Ops1158482
+Ref: Using Internal File Ops-Footnote-11160865
+Node: Extension Samples1161139
+Node: Extension Sample File Functions1162668
+Node: Extension Sample Fnmatch1170317
+Node: Extension Sample Fork1171804
+Node: Extension Sample Inplace1173022
+Node: Extension Sample Ord1176648
+Node: Extension Sample Readdir1177484
+Ref: table-readdir-file-types1178373
+Node: Extension Sample Revout1179441
+Node: Extension Sample Rev2way1180030
+Node: Extension Sample Read write array1180770
+Node: Extension Sample Readfile1183935
+Node: Extension Sample Time1185030
+Node: Extension Sample API Tests1186782
+Node: gawkextlib1187274
+Node: Extension summary1190192
+Node: Extension Exercises1193894
+Node: Language History1195136
+Node: V7/SVR3.11196792
+Node: SVR41198944
+Node: POSIX1200378
+Node: BTL1201759
+Node: POSIX/GNU1202488
+Node: Feature History1208266
+Node: Common Extensions1225441
+Node: Ranges and Locales1226724
+Ref: Ranges and Locales-Footnote-11231340
+Ref: Ranges and Locales-Footnote-21231367
+Ref: Ranges and Locales-Footnote-31231602
+Node: Contributors1231825
+Node: History summary1237822
+Node: Installation1239202
+Node: Gawk Distribution1240146
+Node: Getting1240630
+Node: Extracting1241593
+Node: Distribution contents1243231
+Node: Unix Installation1250292
+Node: Quick Installation1251096
+Node: Compiling with MPFR1253516
+Node: Shell Startup Files1254206
+Node: Additional Configuration Options1255295
+Node: Configuration Philosophy1257610
+Node: Compiling from Git1260006
+Node: Building the Documentation1260561
+Node: Non-Unix Installation1261945
+Node: PC Installation1262405
+Node: PC Binary Installation1263243
+Node: PC Compiling1264116
+Node: PC Using1265233
+Node: Cygwin1268786
+Node: MSYS1270010
+Node: VMS Installation1270612
+Node: VMS Compilation1271331
+Ref: VMS Compilation-Footnote-11272560
+Node: VMS Dynamic Extensions1272618
+Node: VMS Installation Details1274303
+Node: VMS Running1276565
+Node: VMS GNV1280844
+Node: Bugs1281558
+Node: Bug definition1282470
+Node: Bug address1285406
+Node: Usenet1288594
+Node: Performance bugs1289783
+Node: Asking for help1292704
+Node: Maintainers1294671
+Node: Other Versions1295865
+Node: Installation summary1304135
+Node: Notes1305499
+Node: Compatibility Mode1306293
+Node: Additions1307075
+Node: Accessing The Source1308000
+Node: Adding Code1309437
+Node: New Ports1316252
+Node: Derived Files1320627
+Ref: Derived Files-Footnote-11326287
+Ref: Derived Files-Footnote-21326322
+Ref: Derived Files-Footnote-31326920
+Node: Future Extensions1327034
+Node: Implementation Limitations1327692
+Node: Extension Design1328902
+Node: Old Extension Problems1330046
+Ref: Old Extension Problems-Footnote-11331564
+Node: Extension New Mechanism Goals1331621
+Ref: Extension New Mechanism Goals-Footnote-11334985
+Node: Extension Other Design Decisions1335174
+Node: Extension Future Growth1337287
+Node: Notes summary1337893
+Node: Basic Concepts1339051
+Node: Basic High Level1339732
+Ref: figure-general-flow1340014
+Ref: figure-process-flow1340700
+Ref: Basic High Level-Footnote-11344002
+Node: Basic Data Typing1344187
+Node: Glossary1347515
+Node: Copying1379402
+Node: GNU Free Documentation License1416945
+Node: Index1442065
End Tag Table
diff --git a/doc/gawk.texi b/doc/gawk.texi
index d5d3651f..0bc75bcf 100644
--- a/doc/gawk.texi
+++ b/doc/gawk.texi
@@ -59,7 +59,7 @@
@c applies to and all the info about who's publishing this edition
@c These apply across the board.
-@set UPDATE-MONTH April, 2022
+@set UPDATE-MONTH June, 2022
@set VERSION 5.1
@set PATCHLEVEL 1
@@ -286,13 +286,13 @@ Fax: +1-617-542-2652
Email: <email>gnu@@gnu.org</email>
URL: <ulink
url="https://www.gnu.org">https://www.gnu.org/</ulink></literallayout>
-<literallayout class="normal">Copyright © 1989, 1991, 1992, 1993,
1996–2005, 2007, 2009–2021
+<literallayout class="normal">Copyright © 1989, 1991, 1992, 1993,
1996–2005, 2007, 2009–2022
Free Software Foundation, Inc.
All Rights Reserved.</literallayout>
@end docbook
@ifnotdocbook
-Copyright @copyright{} 1989, 1991, 1992, 1993, 1996--2005, 2007, 2009--2021 @*
+Copyright @copyright{} 1989, 1991, 1992, 1993, 1996--2005, 2007, 2009--2022 @*
Free Software Foundation, Inc.
@end ifnotdocbook
@sp 2
@@ -926,7 +926,7 @@ particular records in a file and perform operations upon
them.
* Computer Arithmetic:: A quick intro to computer math.
* Math Definitions:: Defining terms used.
* MPFR features:: The MPFR features in @command{gawk}.
-* MPFR Deprecated:: MPFR features are deprecated!
+* MPFR On Parole:: MPFR features are on parole!
* MPFR Intro:: MPFR General introduction.
* FP Math Caution:: Things to know.
* Inexactness of computations:: Floating point math is not exact.
@@ -4199,10 +4199,16 @@ if @command{gawk} is not compiled to use the GNU MPFR
and MP libraries
As of @value{PVERSION} 5.2,
the arbitrary precision arithmetic features in @command{gawk}
-are @emph{deprecated}. They will be removed from @command{gawk} in 2024.
+are ``on parole.''
+The primary maintainer is no longer willing to support this feature,
+but another member of the development team has stepped up to take it over.
+As long as this situation reamins stable, MPFR will be supported. If it
+changes, the MPFR support will be removed from @command{gawk}.
+@ignore
If you use this option, @command{gawk} generates a warning message.
Create the environment variable @env{GAWK_NO_MPFR_WARN} with an arbitrary
value in order to silence the warning.
+@end ignore
@item @option{-n}
@itemx @option{--non-decimal-data}
@@ -4830,9 +4836,11 @@ in milliseconds. On systems that do not support
the @code{usleep()} system call,
the value is rounded up to an integral number of seconds.
+@ignore
@item GAWK_NO_MPFR_WARN
Specifies that @command{gawk} should not print a deprecation
warning when used with the @option{-M}/@option{--bignum} options.
+@end ignore
@item GAWK_READ_TIMEOUT
Specifies the time, in milliseconds, for @command{gawk} to
@@ -34176,21 +34184,24 @@ This @value{SECTION} briefly describes
arbitrary-precision
arithmetic in @command{gawk}.
@menu
-* MPFR Deprecated:: MPFR features are deprecated!
+* MPFR On Parole:: MPFR features are on parole!
* MPFR Intro:: MPFR General introduction.
@end menu
-@node MPFR Deprecated
-@subsection Arbitrary Precision Arithmetic is Deprecated!
+@node MPFR On Parole
+@subsection Arbitrary Precision Arithmetic is On Parole!
As of @value{PVERSION} 5.2,
arbitrary precision arithmetic in @command{gawk}
-is @emph{deprecated}. It will be removed from @command{gawk} in 2024.
+is ``on parole.'' The primary @command{gawk} maintainer is no
+longer maintaining it. Fortunately, a volunteer from the development
+team has agreed to take it over.
-This feature is deprecated because its inclusion was a mistake. It has
+This feature is on parole because its inclusion was a mistake. It has
led to endless bug reports, misuse of the feature and public abuse of the
maintainer, for no real increased value.
+@ignore
If you use this feature, you should start working now to find a different
toolset with which to accomplish your goals.@footnote{Of course, you can
always continue to use a version of @command{gawk} that still supports
@@ -34200,6 +34211,15 @@ If the feature is very important to you, then consider
if you are willing
to volunteer to maintain it, so that it can continue to be included
in @command{gawk}. If that is the case, contact the maintainer to discuss it
with him. You may do so by submitting a bug report.
+@end ignore
+
+If the situation with support changes, the feature will be removed
+from @command{gawk}.
+
+If you use this feature, you should consider finding a different
+toolset with which to accomplish your goals.@footnote{Of course, you can
+always continue to use a version of @command{gawk} that still supports
+arbitrary precision arithmetic. It simply will be unmaintained.}
@node MPFR Intro
@subsection Arbitrary Precision Introduction
diff --git a/doc/gawktexi.in b/doc/gawktexi.in
index 198f3700..7b4c2a8b 100644
--- a/doc/gawktexi.in
+++ b/doc/gawktexi.in
@@ -54,7 +54,7 @@
@c applies to and all the info about who's publishing this edition
@c These apply across the board.
-@set UPDATE-MONTH April, 2022
+@set UPDATE-MONTH June, 2022
@set VERSION 5.1
@set PATCHLEVEL 1
@@ -281,13 +281,13 @@ Fax: +1-617-542-2652
Email: <email>gnu@@gnu.org</email>
URL: <ulink
url="https://www.gnu.org">https://www.gnu.org/</ulink></literallayout>
-<literallayout class="normal">Copyright © 1989, 1991, 1992, 1993,
1996–2005, 2007, 2009–2021
+<literallayout class="normal">Copyright © 1989, 1991, 1992, 1993,
1996–2005, 2007, 2009–2022
Free Software Foundation, Inc.
All Rights Reserved.</literallayout>
@end docbook
@ifnotdocbook
-Copyright @copyright{} 1989, 1991, 1992, 1993, 1996--2005, 2007, 2009--2021 @*
+Copyright @copyright{} 1989, 1991, 1992, 1993, 1996--2005, 2007, 2009--2022 @*
Free Software Foundation, Inc.
@end ifnotdocbook
@sp 2
@@ -921,7 +921,7 @@ particular records in a file and perform operations upon
them.
* Computer Arithmetic:: A quick intro to computer math.
* Math Definitions:: Defining terms used.
* MPFR features:: The MPFR features in @command{gawk}.
-* MPFR Deprecated:: MPFR features are deprecated!
+* MPFR On Parole:: MPFR features are on parole!
* MPFR Intro:: MPFR General introduction.
* FP Math Caution:: Things to know.
* Inexactness of computations:: Floating point math is not exact.
@@ -4109,10 +4109,16 @@ if @command{gawk} is not compiled to use the GNU MPFR
and MP libraries
As of @value{PVERSION} 5.2,
the arbitrary precision arithmetic features in @command{gawk}
-are @emph{deprecated}. They will be removed from @command{gawk} in 2024.
+are ``on parole.''
+The primary maintainer is no longer willing to support this feature,
+but another member of the development team has stepped up to take it over.
+As long as this situation reamins stable, MPFR will be supported. If it
+changes, the MPFR support will be removed from @command{gawk}.
+@ignore
If you use this option, @command{gawk} generates a warning message.
Create the environment variable @env{GAWK_NO_MPFR_WARN} with an arbitrary
value in order to silence the warning.
+@end ignore
@item @option{-n}
@itemx @option{--non-decimal-data}
@@ -4696,9 +4702,11 @@ in milliseconds. On systems that do not support
the @code{usleep()} system call,
the value is rounded up to an integral number of seconds.
+@ignore
@item GAWK_NO_MPFR_WARN
Specifies that @command{gawk} should not print a deprecation
warning when used with the @option{-M}/@option{--bignum} options.
+@end ignore
@item GAWK_READ_TIMEOUT
Specifies the time, in milliseconds, for @command{gawk} to
@@ -33058,21 +33066,24 @@ This @value{SECTION} briefly describes
arbitrary-precision
arithmetic in @command{gawk}.
@menu
-* MPFR Deprecated:: MPFR features are deprecated!
+* MPFR On Parole:: MPFR features are on parole!
* MPFR Intro:: MPFR General introduction.
@end menu
-@node MPFR Deprecated
-@subsection Arbitrary Precision Arithmetic is Deprecated!
+@node MPFR On Parole
+@subsection Arbitrary Precision Arithmetic is On Parole!
As of @value{PVERSION} 5.2,
arbitrary precision arithmetic in @command{gawk}
-is @emph{deprecated}. It will be removed from @command{gawk} in 2024.
+is ``on parole.'' The primary @command{gawk} maintainer is no
+longer maintaining it. Fortunately, a volunteer from the development
+team has agreed to take it over.
-This feature is deprecated because its inclusion was a mistake. It has
+This feature is on parole because its inclusion was a mistake. It has
led to endless bug reports, misuse of the feature and public abuse of the
maintainer, for no real increased value.
+@ignore
If you use this feature, you should start working now to find a different
toolset with which to accomplish your goals.@footnote{Of course, you can
always continue to use a version of @command{gawk} that still supports
@@ -33082,6 +33093,15 @@ If the feature is very important to you, then consider
if you are willing
to volunteer to maintain it, so that it can continue to be included
in @command{gawk}. If that is the case, contact the maintainer to discuss it
with him. You may do so by submitting a bug report.
+@end ignore
+
+If the situation with support changes, the feature will be removed
+from @command{gawk}.
+
+If you use this feature, you should consider finding a different
+toolset with which to accomplish your goals.@footnote{Of course, you can
+always continue to use a version of @command{gawk} that still supports
+arbitrary precision arithmetic. It simply will be unmaintained.}
@node MPFR Intro
@subsection Arbitrary Precision Introduction
diff --git a/main.c b/main.c
index 80c69052..da8bf515 100644
--- a/main.c
+++ b/main.c
@@ -66,7 +66,9 @@ static void catchstackoverflow(int emergency,
stackoverflow_context_t scp);
#endif
static void nostalgia(void) ATTRIBUTE_NORETURN;
static void version(void) ATTRIBUTE_NORETURN;
+#if 0
static void deprecate_mpfr(void);
+#endif
static void init_fds(void);
static void init_groupset(void);
static void save_argv(int, char **);
@@ -1688,7 +1690,7 @@ parse_args(int argc, char **argv)
#else
warning(_("-M ignored: MPFR/GMP support not compiled
in"));
#endif
- deprecate_mpfr();
+ // deprecate_mpfr();
break;
case 'P':
@@ -1857,6 +1859,7 @@ set_current_namespace(const char *new_namespace)
current_namespace = new_namespace;
}
+#if 0
/* deprecate_mpfr --- print long info about MPFR being deprecated */
static void
@@ -1875,3 +1878,4 @@ deprecate_mpfr(void)
warning(_("Use `export GAWK_NO_MPFR_WARN=1' to disable this
warning."));
}
}
+#endif
-----------------------------------------------------------------------
Summary of changes:
ChangeLog | 6 +
NEWS | 12 +-
doc/ChangeLog | 5 +
doc/gawk.1 | 17 +-
doc/gawk.info | 1367 +++++++++++++++++++++++++++----------------------------
doc/gawk.texi | 40 +-
doc/gawktexi.in | 40 +-
main.c | 6 +-
8 files changed, 777 insertions(+), 716 deletions(-)
hooks/post-receive
--
gawk
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [SCM] gawk branch, master, updated. gawk-4.1.0-4746-g03f79dcb,
Arnold Robbins <=