aboutsummaryrefslogtreecommitdiffstats
path: root/doc/gawk.info
diff options
context:
space:
mode:
Diffstat (limited to 'doc/gawk.info')
-rw-r--r--doc/gawk.info880
1 files changed, 450 insertions, 430 deletions
diff --git a/doc/gawk.info b/doc/gawk.info
index 889a2a86..e0738357 100644
--- a/doc/gawk.info
+++ b/doc/gawk.info
@@ -11043,6 +11043,27 @@ they are not special:
after it has finished parsing the program; they are _not_
updated while the program runs.
+ 'PROCINFO["platform"]'
+ This element gives a string indicating the platform for which
+ 'gawk' was compiled. The value will be one of the following:
+
+ '"vms"'
+ OpenVMS or Vax/VMS.
+
+ '"djgpp"'
+ '"mingw"'
+ Microsoft Windows, using either DJGPP or MinGW,
+ respectively.
+
+ '"os2"'
+ OS/2.
+
+ '"os390"'
+ OS/390.
+
+ '"posix"'
+ GNU/Linux, Cygwin, Mac OS X, and legacy Unix systems.
+
'PROCINFO["pgrpid"]'
The process group ID of the current process.
@@ -11169,15 +11190,14 @@ they are not special:
test if an element in 'SYMTAB' is an array. Also, you may not use
the 'delete' statement with the 'SYMTAB' array.
- You may use an index for 'SYMTAB' that is not a predefined
- identifier:
+ Prior to version 5.0 of 'gawk', you could use an index for 'SYMTAB'
+ that was not a predefined identifier:
SYMTAB["xxx"] = 5
print SYMTAB["xxx"]
- This works as expected: in this case 'SYMTAB' acts just like a
- regular array. The only difference is that you can't then delete
- 'SYMTAB["xxx"]'.
+ This no longer works, instead producing a fatal error, as it led to
+ rampant confusion.
The 'SYMTAB' array is more interesting than it looks. Andrew
Schorr points out that it effectively gives 'awk' data pointers.
@@ -20774,7 +20794,8 @@ output. They are as follows:
structure of the program and the precedence rules. For example,
'(3 + 5) * 4' means add three and five, then multiply the total by
four. However, '3 + 5 * 4' has no parentheses, and means '3 + (5 *
- 4)'.
+ 4)'. However, explicit parentheses in the source program are
+ retained.
* Parentheses are used around the arguments to 'print' and 'printf'
only when the 'print' or 'printf' statement is followed by a
@@ -20796,10 +20817,11 @@ representation. Also, things such as:
come out as:
/foo/ {
- print $0
+ print
}
-which is correct, but possibly unexpected.
+which is correct, but possibly unexpected. (If a program uses both
+'print $0' and plain 'print', that distinction is retained.)
Besides creating profiles when a program has completed, 'gawk' can
produce a profile while it is running. This is useful if your 'awk'
@@ -20855,7 +20877,10 @@ without any execution counts.
profiling, and that created when pretty-printing. Pretty-printed output
preserves the original comments that were in the program, although their
placement may not correspond exactly to their original locations in the
-source code.(1)
+source code. However, no comments should be lost. Also, 'gawk' does
+the best it can to preserve the distinction between comments at the end
+of a statement and comments on lines by themselves. This isn't always
+perfect, though.
However, as a deliberate design decision, profiling output _omits_
the original program's comments. This allows you to focus on the
@@ -20875,14 +20900,6 @@ disable 'gawk''s default optimizations.
constants; if you used an octal or hexadecimal value in your source
code, it will appear that way in the output.
- ---------- Footnotes ----------
-
- (1) 'gawk' does the best it can to preserve the distinction between
-comments at the end of a statement and comments on lines by themselves.
-Due to implementation constraints, it does not always do so correctly,
-particularly for 'switch' statements. The 'gawk' maintainers hope to
-improve this in a subsequent release.
-

File: gawk.info, Node: Advanced Features Summary, Prev: Profiling, Up: Advanced Features
@@ -28418,6 +28435,11 @@ POSIX 'awk', in the order they were added to 'gawk'.
* Support for GNU/Linux on Alpha was removed.
+ Version 5.0 added the following features:
+
+ * The 'PROCINFO["platform"]' array element, which allows you to write
+ code that takes the operating system / platform into account.
+

