aboutsummaryrefslogtreecommitdiffstats
path: root/doc/gawk.info
diff options
context:
space:
mode:
Diffstat (limited to 'doc/gawk.info')
-rw-r--r--doc/gawk.info882
1 files changed, 451 insertions, 431 deletions
diff --git a/doc/gawk.info b/doc/gawk.info
index 9fba2e1f..b8f5df60 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
@@ -28422,6 +28439,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
@@ -29187,10 +29209,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'.
@@ -29356,6 +29374,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
@@ -33112,8 +33136,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)
@@ -33821,8 +33843,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)
@@ -33897,7 +33917,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)
@@ -34160,7 +34180,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.
@@ -34169,7 +34189,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.
@@ -34206,7 +34226,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)
@@ -34335,7 +34355,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)
@@ -34494,7 +34514,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.
@@ -34597,8 +34617,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)
@@ -34674,13 +34694,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)
@@ -34804,7 +34824,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)
@@ -34886,7 +34906,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.
@@ -34942,7 +34962,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.
@@ -35080,7 +35100,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)
@@ -35093,7 +35113,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)
@@ -35152,7 +35172,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)
@@ -35272,7 +35292,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)
@@ -35305,6 +35325,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)
@@ -35441,8 +35462,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)
@@ -35456,7 +35477,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.
@@ -35493,7 +35514,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)
@@ -35619,7 +35640,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)
@@ -35647,11 +35668,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)
@@ -35669,7 +35690,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)
@@ -35755,7 +35776,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.
@@ -35783,15 +35804,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)
@@ -35923,9 +35944,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)
@@ -36072,7 +36093,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)
@@ -36107,10 +36128,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)
@@ -36389,370 +36410,369 @@ 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: Debugging876695
-Node: Debugging Concepts877136
-Node: Debugging Terms878945
-Node: Awk Debugging881520
-Ref: Awk Debugging-Footnote-1882465
-Node: Sample Debugging Session882597
-Node: Debugger Invocation883131
-Node: Finding The Bug884517
-Node: List of Debugger Commands890991
-Node: Breakpoint Control892324
-Node: Debugger Execution Control896018
-Node: Viewing And Changing Data899380
-Node: Execution Stack902754
-Node: Debugger Info904391
-Node: Miscellaneous Debugger Commands908462
-Node: Readline Support913524
-Node: Limitations914420
-Node: Debugging Summary916529
-Node: Arbitrary Precision Arithmetic917808
-Node: Computer Arithmetic919293
-Ref: table-numeric-ranges923059
-Ref: table-floating-point-ranges923552
-Ref: Computer Arithmetic-Footnote-1924210
-Node: Math Definitions924267
-Ref: table-ieee-formats927583
-Ref: Math Definitions-Footnote-1928186
-Node: MPFR features928291
-Node: FP Math Caution930009
-Ref: FP Math Caution-Footnote-1931081
-Node: Inexactness of computations931450
-Node: Inexact representation932410
-Node: Comparing FP Values933770
-Node: Errors accumulate935011
-Node: Getting Accuracy936444
-Node: Try To Round939154
-Node: Setting precision940053
-Ref: table-predefined-precision-strings940750
-Node: Setting the rounding mode942580
-Ref: table-gawk-rounding-modes942954
-Ref: Setting the rounding mode-Footnote-1946885
-Node: Arbitrary Precision Integers947064
-Ref: Arbitrary Precision Integers-Footnote-1950239
-Node: Checking for MPFR950388
-Node: POSIX Floating Point Problems951862
-Ref: POSIX Floating Point Problems-Footnote-1956147
-Node: Floating point summary956185
-Node: Dynamic Extensions958375
-Node: Extension Intro959928
-Node: Plugin License961194
-Node: Extension Mechanism Outline961991
-Ref: figure-load-extension962430
-Ref: figure-register-new-function963995
-Ref: figure-call-new-function965087
-Node: Extension API Description967149
-Node: Extension API Functions Introduction968791
-Node: General Data Types974331
-Ref: General Data Types-Footnote-1982692
-Node: Memory Allocation Functions982991
-Ref: Memory Allocation Functions-Footnote-1987201
-Node: Constructor Functions987300
-Node: Registration Functions990886
-Node: Extension Functions991571
-Node: Exit Callback Functions996786
-Node: Extension Version String998036
-Node: Input Parsers998699
-Node: Output Wrappers1011420
-Node: Two-way processors1015932
-Node: Printing Messages1018197
-Ref: Printing Messages-Footnote-11019368
-Node: Updating ERRNO1019521
-Node: Requesting Values1020260
-Ref: table-value-types-returned1020997
-Node: Accessing Parameters1021933
-Node: Symbol Table Access1023168
-Node: Symbol table by name1023680
-Node: Symbol table by cookie1025469
-Ref: Symbol table by cookie-Footnote-11029654
-Node: Cached values1029718
-Ref: Cached values-Footnote-11033254
-Node: Array Manipulation1033407
-Ref: Array Manipulation-Footnote-11034498
-Node: Array Data Types1034535
-Ref: Array Data Types-Footnote-11037193
-Node: Array Functions1037285
-Node: Flattening Arrays1041783
-Node: Creating Arrays1048759
-Node: Redirection API1053526
-Node: Extension API Variables1056359
-Node: Extension Versioning1057070
-Ref: gawk-api-version1057499
-Node: Extension GMP/MPFR Versioning1059230
-Node: Extension API Informational Variables1060858
-Node: Extension API Boilerplate1061931
-Node: Changes from API V11065905
-Node: Finding Extensions1067477
-Node: Extension Example1068036
-Node: Internal File Description1068834
-Node: Internal File Ops1072914
-Ref: Internal File Ops-Footnote-11084264
-Node: Using Internal File Ops1084404
-Ref: Using Internal File Ops-Footnote-11086787
-Node: Extension Samples1087061
-Node: Extension Sample File Functions1088590
-Node: Extension Sample Fnmatch1096239
-Node: Extension Sample Fork1097726
-Node: Extension Sample Inplace1098944
-Node: Extension Sample Ord1102161
-Node: Extension Sample Readdir1102997
-Ref: table-readdir-file-types1103886
-Node: Extension Sample Revout1104691
-Node: Extension Sample Rev2way1105280
-Node: Extension Sample Read write array1106020
-Node: Extension Sample Readfile1107962
-Node: Extension Sample Time1109057
-Node: Extension Sample API Tests1110405
-Node: gawkextlib1110897
-Node: Extension summary1113815
-Node: Extension Exercises1117517
-Node: Language History1119015
-Node: V7/SVR3.11120671
-Node: SVR41122823
-Node: POSIX1124257
-Node: BTL1125637
-Node: POSIX/GNU1126366
-Node: Feature History1132144
-Node: Common Extensions1148003
-Node: Ranges and Locales1149286
-Ref: Ranges and Locales-Footnote-11153902
-Ref: Ranges and Locales-Footnote-21153929
-Ref: Ranges and Locales-Footnote-31154164
-Node: Contributors1154385
-Node: History summary1160330
-Node: Installation1161710
-Node: Gawk Distribution1162654
-Node: Getting1163138
-Node: Extracting1164101
-Node: Distribution contents1165739
-Node: Unix Installation1172219
-Node: Quick Installation1172901
-Node: Shell Startup Files1175315
-Node: Additional Configuration Options1176404
-Node: Configuration Philosophy1178697
-Node: Non-Unix Installation1181066
-Node: PC Installation1181526
-Node: PC Binary Installation1182364
-Node: PC Compiling1182799
-Node: PC Using1183916
-Node: Cygwin1187131
-Node: MSYS1188230
-Node: VMS Installation1188731
-Node: VMS Compilation1189522
-Ref: VMS Compilation-Footnote-11190751
-Node: VMS Dynamic Extensions1190809
-Node: VMS Installation Details1192494
-Node: VMS Running1194747
-Node: VMS GNV1199026
-Node: VMS Old Gawk1199761
-Node: Bugs1200232
-Node: Bug address1200895
-Node: Usenet1203877
-Node: Maintainers1204881
-Node: Other Versions1206142
-Node: Installation summary1213056
-Node: Notes1214258
-Node: Compatibility Mode1215052
-Node: Additions1215834
-Node: Accessing The Source1216759
-Node: Adding Code1218196
-Node: New Ports1224415
-Node: Derived Files1228903
-Ref: Derived Files-Footnote-11234549
-Ref: Derived Files-Footnote-21234584
-Ref: Derived Files-Footnote-31235182
-Node: Future Extensions1235296
-Node: Implementation Limitations1235954
-Node: Extension Design1237137
-Node: Old Extension Problems1238281
-Ref: Old Extension Problems-Footnote-11239799
-Node: Extension New Mechanism Goals1239856
-Ref: Extension New Mechanism Goals-Footnote-11243220
-Node: Extension Other Design Decisions1243409
-Node: Extension Future Growth1245522
-Node: Notes summary1246358
-Node: Basic Concepts1247533
-Node: Basic High Level1248214
-Ref: figure-general-flow1248496
-Ref: figure-process-flow1249181
-Ref: Basic High Level-Footnote-11252482
-Node: Basic Data Typing1252667
-Node: Glossary1255995
-Node: Copying1287833
-Node: GNU Free Documentation License1325376
-Node: Index1350496
+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: Debugging877210
+Node: Debugging Concepts877651
+Node: Debugging Terms879460
+Node: Awk Debugging882035
+Ref: Awk Debugging-Footnote-1882980
+Node: Sample Debugging Session883112
+Node: Debugger Invocation883646
+Node: Finding The Bug885032
+Node: List of Debugger Commands891506
+Node: Breakpoint Control892839
+Node: Debugger Execution Control896533
+Node: Viewing And Changing Data899895
+Node: Execution Stack903269
+Node: Debugger Info904906
+Node: Miscellaneous Debugger Commands908977
+Node: Readline Support914039
+Node: Limitations914935
+Node: Debugging Summary917044
+Node: Arbitrary Precision Arithmetic918323
+Node: Computer Arithmetic919808
+Ref: table-numeric-ranges923574
+Ref: table-floating-point-ranges924067
+Ref: Computer Arithmetic-Footnote-1924725
+Node: Math Definitions924782
+Ref: table-ieee-formats928098
+Ref: Math Definitions-Footnote-1928701
+Node: MPFR features928806
+Node: FP Math Caution930524
+Ref: FP Math Caution-Footnote-1931596
+Node: Inexactness of computations931965
+Node: Inexact representation932925
+Node: Comparing FP Values934285
+Node: Errors accumulate935526
+Node: Getting Accuracy936959
+Node: Try To Round939669
+Node: Setting precision940568
+Ref: table-predefined-precision-strings941265
+Node: Setting the rounding mode943095
+Ref: table-gawk-rounding-modes943469
+Ref: Setting the rounding mode-Footnote-1947400
+Node: Arbitrary Precision Integers947579
+Ref: Arbitrary Precision Integers-Footnote-1950754
+Node: Checking for MPFR950903
+Node: POSIX Floating Point Problems952377
+Ref: POSIX Floating Point Problems-Footnote-1956662
+Node: Floating point summary956700
+Node: Dynamic Extensions958890
+Node: Extension Intro960443
+Node: Plugin License961709
+Node: Extension Mechanism Outline962506
+Ref: figure-load-extension962945
+Ref: figure-register-new-function964510
+Ref: figure-call-new-function965602
+Node: Extension API Description967664
+Node: Extension API Functions Introduction969306
+Node: General Data Types974846
+Ref: General Data Types-Footnote-1983207
+Node: Memory Allocation Functions983506
+Ref: Memory Allocation Functions-Footnote-1987716
+Node: Constructor Functions987815
+Node: Registration Functions991401
+Node: Extension Functions992086
+Node: Exit Callback Functions997301
+Node: Extension Version String998551
+Node: Input Parsers999214
+Node: Output Wrappers1011935
+Node: Two-way processors1016447
+Node: Printing Messages1018712
+Ref: Printing Messages-Footnote-11019883
+Node: Updating ERRNO1020036
+Node: Requesting Values1020775
+Ref: table-value-types-returned1021512
+Node: Accessing Parameters1022448
+Node: Symbol Table Access1023683
+Node: Symbol table by name1024195
+Node: Symbol table by cookie1025984
+Ref: Symbol table by cookie-Footnote-11030169
+Node: Cached values1030233
+Ref: Cached values-Footnote-11033769
+Node: Array Manipulation1033922
+Ref: Array Manipulation-Footnote-11035013
+Node: Array Data Types1035050
+Ref: Array Data Types-Footnote-11037708
+Node: Array Functions1037800
+Node: Flattening Arrays1042298
+Node: Creating Arrays1049274
+Node: Redirection API1054041
+Node: Extension API Variables1056874
+Node: Extension Versioning1057585
+Ref: gawk-api-version1058014
+Node: Extension GMP/MPFR Versioning1059745
+Node: Extension API Informational Variables1061373
+Node: Extension API Boilerplate1062446
+Node: Changes from API V11066420
+Node: Finding Extensions1067992
+Node: Extension Example1068551
+Node: Internal File Description1069349
+Node: Internal File Ops1073429
+Ref: Internal File Ops-Footnote-11084779
+Node: Using Internal File Ops1084919
+Ref: Using Internal File Ops-Footnote-11087302
+Node: Extension Samples1087576
+Node: Extension Sample File Functions1089105
+Node: Extension Sample Fnmatch1096754
+Node: Extension Sample Fork1098241
+Node: Extension Sample Inplace1099459
+Node: Extension Sample Ord1102676
+Node: Extension Sample Readdir1103512
+Ref: table-readdir-file-types1104401
+Node: Extension Sample Revout1105206
+Node: Extension Sample Rev2way1105795
+Node: Extension Sample Read write array1106535
+Node: Extension Sample Readfile1108477
+Node: Extension Sample Time1109572
+Node: Extension Sample API Tests1110920
+Node: gawkextlib1111412
+Node: Extension summary1114330
+Node: Extension Exercises1118032
+Node: Language History1119530
+Node: V7/SVR3.11121186
+Node: SVR41123338
+Node: POSIX1124772
+Node: BTL1126152
+Node: POSIX/GNU1126881
+Node: Feature History1132659
+Node: Common Extensions1148705
+Node: Ranges and Locales1149988
+Ref: Ranges and Locales-Footnote-11154604
+Ref: Ranges and Locales-Footnote-21154631
+Ref: Ranges and Locales-Footnote-31154866
+Node: Contributors1155087
+Node: History summary1161032
+Node: Installation1162412
+Node: Gawk Distribution1163356
+Node: Getting1163840
+Node: Extracting1164803
+Node: Distribution contents1166441
+Node: Unix Installation1172921
+Node: Quick Installation1173603
+Node: Shell Startup Files1176017
+Node: Additional Configuration Options1177106
+Node: Configuration Philosophy1179271
+Node: Non-Unix Installation1181640
+Node: PC Installation1182100
+Node: PC Binary Installation1182938
+Node: PC Compiling1183373
+Node: PC Using1184490
+Node: Cygwin1188043
+Node: MSYS1189142
+Node: VMS Installation1189643
+Node: VMS Compilation1190434
+Ref: VMS Compilation-Footnote-11191663
+Node: VMS Dynamic Extensions1191721
+Node: VMS Installation Details1193406
+Node: VMS Running1195659
+Node: VMS GNV1199938
+Node: VMS Old Gawk1200673
+Node: Bugs1201144
+Node: Bug address1201807
+Node: Usenet1204789
+Node: Maintainers1205793
+Node: Other Versions1207054
+Node: Installation summary1213968
+Node: Notes1215170
+Node: Compatibility Mode1215964
+Node: Additions1216746
+Node: Accessing The Source1217671
+Node: Adding Code1219108
+Node: New Ports1225327
+Node: Derived Files1229815
+Ref: Derived Files-Footnote-11235461
+Ref: Derived Files-Footnote-21235496
+Ref: Derived Files-Footnote-31236094
+Node: Future Extensions1236208
+Node: Implementation Limitations1236866
+Node: Extension Design1238049
+Node: Old Extension Problems1239193
+Ref: Old Extension Problems-Footnote-11240711
+Node: Extension New Mechanism Goals1240768
+Ref: Extension New Mechanism Goals-Footnote-11244132
+Node: Extension Other Design Decisions1244321
+Node: Extension Future Growth1246434
+Node: Notes summary1247270
+Node: Basic Concepts1248445
+Node: Basic High Level1249126
+Ref: figure-general-flow1249408
+Ref: figure-process-flow1250093
+Ref: Basic High Level-Footnote-11253394
+Node: Basic Data Typing1253579
+Node: Glossary1256907
+Node: Copying1288745
+Node: GNU Free Documentation License1326288
+Node: Index1351408

End Tag Table