File: gawk.info, Node: Common Extensions, Next: Ranges and Locales, Prev: Feature History, Up: Language History
@@ -29183,10 +29205,6 @@ command line when compiling 'gawk' from scratch, including:
possible to keep extensions for different API versions on the same
system without their conflicting with one another.
-'--with-whiny-user-strftime'
- Force use of the included version of the C 'strftime()' function
- for deficient systems.
-
Use the command './configure --help' to see the full list of options
supplied by 'configure'.
@@ -29352,6 +29370,12 @@ accomplished by using an appropriate '-v BINMODE=N' option on the
command line. 'BINMODE' is set at the time a file or pipe is opened and
cannot be changed midstream.
+ On POSIX-compatible systems, this variable's value has no effect.
+Thus, if you think your program will run on multiple different systems
+and that you may need to use 'BINMODE', you should simply set it (in the
+program or on the command line) unconditionally, and not worry about the
+operating system on which your program is running.
+
The name 'BINMODE' was chosen to match 'mawk' (*note Other
Versions::). 'mawk' and 'gawk' handle 'BINMODE' similarly; however,
'mawk' adds a '-W BINMODE=N' option and an environment variable that can
@@ -33108,8 +33132,6 @@ Index
* --traditional option, --posix option and: Options. (line 285)
* --use-lc-numeric option: Options. (line 232)
* --version option: Options. (line 317)
-* --with-whiny-user-strftime configuration option: Additional Configuration Options.
- (line 48)
* -b option: Options. (line 69)
* -c option: Options. (line 82)
* -C option: Options. (line 89)
@@ -33816,8 +33838,6 @@ Index
(line 37)
* configuration option, --enable-versioned-extension-dir: Additional Configuration Options.
(line 42)
-* configuration option, --with-whiny-user-strftime: Additional Configuration Options.
- (line 48)
* configuration options, gawk: Additional Configuration Options.
(line 6)
* constant regexps: Regexp Usage. (line 57)
@@ -33892,7 +33912,7 @@ Index
* dark corner, field separators: Full Line Fields. (line 22)
* dark corner, FILENAME variable: Getline Notes. (line 19)
* dark corner, FILENAME variable <1>: Auto-set. (line 108)
-* dark corner, FNR/NR variables: Auto-set. (line 389)
+* dark corner, FNR/NR variables: Auto-set. (line 409)
* dark corner, format-control characters: Control Letters. (line 33)
* dark corner, format-control characters <1>: Control Letters.
(line 108)
@@ -34128,7 +34148,7 @@ Index
(line 6)
* differences in awk and gawk, RS/RT variables: gawk split records.
(line 58)
-* differences in awk and gawk, RT variable: Auto-set. (line 327)
+* differences in awk and gawk, RT variable: Auto-set. (line 348)
* differences in awk and gawk, single-character fields: Single Character Fields.
(line 6)
* differences in awk and gawk, split() function: String Functions.
@@ -34137,7 +34157,7 @@ Index
* differences in awk and gawk, strings <1>: Scalar Constants. (line 53)
* differences in awk and gawk, strings, storing: gawk split records.
(line 76)
-* differences in awk and gawk, SYMTAB variable: Auto-set. (line 331)
+* differences in awk and gawk, SYMTAB variable: Auto-set. (line 352)
* differences in awk and gawk, TEXTDOMAIN variable: User-modified.
(line 155)
* differences in awk and gawk, trunc-mod operation: Arithmetic Ops.
@@ -34174,7 +34194,7 @@ Index
* dump debugger command: Miscellaneous Debugger Commands.
(line 9)
* dupword.awk program: Dupword Program. (line 31)
-* dynamic profiling: Profiling. (line 177)
+* dynamic profiling: Profiling. (line 179)
* dynamically loaded extensions: Dynamic Extensions. (line 6)
* e debugger command (alias for enable): Breakpoint Control. (line 73)
* EBCDIC: Ordinal Functions. (line 45)
@@ -34301,7 +34321,7 @@ Index
(line 6)
* extension API version: Extension Versioning.
(line 6)
-* extension API, version number: Auto-set. (line 266)
+* extension API, version number: Auto-set. (line 287)
* extension example: Extension Example. (line 6)
* extension registration: Registration Functions.
(line 6)
@@ -34460,7 +34480,7 @@ Index
(line 12)
* FNR variable: Records. (line 6)
* FNR variable <1>: Auto-set. (line 118)
-* FNR variable, changing: Auto-set. (line 389)
+* FNR variable, changing: Auto-set. (line 409)
* for statement: For Statement. (line 6)
* for statement, looping over arrays: Scanning an Array. (line 20)
* fork() extension function: Extension Sample Fork.
@@ -34563,8 +34583,8 @@ Index
* G., Daniel Richard: Acknowledgments. (line 60)
* G., Daniel Richard <1>: Maintainers. (line 14)
* Garfinkle, Scott: Contributors. (line 35)
-* gawk program, dynamic profiling: Profiling. (line 177)
-* gawk version: Auto-set. (line 241)
+* gawk program, dynamic profiling: Profiling. (line 179)
+* gawk version: Auto-set. (line 262)
* gawk, ARGIND variable in: Other Arguments. (line 15)
* gawk, awk and: Preface. (line 21)
* gawk, awk and <1>: This Manual. (line 14)
@@ -34640,13 +34660,13 @@ Index
* gawk, regular expressions, precedence: Regexp Operators. (line 161)
* gawk, RT variable in: awk split records. (line 131)
* gawk, RT variable in <1>: Multiple Line. (line 130)
-* gawk, RT variable in <2>: Auto-set. (line 327)
+* gawk, RT variable in <2>: Auto-set. (line 348)
* gawk, See Also awk: Preface. (line 34)
* gawk, source code, obtaining: Getting. (line 6)
* gawk, splitting fields and: Testing field creation.
(line 6)
* gawk, string-translation functions: I18N Functions. (line 6)
-* gawk, SYMTAB array in: Auto-set. (line 331)
+* gawk, SYMTAB array in: Auto-set. (line 352)
* gawk, TEXTDOMAIN variable in: User-modified. (line 155)
* gawk, timestamps: Time Functions. (line 6)
* gawk, uses for: Preface. (line 34)
@@ -34770,7 +34790,7 @@ Index
* 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 209)
+* HUP signal, for dynamic profiling: Profiling. (line 211)
* hyphen (-), - operator: Precedence. (line 51)
* hyphen (-), - operator <1>: Precedence. (line 57)
* hyphen (-), -- operator: Increment Ops. (line 48)
@@ -34852,7 +34872,7 @@ Index
* installing gawk: Installation. (line 6)
* instruction tracing, in debugger: Debugger Info. (line 90)
* int: Numeric Functions. (line 24)
-* INT signal (MS-Windows): Profiling. (line 212)
+* INT signal (MS-Windows): Profiling. (line 214)
* integer array indices: Numeric Array Subscripts.
(line 31)
* integers, arbitrary precision: Arbitrary Precision Integers.
@@ -34908,7 +34928,7 @@ Index
* Kernighan, Brian <8>: Other Versions. (line 13)
* Kernighan, Brian <9>: Basic Data Typing. (line 54)
* Kernighan, Brian <10>: Glossary. (line 204)
-* kill command, dynamic profiling: Profiling. (line 186)
+* kill command, dynamic profiling: Profiling. (line 188)
* Knights, jedi: Undocumented. (line 6)
* Kwok, Conrad: Contributors. (line 35)
* l debugger command (alias for list): Miscellaneous Debugger Commands.
@@ -35046,7 +35066,7 @@ Index
* mawk utility <2>: Concatenation. (line 36)
* mawk utility <3>: Nextfile Statement. (line 47)
* mawk utility <4>: Other Versions. (line 39)
-* maximum precision supported by MPFR library: Auto-set. (line 255)
+* maximum precision supported by MPFR library: Auto-set. (line 276)
* McIlroy, Doug: Glossary. (line 255)
* McPhee, Patrick: Contributors. (line 103)
* message object files: Explaining gettext. (line 42)
@@ -35059,7 +35079,7 @@ Index
* messages from extensions: Printing Messages. (line 6)
* metacharacters in regular expressions: Regexp Operators. (line 6)
* metacharacters, escape sequences for: Escape Sequences. (line 140)
-* minimum precision required by MPFR library: Auto-set. (line 258)
+* minimum precision required by MPFR library: Auto-set. (line 279)
* mktime: Time Functions. (line 25)
* modifiers, in format specifiers: Format Modifiers. (line 6)
* monetary information, localization: Explaining gettext. (line 104)
@@ -35118,7 +35138,7 @@ Index
* not Boolean-logic operator: Boolean Ops. (line 6)
* NR variable: Records. (line 6)
* NR variable <1>: Auto-set. (line 143)
-* NR variable, changing: Auto-set. (line 389)
+* NR variable, changing: Auto-set. (line 409)
* null strings: awk split records. (line 121)
* null strings <1>: Regexp Field Splitting.
(line 43)
@@ -35238,7 +35258,7 @@ Index
* p debugger command (alias for print): Viewing And Changing Data.
(line 35)
* Papadopoulos, Panos: Contributors. (line 131)
-* parent process ID of gawk process: Auto-set. (line 230)
+* parent process ID of gawk process: Auto-set. (line 251)
* parentheses (), in a profile: Profiling. (line 146)
* parentheses (), regexp operator: Regexp Operators. (line 81)
* password file: Passwd Functions. (line 16)
@@ -35271,6 +35291,7 @@ Index
* pipe, output: Redirection. (line 57)
* Pitts, Dave: Acknowledgments. (line 60)
* Pitts, Dave <1>: Maintainers. (line 14)
+* platform running on, PROCINFO["platform"]: Auto-set. (line 224)
* Plauger, P.J.: Library Functions. (line 12)
* plug-in: Extension Intro. (line 6)
* plus sign (+), + operator: Precedence. (line 51)
@@ -35407,8 +35428,8 @@ Index
* printing, unduplicated lines of text: Uniq Program. (line 6)
* printing, user information: Id Program. (line 6)
* private variables: Library Names. (line 11)
-* process group ID of gawk process: Auto-set. (line 224)
-* process ID of gawk process: Auto-set. (line 227)
+* process group ID of gawk process: Auto-set. (line 245)
+* process ID of gawk process: Auto-set. (line 248)
* processes, two-way communications with: Two-way I/O. (line 6)
* processing data: Basic High Level. (line 6)
* PROCINFO array: Auto-set. (line 148)
@@ -35422,7 +35443,7 @@ Index
* PROCINFO, values of sorted_in: Controlling Scanning.
(line 26)
* profiling awk programs: Profiling. (line 6)
-* profiling awk programs, dynamically: Profiling. (line 177)
+* profiling awk programs, dynamically: Profiling. (line 179)
* program identifiers: Auto-set. (line 193)
* program, definition of: Getting Started. (line 21)
* programming conventions, --non-decimal-data option: Nondecimal Data.
@@ -35459,7 +35480,7 @@ Index
* QuikTrim Awk: Other Versions. (line 143)
* quit debugger command: Miscellaneous Debugger Commands.
(line 100)
-* QUIT signal (MS-Windows): Profiling. (line 212)
+* QUIT signal (MS-Windows): Profiling. (line 214)
* quoting in gawk command lines: Long. (line 26)
* quoting in gawk command lines, tricks for: Quoting. (line 91)
* quoting, for small awk programs: Comments. (line 27)
@@ -35585,7 +35606,7 @@ Index
* right shift: Bitwise Functions. (line 54)
* right shift, bitwise: Bitwise Functions. (line 32)
* Ritchie, Dennis: Basic Data Typing. (line 54)
-* RLENGTH variable: Auto-set. (line 314)
+* RLENGTH variable: Auto-set. (line 335)
* RLENGTH variable, match() function and: String Functions. (line 228)
* Robbins, Arnold: Command Line Field Separator.
(line 71)
@@ -35613,11 +35634,11 @@ Index
* RS variable <1>: User-modified. (line 136)
* RS variable, multiline records and: Multiple Line. (line 17)
* rshift: Bitwise Functions. (line 54)
-* RSTART variable: Auto-set. (line 320)
+* RSTART variable: Auto-set. (line 341)
* RSTART variable, match() function and: String Functions. (line 228)
* RT variable: awk split records. (line 131)
* RT variable <1>: Multiple Line. (line 130)
-* RT variable <2>: Auto-set. (line 327)
+* RT variable <2>: Auto-set. (line 348)
* Rubin, Paul: History. (line 30)
* Rubin, Paul <1>: Contributors. (line 16)
* rule, definition of: Getting Started. (line 21)
@@ -35635,7 +35656,7 @@ Index
* scanning arrays: Scanning an Array. (line 6)
* scanning multidimensional arrays: Multiscanning. (line 11)
* Schorr, Andrew: Acknowledgments. (line 60)
-* Schorr, Andrew <1>: Auto-set. (line 359)
+* Schorr, Andrew <1>: Auto-set. (line 379)
* Schorr, Andrew <2>: Contributors. (line 136)
* Schreiber, Bert: Acknowledgments. (line 38)
* Schreiber, Rita: Acknowledgments. (line 38)
@@ -35721,7 +35742,7 @@ Index
* sidebar, Beware The Smoke and Mirrors!: Bitwise Functions. (line 127)
* sidebar, Changing FS Does Not Affect the Fields: Full Line Fields.
(line 14)
-* sidebar, Changing NR and FNR: Auto-set. (line 387)
+* sidebar, Changing NR and FNR: Auto-set. (line 407)
* sidebar, Controlling Output Buffering with system(): I/O Functions.
(line 166)
* sidebar, Escape Sequences for Metacharacters: Escape Sequences.
@@ -35749,15 +35770,15 @@ Index
(line 130)
* sidebar, Using \n in Bracket Expressions of Dynamic Regexps: Computed Regexps.
(line 58)
-* SIGHUP signal, for dynamic profiling: Profiling. (line 209)
-* SIGINT signal (MS-Windows): Profiling. (line 212)
-* signals, HUP/SIGHUP, for profiling: Profiling. (line 209)
-* signals, INT/SIGINT (MS-Windows): Profiling. (line 212)
-* signals, QUIT/SIGQUIT (MS-Windows): Profiling. (line 212)
-* signals, USR1/SIGUSR1, for profiling: Profiling. (line 186)
+* SIGHUP signal, for dynamic profiling: Profiling. (line 211)
+* SIGINT signal (MS-Windows): Profiling. (line 214)
+* signals, HUP/SIGHUP, for profiling: Profiling. (line 211)
+* signals, INT/SIGINT (MS-Windows): Profiling. (line 214)
+* signals, QUIT/SIGQUIT (MS-Windows): Profiling. (line 214)
+* signals, USR1/SIGUSR1, for profiling: Profiling. (line 188)
* signature program: Signature Program. (line 6)
-* SIGQUIT signal (MS-Windows): Profiling. (line 212)
-* SIGUSR1 signal, for dynamic profiling: Profiling. (line 186)
+* SIGQUIT signal (MS-Windows): Profiling. (line 214)
+* SIGUSR1 signal, for dynamic profiling: Profiling. (line 188)
* silent debugger command: Debugger Execution Control.
(line 10)
* sin: Numeric Functions. (line 75)
@@ -35889,9 +35910,9 @@ Index
* substr: String Functions. (line 487)
* substring: String Functions. (line 487)
* Sumner, Andrew: Other Versions. (line 64)
-* supplementary groups of gawk process: Auto-set. (line 271)
+* supplementary groups of gawk process: Auto-set. (line 292)
* switch statement: Switch Statement. (line 6)
-* SYMTAB array: Auto-set. (line 331)
+* SYMTAB array: Auto-set. (line 352)
* syntactic ambiguity: /= operator vs. /=.../ regexp constant: Assignment Ops.
(line 149)
* system: I/O Functions. (line 106)
@@ -36038,7 +36059,7 @@ Index
* user-modifiable variables: User-modified. (line 6)
* users, information about, printing: Id Program. (line 6)
* users, information about, retrieving: Passwd Functions. (line 16)
-* USR1 signal, for dynamic profiling: Profiling. (line 186)
+* USR1 signal, for dynamic profiling: Profiling. (line 188)
* values, numeric: Basic Data Typing. (line 13)
* values, string: Basic Data Typing. (line 13)
* variable assignments and input files: Other Arguments. (line 26)
@@ -36073,10 +36094,10 @@ Index
* variables, uninitialized, as array subscripts: Uninitialized Subscripts.
(line 6)
* variables, user-defined: Variables. (line 6)
-* version of gawk: Auto-set. (line 241)
-* version of gawk extension API: Auto-set. (line 266)
-* version of GNU MP library: Auto-set. (line 249)
-* version of GNU MPFR library: Auto-set. (line 251)
+* version of gawk: Auto-set. (line 262)
+* version of gawk extension API: Auto-set. (line 287)
+* version of GNU MP library: Auto-set. (line 270)
+* version of GNU MPFR library: Auto-set. (line 272)
* vertical bar (|): Regexp Operators. (line 70)
* vertical bar (|), | operator (I/O): Getline/Pipe. (line 10)
* vertical bar (|), | operator (I/O) <1>: Precedence. (line 64)
@@ -36355,369 +36376,368 @@ Node: Exit Statement454653
Node: Built-in Variables457056
Node: User-modified458189
Node: Auto-set465956
-Ref: Auto-set-Footnote-1482258
-Ref: Auto-set-Footnote-2482464
-Node: ARGC and ARGV482520
-Node: Pattern Action Summary486733
-Node: Arrays489163
-Node: Array Basics490492
-Node: Array Intro491336
-Ref: figure-array-elements493311
-Ref: Array Intro-Footnote-1496015
-Node: Reference to Elements496143
-Node: Assigning Elements498607
-Node: Array Example499098
-Node: Scanning an Array500857
-Node: Controlling Scanning503879
-Ref: Controlling Scanning-Footnote-1509278
-Node: Numeric Array Subscripts509594
-Node: Uninitialized Subscripts511778
-Node: Delete513397
-Ref: Delete-Footnote-1516149
-Node: Multidimensional516206
-Node: Multiscanning519301
-Node: Arrays of Arrays520892
-Node: Arrays Summary525660
-Node: Functions527753
-Node: Built-in528791
-Node: Calling Built-in529872
-Node: Numeric Functions531868
-Ref: Numeric Functions-Footnote-1535896
-Ref: Numeric Functions-Footnote-2536253
-Ref: Numeric Functions-Footnote-3536301
-Node: String Functions536573
-Ref: String Functions-Footnote-1560431
-Ref: String Functions-Footnote-2560559
-Ref: String Functions-Footnote-3560807
-Node: Gory Details560894
-Ref: table-sub-escapes562685
-Ref: table-sub-proposed564204
-Ref: table-posix-sub565567
-Ref: table-gensub-escapes567108
-Ref: Gory Details-Footnote-1567931
-Node: I/O Functions568085
-Ref: table-system-return-values574553
-Ref: I/O Functions-Footnote-1576633
-Ref: I/O Functions-Footnote-2576781
-Node: Time Functions576901
-Ref: Time Functions-Footnote-1587572
-Ref: Time Functions-Footnote-2587640
-Ref: Time Functions-Footnote-3587798
-Ref: Time Functions-Footnote-4587909
-Ref: Time Functions-Footnote-5588021
-Ref: Time Functions-Footnote-6588248
-Node: Bitwise Functions588514
-Ref: table-bitwise-ops589108
-Ref: Bitwise Functions-Footnote-1595171
-Ref: Bitwise Functions-Footnote-2595344
-Node: Type Functions595535
-Node: I18N Functions598286
-Node: User-defined599937
-Node: Definition Syntax600742
-Ref: Definition Syntax-Footnote-1606429
-Node: Function Example606500
-Ref: Function Example-Footnote-1609422
-Node: Function Caveats609444
-Node: Calling A Function609962
-Node: Variable Scope610920
-Node: Pass By Value/Reference613914
-Node: Return Statement617413
-Node: Dynamic Typing620392
-Node: Indirect Calls621322
-Ref: Indirect Calls-Footnote-1631574
-Node: Functions Summary631702
-Node: Library Functions634407
-Ref: Library Functions-Footnote-1638014
-Ref: Library Functions-Footnote-2638157
-Node: Library Names638328
-Ref: Library Names-Footnote-1641788
-Ref: Library Names-Footnote-2642011
-Node: General Functions642097
-Node: Strtonum Function643200
-Node: Assert Function646222
-Node: Round Function649548
-Node: Cliff Random Function651088
-Node: Ordinal Functions652104
-Ref: Ordinal Functions-Footnote-1655167
-Ref: Ordinal Functions-Footnote-2655419
-Node: Join Function655629
-Ref: Join Function-Footnote-1657399
-Node: Getlocaltime Function657599
-Node: Readfile Function661341
-Node: Shell Quoting663318
-Node: Data File Management664719
-Node: Filetrans Function665351
-Node: Rewind Function669447
-Node: File Checking671357
-Ref: File Checking-Footnote-1672691
-Node: Empty Files672892
-Node: Ignoring Assigns674871
-Node: Getopt Function676421
-Ref: Getopt Function-Footnote-1687890
-Node: Passwd Functions688090
-Ref: Passwd Functions-Footnote-1696929
-Node: Group Functions697017
-Ref: Group Functions-Footnote-1704915
-Node: Walking Arrays705122
-Node: Library Functions Summary708130
-Node: Library Exercises709536
-Node: Sample Programs710001
-Node: Running Examples710771
-Node: Clones711499
-Node: Cut Program712723
-Node: Egrep Program722652
-Ref: Egrep Program-Footnote-1730164
-Node: Id Program730274
-Node: Split Program733954
-Ref: Split Program-Footnote-1737412
-Node: Tee Program737541
-Node: Uniq Program740331
-Node: Wc Program747757
-Ref: Wc Program-Footnote-1752012
-Node: Miscellaneous Programs752106
-Node: Dupword Program753319
-Node: Alarm Program755349
-Node: Translate Program760204
-Ref: Translate Program-Footnote-1764769
-Node: Labels Program765039
-Ref: Labels Program-Footnote-1768390
-Node: Word Sorting768474
-Node: History Sorting772546
-Node: Extract Program774381
-Node: Simple Sed782435
-Node: Igawk Program785509
-Ref: Igawk Program-Footnote-1799840
-Ref: Igawk Program-Footnote-2800042
-Ref: Igawk Program-Footnote-3800164
-Node: Anagram Program800279
-Node: Signature Program803341
-Node: Programs Summary804588
-Node: Programs Exercises805802
-Ref: Programs Exercises-Footnote-1809931
-Node: Advanced Features810022
-Node: Nondecimal Data812012
-Node: Array Sorting813603
-Node: Controlling Array Traversal814303
-Ref: Controlling Array Traversal-Footnote-1822671
-Node: Array Sorting Functions822789
-Ref: Array Sorting Functions-Footnote-1827880
-Node: Two-way I/O828076
-Ref: Two-way I/O-Footnote-1835796
-Ref: Two-way I/O-Footnote-2835983
-Node: TCP/IP Networking836065
-Node: Profiling839183
-Ref: Profiling-Footnote-1847855
-Node: Advanced Features Summary848178
-Node: Internationalization850022
-Node: I18N and L10N851502
-Node: Explaining gettext852189
-Ref: Explaining gettext-Footnote-1858081
-Ref: Explaining gettext-Footnote-2858266
-Node: Programmer i18n858431
-Ref: Programmer i18n-Footnote-1863380
-Node: Translator i18n863429
-Node: String Extraction864223
-Ref: String Extraction-Footnote-1865355
-Node: Printf Ordering865441
-Ref: Printf Ordering-Footnote-1868227
-Node: I18N Portability868291
-Ref: I18N Portability-Footnote-1870747
-Node: I18N Example870810
-Ref: I18N Example-Footnote-1873616
-Node: Gawk I18N873689
-Node: I18N Summary874334
-Node: Debugger875675
-Node: Debugging876698
-Node: Debugging Concepts877139
-Node: Debugging Terms878948
-Node: Awk Debugging881523
-Node: Sample Debugging Session882429
-Node: Debugger Invocation882963
-Node: Finding The Bug884349
-Node: List of Debugger Commands890827
-Node: Breakpoint Control892160
-Node: Debugger Execution Control895854
-Node: Viewing And Changing Data899216
-Node: Execution Stack902590
-Node: Debugger Info904227
-Node: Miscellaneous Debugger Commands908298
-Node: Readline Support913360
-Node: Limitations914256
-Node: Debugging Summary916365
-Node: Arbitrary Precision Arithmetic917644
-Node: Computer Arithmetic919129
-Ref: table-numeric-ranges922895
-Ref: table-floating-point-ranges923388
-Ref: Computer Arithmetic-Footnote-1924046
-Node: Math Definitions924103
-Ref: table-ieee-formats927419
-Ref: Math Definitions-Footnote-1928022
-Node: MPFR features928127
-Node: FP Math Caution929845
-Ref: FP Math Caution-Footnote-1930917
-Node: Inexactness of computations931286
-Node: Inexact representation932246
-Node: Comparing FP Values933606
-Node: Errors accumulate934847
-Node: Getting Accuracy936280
-Node: Try To Round938990
-Node: Setting precision939889
-Ref: table-predefined-precision-strings940586
-Node: Setting the rounding mode942416
-Ref: table-gawk-rounding-modes942790
-Ref: Setting the rounding mode-Footnote-1946721
-Node: Arbitrary Precision Integers946900
-Ref: Arbitrary Precision Integers-Footnote-1950075
-Node: Checking for MPFR950224
-Node: POSIX Floating Point Problems951698
-Ref: POSIX Floating Point Problems-Footnote-1955983
-Node: Floating point summary956021
-Node: Dynamic Extensions958211
-Node: Extension Intro959764
-Node: Plugin License961030
-Node: Extension Mechanism Outline961827
-Ref: figure-load-extension962266
-Ref: figure-register-new-function963831
-Ref: figure-call-new-function964923
-Node: Extension API Description966985
-Node: Extension API Functions Introduction968627
-Node: General Data Types974167
-Ref: General Data Types-Footnote-1982528
-Node: Memory Allocation Functions982827
-Ref: Memory Allocation Functions-Footnote-1987037
-Node: Constructor Functions987136
-Node: Registration Functions990722
-Node: Extension Functions991407
-Node: Exit Callback Functions996622
-Node: Extension Version String997872
-Node: Input Parsers998535
-Node: Output Wrappers1011256
-Node: Two-way processors1015768
-Node: Printing Messages1018033
-Ref: Printing Messages-Footnote-11019204
-Node: Updating ERRNO1019357
-Node: Requesting Values1020096
-Ref: table-value-types-returned1020833
-Node: Accessing Parameters1021769
-Node: Symbol Table Access1023004
-Node: Symbol table by name1023516
-Node: Symbol table by cookie1025305
-Ref: Symbol table by cookie-Footnote-11029490
-Node: Cached values1029554
-Ref: Cached values-Footnote-11033090
-Node: Array Manipulation1033243
-Ref: Array Manipulation-Footnote-11034334
-Node: Array Data Types1034371
-Ref: Array Data Types-Footnote-11037029
-Node: Array Functions1037121
-Node: Flattening Arrays1041619
-Node: Creating Arrays1048595
-Node: Redirection API1053362
-Node: Extension API Variables1056195
-Node: Extension Versioning1056906
-Ref: gawk-api-version1057335
-Node: Extension GMP/MPFR Versioning1059066
-Node: Extension API Informational Variables1060694
-Node: Extension API Boilerplate1061767
-Node: Changes from API V11065741
-Node: Finding Extensions1067313
-Node: Extension Example1067872
-Node: Internal File Description1068670
-Node: Internal File Ops1072750
-Ref: Internal File Ops-Footnote-11084100
-Node: Using Internal File Ops1084240
-Ref: Using Internal File Ops-Footnote-11086623
-Node: Extension Samples1086897
-Node: Extension Sample File Functions1088426
-Node: Extension Sample Fnmatch1096075
-Node: Extension Sample Fork1097562
-Node: Extension Sample Inplace1098780
-Node: Extension Sample Ord1101997
-Node: Extension Sample Readdir1102833
-Ref: table-readdir-file-types1103722
-Node: Extension Sample Revout1104527
-Node: Extension Sample Rev2way1105116
-Node: Extension Sample Read write array1105856
-Node: Extension Sample Readfile1107798
-Node: Extension Sample Time1108893
-Node: Extension Sample API Tests1110241
-Node: gawkextlib1110733
-Node: Extension summary1113651
-Node: Extension Exercises1117353
-Node: Language History1118851
-Node: V7/SVR3.11120507
-Node: SVR41122659
-Node: POSIX1124093
-Node: BTL1125473
-Node: POSIX/GNU1126202
-Node: Feature History1131980
-Node: Common Extensions1147839
-Node: Ranges and Locales1149122
-Ref: Ranges and Locales-Footnote-11153738
-Ref: Ranges and Locales-Footnote-21153765
-Ref: Ranges and Locales-Footnote-31154000
-Node: Contributors1154221
-Node: History summary1160166
-Node: Installation1161546
-Node: Gawk Distribution1162490
-Node: Getting1162974
-Node: Extracting1163937
-Node: Distribution contents1165575
-Node: Unix Installation1172055
-Node: Quick Installation1172737
-Node: Shell Startup Files1175151
-Node: Additional Configuration Options1176240
-Node: Configuration Philosophy1178533
-Node: Non-Unix Installation1180902
-Node: PC Installation1181362
-Node: PC Binary Installation1182200
-Node: PC Compiling1182635
-Node: PC Using1183752
-Node: Cygwin1186967
-Node: MSYS1188066
-Node: VMS Installation1188567
-Node: VMS Compilation1189358
-Ref: VMS Compilation-Footnote-11190587
-Node: VMS Dynamic Extensions1190645
-Node: VMS Installation Details1192330
-Node: VMS Running1194583
-Node: VMS GNV1198862
-Node: VMS Old Gawk1199597
-Node: Bugs1200068
-Node: Bug address1200731
-Node: Usenet1203713
-Node: Maintainers1204717
-Node: Other Versions1205978
-Node: Installation summary1212892
-Node: Notes1214094
-Node: Compatibility Mode1214888
-Node: Additions1215670
-Node: Accessing The Source1216595
-Node: Adding Code1218032
-Node: New Ports1224251
-Node: Derived Files1228739
-Ref: Derived Files-Footnote-11234385
-Ref: Derived Files-Footnote-21234420
-Ref: Derived Files-Footnote-31235018
-Node: Future Extensions1235132
-Node: Implementation Limitations1235790
-Node: Extension Design1236973
-Node: Old Extension Problems1238117
-Ref: Old Extension Problems-Footnote-11239635
-Node: Extension New Mechanism Goals1239692
-Ref: Extension New Mechanism Goals-Footnote-11243056
-Node: Extension Other Design Decisions1243245
-Node: Extension Future Growth1245358
-Node: Notes summary1246194
-Node: Basic Concepts1247369
-Node: Basic High Level1248050
-Ref: figure-general-flow1248332
-Ref: figure-process-flow1249017
-Ref: Basic High Level-Footnote-11252318
-Node: Basic Data Typing1252503
-Node: Glossary1255831
-Node: Copying1287669
-Node: GNU Free Documentation License1325212
-Node: Index1350332
+Ref: Auto-set-Footnote-1482763
+Ref: Auto-set-Footnote-2482969
+Node: ARGC and ARGV483025
+Node: Pattern Action Summary487238
+Node: Arrays489668
+Node: Array Basics490997
+Node: Array Intro491841
+Ref: figure-array-elements493816
+Ref: Array Intro-Footnote-1496520
+Node: Reference to Elements496648
+Node: Assigning Elements499112
+Node: Array Example499603
+Node: Scanning an Array501362
+Node: Controlling Scanning504384
+Ref: Controlling Scanning-Footnote-1509783
+Node: Numeric Array Subscripts510099
+Node: Uninitialized Subscripts512283
+Node: Delete513902
+Ref: Delete-Footnote-1516654
+Node: Multidimensional516711
+Node: Multiscanning519806
+Node: Arrays of Arrays521397
+Node: Arrays Summary526165
+Node: Functions528258
+Node: Built-in529296
+Node: Calling Built-in530377
+Node: Numeric Functions532373
+Ref: Numeric Functions-Footnote-1536401
+Ref: Numeric Functions-Footnote-2536758
+Ref: Numeric Functions-Footnote-3536806
+Node: String Functions537078
+Ref: String Functions-Footnote-1560936
+Ref: String Functions-Footnote-2561064
+Ref: String Functions-Footnote-3561312
+Node: Gory Details561399
+Ref: table-sub-escapes563190
+Ref: table-sub-proposed564709
+Ref: table-posix-sub566072
+Ref: table-gensub-escapes567613
+Ref: Gory Details-Footnote-1568436
+Node: I/O Functions568590
+Ref: table-system-return-values575058
+Ref: I/O Functions-Footnote-1577138
+Ref: I/O Functions-Footnote-2577286
+Node: Time Functions577406
+Ref: Time Functions-Footnote-1588077
+Ref: Time Functions-Footnote-2588145
+Ref: Time Functions-Footnote-3588303
+Ref: Time Functions-Footnote-4588414
+Ref: Time Functions-Footnote-5588526
+Ref: Time Functions-Footnote-6588753
+Node: Bitwise Functions589019
+Ref: table-bitwise-ops589613
+Ref: Bitwise Functions-Footnote-1595676
+Ref: Bitwise Functions-Footnote-2595849
+Node: Type Functions596040
+Node: I18N Functions598791
+Node: User-defined600442
+Node: Definition Syntax601247
+Ref: Definition Syntax-Footnote-1606934
+Node: Function Example607005
+Ref: Function Example-Footnote-1609927
+Node: Function Caveats609949
+Node: Calling A Function610467
+Node: Variable Scope611425
+Node: Pass By Value/Reference614419
+Node: Return Statement617918
+Node: Dynamic Typing620897
+Node: Indirect Calls621827
+Ref: Indirect Calls-Footnote-1632079
+Node: Functions Summary632207
+Node: Library Functions634912
+Ref: Library Functions-Footnote-1638519
+Ref: Library Functions-Footnote-2638662
+Node: Library Names638833
+Ref: Library Names-Footnote-1642293
+Ref: Library Names-Footnote-2642516
+Node: General Functions642602
+Node: Strtonum Function643705
+Node: Assert Function646727
+Node: Round Function650053
+Node: Cliff Random Function651593
+Node: Ordinal Functions652609
+Ref: Ordinal Functions-Footnote-1655672
+Ref: Ordinal Functions-Footnote-2655924
+Node: Join Function656134
+Ref: Join Function-Footnote-1657904
+Node: Getlocaltime Function658104
+Node: Readfile Function661846
+Node: Shell Quoting663823
+Node: Data File Management665224
+Node: Filetrans Function665856
+Node: Rewind Function669952
+Node: File Checking671862
+Ref: File Checking-Footnote-1673196
+Node: Empty Files673397
+Node: Ignoring Assigns675376
+Node: Getopt Function676926
+Ref: Getopt Function-Footnote-1688395
+Node: Passwd Functions688595
+Ref: Passwd Functions-Footnote-1697434
+Node: Group Functions697522
+Ref: Group Functions-Footnote-1705420
+Node: Walking Arrays705627
+Node: Library Functions Summary708635
+Node: Library Exercises710041
+Node: Sample Programs710506
+Node: Running Examples711276
+Node: Clones712004
+Node: Cut Program713228
+Node: Egrep Program723157
+Ref: Egrep Program-Footnote-1730669
+Node: Id Program730779
+Node: Split Program734459
+Ref: Split Program-Footnote-1737917
+Node: Tee Program738046
+Node: Uniq Program740836
+Node: Wc Program748262
+Ref: Wc Program-Footnote-1752517
+Node: Miscellaneous Programs752611
+Node: Dupword Program753824
+Node: Alarm Program755854
+Node: Translate Program760709
+Ref: Translate Program-Footnote-1765274
+Node: Labels Program765544
+Ref: Labels Program-Footnote-1768895
+Node: Word Sorting768979
+Node: History Sorting773051
+Node: Extract Program774886
+Node: Simple Sed782940
+Node: Igawk Program786014
+Ref: Igawk Program-Footnote-1800345
+Ref: Igawk Program-Footnote-2800547
+Ref: Igawk Program-Footnote-3800669
+Node: Anagram Program800784
+Node: Signature Program803846
+Node: Programs Summary805093
+Node: Programs Exercises806307
+Ref: Programs Exercises-Footnote-1810436
+Node: Advanced Features810527
+Node: Nondecimal Data812517
+Node: Array Sorting814108
+Node: Controlling Array Traversal814808
+Ref: Controlling Array Traversal-Footnote-1823176
+Node: Array Sorting Functions823294
+Ref: Array Sorting Functions-Footnote-1828385
+Node: Two-way I/O828581
+Ref: Two-way I/O-Footnote-1836301
+Ref: Two-way I/O-Footnote-2836488
+Node: TCP/IP Networking836570
+Node: Profiling839688
+Node: Advanced Features Summary848693
+Node: Internationalization850537
+Node: I18N and L10N852017
+Node: Explaining gettext852704
+Ref: Explaining gettext-Footnote-1858596
+Ref: Explaining gettext-Footnote-2858781
+Node: Programmer i18n858946
+Ref: Programmer i18n-Footnote-1863895
+Node: Translator i18n863944
+Node: String Extraction864738
+Ref: String Extraction-Footnote-1865870
+Node: Printf Ordering865956
+Ref: Printf Ordering-Footnote-1868742
+Node: I18N Portability868806
+Ref: I18N Portability-Footnote-1871262
+Node: I18N Example871325
+Ref: I18N Example-Footnote-1874131
+Node: Gawk I18N874204
+Node: I18N Summary874849
+Node: Debugger876190
+Node: Debugging877213
+Node: Debugging Concepts877654
+Node: Debugging Terms879463
+Node: Awk Debugging882038
+Node: Sample Debugging Session882944
+Node: Debugger Invocation883478
+Node: Finding The Bug884864
+Node: List of Debugger Commands891342
+Node: Breakpoint Control892675
+Node: Debugger Execution Control896369
+Node: Viewing And Changing Data899731
+Node: Execution Stack903105
+Node: Debugger Info904742
+Node: Miscellaneous Debugger Commands908813
+Node: Readline Support913875
+Node: Limitations914771
+Node: Debugging Summary916880
+Node: Arbitrary Precision Arithmetic918159
+Node: Computer Arithmetic919644
+Ref: table-numeric-ranges923410
+Ref: table-floating-point-ranges923903
+Ref: Computer Arithmetic-Footnote-1924561
+Node: Math Definitions924618
+Ref: table-ieee-formats927934
+Ref: Math Definitions-Footnote-1928537
+Node: MPFR features928642
+Node: FP Math Caution930360
+Ref: FP Math Caution-Footnote-1931432
+Node: Inexactness of computations931801
+Node: Inexact representation932761
+Node: Comparing FP Values934121
+Node: Errors accumulate935362
+Node: Getting Accuracy936795
+Node: Try To Round939505
+Node: Setting precision940404
+Ref: table-predefined-precision-strings941101
+Node: Setting the rounding mode942931
+Ref: table-gawk-rounding-modes943305
+Ref: Setting the rounding mode-Footnote-1947236
+Node: Arbitrary Precision Integers947415
+Ref: Arbitrary Precision Integers-Footnote-1950590
+Node: Checking for MPFR950739
+Node: POSIX Floating Point Problems952213
+Ref: POSIX Floating Point Problems-Footnote-1956498
+Node: Floating point summary956536
+Node: Dynamic Extensions958726
+Node: Extension Intro960279
+Node: Plugin License961545
+Node: Extension Mechanism Outline962342
+Ref: figure-load-extension962781
+Ref: figure-register-new-function964346
+Ref: figure-call-new-function965438
+Node: Extension API Description967500
+Node: Extension API Functions Introduction969142
+Node: General Data Types974682
+Ref: General Data Types-Footnote-1983043
+Node: Memory Allocation Functions983342
+Ref: Memory Allocation Functions-Footnote-1987552
+Node: Constructor Functions987651
+Node: Registration Functions991237
+Node: Extension Functions991922
+Node: Exit Callback Functions997137
+Node: Extension Version String998387
+Node: Input Parsers999050
+Node: Output Wrappers1011771
+Node: Two-way processors1016283
+Node: Printing Messages1018548
+Ref: Printing Messages-Footnote-11019719
+Node: Updating ERRNO1019872
+Node: Requesting Values1020611
+Ref: table-value-types-returned1021348
+Node: Accessing Parameters1022284
+Node: Symbol Table Access1023519
+Node: Symbol table by name1024031
+Node: Symbol table by cookie1025820
+Ref: Symbol table by cookie-Footnote-11030005
+Node: Cached values1030069
+Ref: Cached values-Footnote-11033605
+Node: Array Manipulation1033758
+Ref: Array Manipulation-Footnote-11034849
+Node: Array Data Types1034886
+Ref: Array Data Types-Footnote-11037544
+Node: Array Functions1037636
+Node: Flattening Arrays1042134
+Node: Creating Arrays1049110
+Node: Redirection API1053877
+Node: Extension API Variables1056710
+Node: Extension Versioning1057421
+Ref: gawk-api-version1057850
+Node: Extension GMP/MPFR Versioning1059581
+Node: Extension API Informational Variables1061209
+Node: Extension API Boilerplate1062282
+Node: Changes from API V11066256
+Node: Finding Extensions1067828
+Node: Extension Example1068387
+Node: Internal File Description1069185
+Node: Internal File Ops1073265
+Ref: Internal File Ops-Footnote-11084615
+Node: Using Internal File Ops1084755
+Ref: Using Internal File Ops-Footnote-11087138
+Node: Extension Samples1087412
+Node: Extension Sample File Functions1088941
+Node: Extension Sample Fnmatch1096590
+Node: Extension Sample Fork1098077
+Node: Extension Sample Inplace1099295
+Node: Extension Sample Ord1102512
+Node: Extension Sample Readdir1103348
+Ref: table-readdir-file-types1104237
+Node: Extension Sample Revout1105042
+Node: Extension Sample Rev2way1105631
+Node: Extension Sample Read write array1106371
+Node: Extension Sample Readfile1108313
+Node: Extension Sample Time1109408
+Node: Extension Sample API Tests1110756
+Node: gawkextlib1111248
+Node: Extension summary1114166
+Node: Extension Exercises1117868
+Node: Language History1119366
+Node: V7/SVR3.11121022
+Node: SVR41123174
+Node: POSIX1124608
+Node: BTL1125988
+Node: POSIX/GNU1126717
+Node: Feature History1132495
+Node: Common Extensions1148541
+Node: Ranges and Locales1149824
+Ref: Ranges and Locales-Footnote-11154440
+Ref: Ranges and Locales-Footnote-21154467
+Ref: Ranges and Locales-Footnote-31154702
+Node: Contributors1154923
+Node: History summary1160868
+Node: Installation1162248
+Node: Gawk Distribution1163192
+Node: Getting1163676
+Node: Extracting1164639
+Node: Distribution contents1166277
+Node: Unix Installation1172757
+Node: Quick Installation1173439
+Node: Shell Startup Files1175853
+Node: Additional Configuration Options1176942
+Node: Configuration Philosophy1179107
+Node: Non-Unix Installation1181476
+Node: PC Installation1181936
+Node: PC Binary Installation1182774
+Node: PC Compiling1183209
+Node: PC Using1184326
+Node: Cygwin1187879
+Node: MSYS1188978
+Node: VMS Installation1189479
+Node: VMS Compilation1190270
+Ref: VMS Compilation-Footnote-11191499
+Node: VMS Dynamic Extensions1191557
+Node: VMS Installation Details1193242
+Node: VMS Running1195495
+Node: VMS GNV1199774
+Node: VMS Old Gawk1200509
+Node: Bugs1200980
+Node: Bug address1201643
+Node: Usenet1204625
+Node: Maintainers1205629
+Node: Other Versions1206890
+Node: Installation summary1213804
+Node: Notes1215006
+Node: Compatibility Mode1215800
+Node: Additions1216582
+Node: Accessing The Source1217507
+Node: Adding Code1218944
+Node: New Ports1225163
+Node: Derived Files1229651
+Ref: Derived Files-Footnote-11235297
+Ref: Derived Files-Footnote-21235332
+Ref: Derived Files-Footnote-31235930
+Node: Future Extensions1236044
+Node: Implementation Limitations1236702
+Node: Extension Design1237885
+Node: Old Extension Problems1239029
+Ref: Old Extension Problems-Footnote-11240547
+Node: Extension New Mechanism Goals1240604
+Ref: Extension New Mechanism Goals-Footnote-11243968
+Node: Extension Other Design Decisions1244157
+Node: Extension Future Growth1246270
+Node: Notes summary1247106
+Node: Basic Concepts1248281
+Node: Basic High Level1248962
+Ref: figure-general-flow1249244
+Ref: figure-process-flow1249929
+Ref: Basic High Level-Footnote-11253230
+Node: Basic Data Typing1253415
+Node: Glossary1256743
+Node: Copying1288581
+Node: GNU Free Documentation License1326124
+Node: Index1351244

End Tag Table