diff options
Diffstat (limited to 'doc/gawk.info')
-rw-r--r-- | doc/gawk.info | 1388 |
1 files changed, 732 insertions, 656 deletions
diff --git a/doc/gawk.info b/doc/gawk.info index 6c8b9c8b..9f70b428 100644 --- a/doc/gawk.info +++ b/doc/gawk.info @@ -2588,10 +2588,8 @@ The following list describes options mandated by the POSIX standard: different file name for the output. No space is allowed between the `-o' and FILE, if FILE is supplied. - NOTE: Due to the way `gawk' has evolved, with this option - your program is still executed. This will change in the next - major release such that `gawk' will only pretty-print the - program and not run it. + NOTE: In the past, this option would also execute your + program. This is no longer the case. `-O' `--optimize' @@ -2980,13 +2978,6 @@ change. The variables are: supposed to be differences, but occasionally theory and practice don't coordinate with each other.) -`GAWK_NO_PP_RUN' - If this variable exists, then when invoked with the - `--pretty-print' option, `gawk' skips running the program. - - CAUTION: This variable will not survive into the next major - release. - `GAWK_STACKSIZE' This specifies the amount by which `gawk' should grow its internal evaluation stack, when needed. @@ -3378,15 +3369,17 @@ sequences apply to both string constants and regexp constants: `\xHH...' The hexadecimal value HH, where HH stands for a sequence of - hexadecimal digits (`0'-`9', and either `A'-`F' or `a'-`f'). Like - the same construct in ISO C, the escape sequence continues until - the first nonhexadecimal digit is seen. (c.e.) However, using - more than two hexadecimal digits produces undefined results. (The - `\x' escape sequence is not allowed in POSIX `awk'.) + hexadecimal digits (`0'-`9', and either `A'-`F' or `a'-`f'). A + maximum of two digts are allowed after the `\x'. Any further + hexadecimal digits are treated as simple letters or numbers. + (c.e.) - CAUTION: The next major relase of `gawk' will change, such - that a maximum of two hexadecimal digits following the `\x' - will be used. + CAUTION: In ISO C, the escape sequence continues until the + first nonhexadecimal digit is seen. For many years, `gawk' + would continue incorporating hexadecimal digits into the + value until a non-hexadecimal digit or the end of the string + was encountered. However, using more than two hexadecimal + digits produces `\/' A literal slash (necessary for regexp constants only). This @@ -10259,10 +10252,18 @@ Options::), they are not special. An associative array containing the values of the environment. The array indices are the environment variable names; the elements are the values of the particular environment variables. For - example, `ENVIRON["HOME"]' might be `"/home/arnold"'. Changing - this array does not affect the environment passed on to any - programs that `awk' may spawn via redirection or the `system()' - function. (In a future version of `gawk', it may do so.) + example, `ENVIRON["HOME"]' might be `/home/arnold'. + + For POSIX `awk', changing this array does not affect the + environment passed on to any programs that `awk' may spawn via + redirection or the `system()' function. + + However, beginning with version 4.2, if not in POSIX compatibility + mode, `gawk' does update its own environment when `ENVIRON' is + changed, thus changing the environment seen by programs that it + creates. You should therefore be especially careful if you modify + `ENVIRON["PATH"]"', which is the search path for finding + executable programs. Some operating systems may not have environment variables. On such systems, the `ENVIRON' array is empty (except for @@ -11807,6 +11808,21 @@ brackets ([ ]): `cos(X)' Return the cosine of X, with X in radians. +`div(NUMERATOR, DENOMINATOR, RESULT)' + Perform integer division, similar to the standard C function of the + same name. First, truncate `numerator' and `denominator' towards + zero, creating integer values. Clear the `result' array, and then + set `result["quotient"]' to the result of `numerator / + denominator', truncated towards zero to an integer, and set + `result["remainder"]' to the result of `numerator % denominator', + truncated towards zero to an integer. This function is primarily + intended for use with arbitrary length integers; it avoids + creating MPFR arbitrary precision floating-point values (*note + Arbitrary Precision Integers::). + + This function is a `gawk' extension. It is not available in + compatibility mode (*note Options::). + `exp(X)' Return the exponential of X (`e ^ X') or report an error if X is out of range. The range of values X can have depends on your @@ -19857,8 +19873,8 @@ by the `Ctrl-<\>' key. called this way, `gawk' "pretty prints" the program into `awkprof.out', without any execution counts. - NOTE: The `--pretty-print' option still runs your program. This - will change in the next major release. + NOTE: Once upon a time, the `--pretty-print' option would also run + your program. This is is no longer the case. File: gawk.info, Node: Advanced Features Summary, Prev: Profiling, Up: Advanced Features @@ -22343,6 +22359,62 @@ just use the following: gawk -M 'BEGIN { n = 13; print n % 2 }' + When dividing two arbitrary precision integers with either `/' or +`%', the result is typically an arbitrary precision floating point +value (unless the denominator evenly divides into the numerator). In +order to do integer division or remainder with arbitrary precision +integers, use the built-in `div()' function (*note Numeric Functions::). + + You can simulate the `div()' function in standard `awk' using this +user-defined function: + + # div --- do integer division + + function div(numerator, denominator, result) + { + split("", result) + + numerator = int(numerator) + denominator = int(denominator) + result["quotient"] = int(numerator / denominator) + result["remainder"] = int(numerator % denominator) + + return 0.0 + } + + The following example program, contributed by Katie Wasserman, uses +`div()' to compute the digits of pi to as many places as you choose to +set: + + # pi.awk --- compute the digits of pi + + BEGIN { + digits = 100000 + two = 2 * 10 ^ digits + pi = two + for (m = digits * 4; m > 0; --m) { + d = m * 2 + 1 + x = pi * m + div(x, d, result) + pi = result["quotient"] + pi = pi + two + } + print pi + } + + When asked about the algorithm used, Katie replied: + + It's not that well known but it's not that obscure either. It's + Euler's modification to Newton's method for calculating pi. Take + a look at lines (23) - (25) here: + `http://mathworld.wolfram.com/PiFormulas.htm'. + + The algorithm I wrote simply expands the multiply by 2 and works + from the innermost expression outwards. I used this to program HP + calculators because it's quite easy to modify for tiny memory + devices with smallish word sizes. See + `http://www.hpmuseum.org/cgi-sys/cgiwrap/hpmuseum/articles.cgi?read=899'. + ---------- Footnotes ---------- (1) Weisstein, Eric W. `Sylvester's Sequence'. From MathWorld--A @@ -26367,6 +26439,8 @@ the current version of `gawk'. - Ultrix + * Support for MirBSD was removed at `gawk' version 4.2. + File: gawk.info, Node: Feature History, Next: Common Extensions, Prev: POSIX/GNU, Up: Language History @@ -27269,7 +27343,9 @@ Various `.c', `.y', and `.h' files `doc/igawk.1' The `troff' source for a manual page describing the `igawk' - program presented in *note Igawk Program::. + program presented in *note Igawk Program::. (Since `gawk' can do + its own `@include' processing, neither `igawk' nor `igawk.1' are + installed.) `doc/Makefile.in' The input file used during the configuration process to generate @@ -27311,11 +27387,10 @@ Various `.c', `.y', and `.h' files contains a `Makefile.in' file, which `configure' uses to generate a `Makefile'. `Makefile.am' is used by GNU Automake to create `Makefile.in'. The library functions from *note Library - Functions::, and the `igawk' program from *note Igawk Program::, - are included as ready-to-use files in the `gawk' distribution. - They are installed as part of the installation process. The rest - of the programs in this Info file are available in appropriate - subdirectories of `awklib/eg'. + Functions::, are included as ready-to-use files in the `gawk' + distribution. They are installed as part of the installation + process. The rest of the programs in this Info file are available + in appropriate subdirectories of `awklib/eg'. `extension/*' The source code, manual pages, and infrastructure files for the @@ -31262,20 +31337,20 @@ Index * --include option: Options. (line 159) * --lint option <1>: Options. (line 185) * --lint option: Command Line. (line 20) -* --lint-old option: Options. (line 297) +* --lint-old option: Options. (line 295) * --load option: Options. (line 173) * --non-decimal-data option <1>: Nondecimal Data. (line 6) * --non-decimal-data option: Options. (line 211) * --non-decimal-data option, strtonum() function and: Nondecimal Data. (line 35) -* --optimize option: Options. (line 239) -* --posix option: Options. (line 256) -* --posix option, --traditional option and: Options. (line 275) +* --optimize option: Options. (line 237) +* --posix option: Options. (line 254) +* --posix option, --traditional option and: Options. (line 273) * --pretty-print option: Options. (line 226) * --profile option <1>: Profiling. (line 12) -* --profile option: Options. (line 244) -* --re-interval option: Options. (line 281) -* --sandbox option: Options. (line 288) +* --profile option: Options. (line 242) +* --re-interval option: Options. (line 279) +* --sandbox option: Options. (line 286) * --sandbox option, disabling system() function: I/O Functions. (line 96) * --sandbox option, input redirection with getline: Getline. (line 19) @@ -31283,9 +31358,9 @@ Index (line 6) * --source option: Options. (line 117) * --traditional option: Options. (line 81) -* --traditional option, --posix option and: Options. (line 275) +* --traditional option, --posix option and: Options. (line 273) * --use-lc-numeric option: Options. (line 221) -* --version option: Options. (line 302) +* --version option: Options. (line 300) * --with-whiny-user-strftime configuration option: Additional Configuration Options. (line 35) * -b option: Options. (line 68) @@ -31293,32 +31368,32 @@ Index * -c option: Options. (line 81) * -D option: Options. (line 108) * -d option: Options. (line 93) -* -e option: Options. (line 338) +* -e option: Options. (line 336) * -E option: Options. (line 125) * -e option: Options. (line 117) * -f option: Options. (line 25) * -F option: Options. (line 21) * -f option: Long. (line 12) -* -F option, -Ft sets FS to TAB: Options. (line 310) +* -F option, -Ft sets FS to TAB: Options. (line 308) * -F option, command-line: Command Line Field Separator. (line 6) -* -f option, multiple uses: Options. (line 315) +* -f option, multiple uses: Options. (line 313) * -g option: Options. (line 147) * -h option: Options. (line 154) * -i option: Options. (line 159) -* -L option: Options. (line 297) +* -L option: Options. (line 295) * -l option: Options. (line 173) * -M option: Options. (line 205) * -N option: Options. (line 221) * -n option: Options. (line 211) -* -O option: Options. (line 239) +* -O option: Options. (line 237) * -o option: Options. (line 226) -* -P option: Options. (line 256) -* -p option: Options. (line 244) -* -r option: Options. (line 281) -* -S option: Options. (line 288) +* -P option: Options. (line 254) +* -p option: Options. (line 242) +* -r option: Options. (line 279) +* -S option: Options. (line 286) * -v option: Assignment Options. (line 12) -* -V option: Options. (line 302) +* -V option: Options. (line 300) * -v option: Options. (line 32) * -W option: Options. (line 46) * . (period), regexp operator: Regexp Operators. (line 44) @@ -31380,10 +31455,10 @@ Index (line 8) * [] (square brackets), regexp operator: Regexp Operators. (line 56) * \ (backslash): Comments. (line 50) -* \ (backslash), \" escape sequence: Escape Sequences. (line 82) +* \ (backslash), \" escape sequence: Escape Sequences. (line 84) * \ (backslash), \' operator (gawk): GNU Regexp Operators. (line 56) -* \ (backslash), \/ escape sequence: Escape Sequences. (line 73) +* \ (backslash), \/ escape sequence: Escape Sequences. (line 75) * \ (backslash), \< operator (gawk): GNU Regexp Operators. (line 30) * \ (backslash), \> operator (gawk): GNU Regexp Operators. @@ -31423,7 +31498,7 @@ Index * \ (backslash), in bracket expressions: Bracket Expressions. (line 17) * \ (backslash), in escape sequences: Escape Sequences. (line 6) * \ (backslash), in escape sequences, POSIX and: Escape Sequences. - (line 118) + (line 120) * \ (backslash), in regexp constants: Computed Regexps. (line 29) * \ (backslash), in shell commands: Quoting. (line 48) * \ (backslash), regexp operator: Regexp Operators. (line 18) @@ -31591,7 +31666,7 @@ Index * awf (amazingly workable formatter) program: Glossary. (line 24) * awk debugging, enabling: Options. (line 108) * awk language, POSIX version: Assignment Ops. (line 137) -* awk profiling, enabling: Options. (line 244) +* awk profiling, enabling: Options. (line 242) * awk programs <1>: Two Rules. (line 6) * awk programs <2>: Executable Scripts. (line 6) * awk programs: Getting Started. (line 12) @@ -31649,10 +31724,10 @@ Index * awkvars.out file: Options. (line 93) * b debugger command (alias for break): Breakpoint Control. (line 11) * backslash (\): Comments. (line 50) -* backslash (\), \" escape sequence: Escape Sequences. (line 82) +* backslash (\), \" escape sequence: Escape Sequences. (line 84) * backslash (\), \' operator (gawk): GNU Regexp Operators. (line 56) -* backslash (\), \/ escape sequence: Escape Sequences. (line 73) +* backslash (\), \/ escape sequence: Escape Sequences. (line 75) * backslash (\), \< operator (gawk): GNU Regexp Operators. (line 30) * backslash (\), \> operator (gawk): GNU Regexp Operators. @@ -31692,7 +31767,7 @@ Index * backslash (\), in bracket expressions: Bracket Expressions. (line 17) * backslash (\), in escape sequences: Escape Sequences. (line 6) * backslash (\), in escape sequences, POSIX and: Escape Sequences. - (line 118) + (line 120) * backslash (\), in regexp constants: Computed Regexps. (line 29) * backslash (\), in shell commands: Quoting. (line 48) * backslash (\), regexp operator: Regexp Operators. (line 18) @@ -31797,7 +31872,7 @@ Index (line 67) * Brian Kernighan's awk <12>: GNU Regexp Operators. (line 83) -* Brian Kernighan's awk <13>: Escape Sequences. (line 122) +* Brian Kernighan's awk <13>: Escape Sequences. (line 124) * Brian Kernighan's awk: When. (line 21) * Brian Kernighan's awk, extensions: BTL. (line 6) * Brian Kernighan's awk, source code: Other Versions. (line 13) @@ -31991,7 +32066,7 @@ Index * cosine: Numeric Functions. (line 15) * counting: Wc Program. (line 6) * csh utility: Statements/Lines. (line 44) -* csh utility, POSIXLY_CORRECT environment variable: Options. (line 356) +* csh utility, POSIXLY_CORRECT environment variable: Options. (line 354) * csh utility, |& operator, comparison with: Two-way I/O. (line 25) * ctime() user-defined function: Function Example. (line 74) * currency symbols, localization: Explaining gettext. (line 104) @@ -32022,13 +32097,13 @@ Index * dark corner, CONVFMT variable: Strings And Numbers. (line 40) * dark corner, escape sequences: Other Arguments. (line 38) * dark corner, escape sequences, for metacharacters: Escape Sequences. - (line 140) + (line 142) * dark corner, exit statement: Exit Statement. (line 30) * dark corner, field separators: Field Splitting Summary. (line 46) -* dark corner, FILENAME variable <1>: Auto-set. (line 90) +* dark corner, FILENAME variable <1>: Auto-set. (line 98) * dark corner, FILENAME variable: Getline Notes. (line 19) -* dark corner, FNR/NR variables: Auto-set. (line 308) +* dark corner, FNR/NR variables: Auto-set. (line 316) * dark corner, format-control characters: Control Letters. (line 18) * dark corner, FS as null string: Single Character Fields. (line 20) @@ -32176,7 +32251,7 @@ Index * debugger, read commands from a file: Debugger Info. (line 96) * debugging awk programs: Debugger. (line 6) * debugging gawk, bug reports: Bugs. (line 9) -* decimal point character, locale specific: Options. (line 272) +* decimal point character, locale specific: Options. (line 270) * decrement operators: Increment Ops. (line 35) * default keyword: Switch Statement. (line 6) * Deifik, Scott <1>: Bugs. (line 72) @@ -32215,12 +32290,12 @@ Index (line 81) * differences in awk and gawk, command-line directories: Command-line directories. (line 6) -* differences in awk and gawk, ERRNO variable: Auto-set. (line 74) +* differences in awk and gawk, ERRNO variable: Auto-set. (line 82) * differences in awk and gawk, error messages: Special FD. (line 19) * differences in awk and gawk, FIELDWIDTHS variable: User-modified. (line 37) * differences in awk and gawk, FPAT variable: User-modified. (line 43) -* differences in awk and gawk, FUNCTAB variable: Auto-set. (line 115) +* differences in awk and gawk, FUNCTAB variable: Auto-set. (line 123) * differences in awk and gawk, function arguments (gawk): Calling Built-in. (line 16) * differences in awk and gawk, getline command: Getline. (line 19) @@ -32243,7 +32318,7 @@ Index (line 262) * differences in awk and gawk, print/printf statements: Format Modifiers. (line 13) -* differences in awk and gawk, PROCINFO array: Auto-set. (line 129) +* differences in awk and gawk, PROCINFO array: Auto-set. (line 137) * differences in awk and gawk, read timeouts: Read Timeout. (line 6) * differences in awk and gawk, record separators: awk split records. (line 125) @@ -32253,7 +32328,7 @@ Index (line 26) * differences in awk and gawk, RS/RT variables: gawk split records. (line 58) -* differences in awk and gawk, RT variable: Auto-set. (line 264) +* differences in awk and gawk, RT variable: Auto-set. (line 272) * differences in awk and gawk, single-character fields: Single Character Fields. (line 6) * differences in awk and gawk, split() function: String Functions. @@ -32261,7 +32336,7 @@ Index * differences in awk and gawk, strings: Scalar Constants. (line 20) * differences in awk and gawk, strings, storing: gawk split records. (line 77) -* differences in awk and gawk, SYMTAB variable: Auto-set. (line 268) +* differences in awk and gawk, SYMTAB variable: Auto-set. (line 276) * differences in awk and gawk, TEXTDOMAIN variable: User-modified. (line 151) * differences in awk and gawk, trunc-mod operation: Arithmetic Ops. @@ -32277,6 +32352,7 @@ Index * display debugger command: Viewing And Changing Data. (line 8) * display debugger options: Debugger Info. (line 57) +* div: Numeric Functions. (line 18) * division: Arithmetic Ops. (line 44) * do-while statement: Do Statement. (line 6) * do-while statement, use of regexps in: Regexp Usage. (line 19) @@ -32300,8 +32376,8 @@ Index * dynamically loaded extensions: Dynamic Extensions. (line 6) * e debugger command (alias for enable): Breakpoint Control. (line 73) * EBCDIC: Ordinal Functions. (line 45) -* effective group ID of gawk user: Auto-set. (line 134) -* effective user ID of gawk user: Auto-set. (line 138) +* effective group ID of gawk user: Auto-set. (line 142) +* effective user ID of gawk user: Auto-set. (line 146) * egrep utility <1>: Egrep Program. (line 6) * egrep utility: Bracket Expressions. (line 26) * egrep.awk program: Egrep Program. (line 54) @@ -32356,13 +32432,13 @@ Index (line 11) * EREs (Extended Regular Expressions): Bracket Expressions. (line 26) * ERRNO variable <1>: TCP/IP Networking. (line 54) -* ERRNO variable: Auto-set. (line 74) +* ERRNO variable: Auto-set. (line 82) * ERRNO variable, with BEGINFILE pattern: BEGINFILE/ENDFILE. (line 26) * ERRNO variable, with close() function: Close Files And Pipes. (line 140) * ERRNO variable, with getline command: Getline. (line 19) * error handling: Special FD. (line 19) -* error handling, ERRNO variable and: Auto-set. (line 74) +* error handling, ERRNO variable and: Auto-set. (line 82) * error output: Special FD. (line 6) * escape processing, gsub()/gensub()/sub() functions: Gory Details. (line 6) @@ -32395,10 +32471,10 @@ Index * exit status, of VMS: VMS Running. (line 29) * exit the debugger: Miscellaneous Debugger Commands. (line 99) -* exp: Numeric Functions. (line 18) +* exp: Numeric Functions. (line 33) * expand utility: Very Simple. (line 72) * Expat XML parser library: gawkextlib. (line 31) -* exponent: Numeric Functions. (line 18) +* exponent: Numeric Functions. (line 33) * expressions: Expressions. (line 6) * expressions, as patterns: Expression Patterns. (line 6) * expressions, assignment: Assignment Ops. (line 6) @@ -32416,7 +32492,7 @@ Index (line 6) * extension API version: Extension Versioning. (line 6) -* extension API, version number: Auto-set. (line 231) +* extension API, version number: Auto-set. (line 239) * extension example: Extension Example. (line 6) * extension registration: Registration Functions. (line 6) @@ -32498,7 +32574,7 @@ Index * file names, distinguishing: Auto-set. (line 56) * file names, in compatibility mode: Special Caveats. (line 9) * file names, standard streams in gawk: Special FD. (line 48) -* FILENAME variable <1>: Auto-set. (line 90) +* FILENAME variable <1>: Auto-set. (line 98) * FILENAME variable: Reading Files. (line 6) * FILENAME variable, getline, setting with: Getline Notes. (line 19) * filenames, assignments as: Ignoring Assigns. (line 6) @@ -32566,9 +32642,9 @@ Index * flush buffered output: I/O Functions. (line 28) * fnmatch() extension function: Extension Sample Fnmatch. (line 12) -* FNR variable <1>: Auto-set. (line 99) +* FNR variable <1>: Auto-set. (line 107) * FNR variable: Records. (line 6) -* FNR variable, changing: Auto-set. (line 308) +* FNR variable, changing: Auto-set. (line 316) * for statement: For Statement. (line 6) * for statement, looping over arrays: Scanning an Array. (line 20) * fork() extension function: Extension Sample Fork. @@ -32605,7 +32681,7 @@ Index * FS variable, --field-separator option and: Options. (line 21) * FS variable, as null string: Single Character Fields. (line 20) -* FS variable, as TAB character: Options. (line 268) +* FS variable, as TAB character: Options. (line 266) * FS variable, changing value of: Field Separators. (line 35) * FS variable, running awk programs and: Cut Program. (line 63) * FS variable, setting from command line: Command Line Field Separator. @@ -32618,7 +32694,7 @@ Index * FSF (Free Software Foundation): Manual History. (line 6) * fts() extension function: Extension Sample File Functions. (line 61) -* FUNCTAB array: Auto-set. (line 115) +* FUNCTAB array: Auto-set. (line 123) * function calls: Function Calls. (line 6) * function calls, indirect: Indirect Calls. (line 6) * function calls, indirect, @-notation for: Indirect Calls. (line 47) @@ -32668,7 +32744,7 @@ Index * G-d: Acknowledgments. (line 94) * Garfinkle, Scott: Contributors. (line 34) * gawk program, dynamic profiling: Profiling. (line 179) -* gawk version: Auto-set. (line 206) +* gawk version: Auto-set. (line 214) * gawk, ARGIND variable in: Other Arguments. (line 15) * gawk, awk and <1>: This Manual. (line 14) * gawk, awk and: Preface. (line 21) @@ -32686,13 +32762,13 @@ Index * gawk, distribution: Distribution contents. (line 6) * gawk, ERRNO variable in <1>: TCP/IP Networking. (line 54) -* gawk, ERRNO variable in <2>: Auto-set. (line 74) +* gawk, ERRNO variable in <2>: Auto-set. (line 82) * gawk, ERRNO variable in <3>: BEGINFILE/ENDFILE. (line 26) * gawk, ERRNO variable in <4>: Close Files And Pipes. (line 140) * gawk, ERRNO variable in: Getline. (line 19) -* gawk, escape sequences: Escape Sequences. (line 130) -* gawk, extensions, disabling: Options. (line 256) +* gawk, escape sequences: Escape Sequences. (line 132) +* gawk, extensions, disabling: Options. (line 254) * gawk, features, adding: Adding Code. (line 6) * gawk, features, advanced: Advanced Features. (line 6) * gawk, field separators and: User-modified. (line 71) @@ -32703,7 +32779,7 @@ Index * gawk, FPAT variable in <1>: User-modified. (line 43) * gawk, FPAT variable in: Splitting By Content. (line 27) -* gawk, FUNCTAB array in: Auto-set. (line 115) +* gawk, FUNCTAB array in: Auto-set. (line 123) * gawk, function arguments and: Calling Built-in. (line 16) * gawk, hexadecimal numbers and: Nondecimal-numbers. (line 42) * gawk, IGNORECASE variable in <1>: Array Sorting Functions. @@ -32735,7 +32811,7 @@ Index * gawk, predefined variables and: Built-in Variables. (line 14) * gawk, PROCINFO array in <1>: Two-way I/O. (line 99) * gawk, PROCINFO array in <2>: Time Functions. (line 47) -* gawk, PROCINFO array in: Auto-set. (line 129) +* gawk, PROCINFO array in: Auto-set. (line 137) * gawk, regexp constants and: Using Constant Regexps. (line 28) * gawk, regular expressions, case sensitivity: Case-sensitivity. @@ -32743,18 +32819,18 @@ Index * gawk, regular expressions, operators: GNU Regexp Operators. (line 6) * gawk, regular expressions, precedence: Regexp Operators. (line 161) -* gawk, RT variable in <1>: Auto-set. (line 264) +* gawk, RT variable in <1>: Auto-set. (line 272) * gawk, RT variable in <2>: Multiple Line. (line 129) * gawk, RT variable in: awk split records. (line 125) * gawk, See Also awk: Preface. (line 34) * gawk, source code, obtaining: Getting. (line 6) * gawk, splitting fields and: Constant Size. (line 88) * gawk, string-translation functions: I18N Functions. (line 6) -* gawk, SYMTAB array in: Auto-set. (line 268) +* gawk, SYMTAB array in: Auto-set. (line 276) * gawk, TEXTDOMAIN variable in: User-modified. (line 151) * gawk, timestamps: Time Functions. (line 6) * gawk, uses for: Preface. (line 34) -* gawk, versions of, information about, printing: Options. (line 302) +* gawk, versions of, information about, printing: Options. (line 300) * gawk, VMS version of: VMS Installation. (line 6) * gawk, word-boundary operator: GNU Regexp Operators. (line 63) @@ -32836,7 +32912,7 @@ Index * Grigera, Juan: Contributors. (line 57) * group database, reading: Group Functions. (line 6) * group file: Group Functions. (line 6) -* group ID of gawk user: Auto-set. (line 179) +* group ID of gawk user: Auto-set. (line 187) * groups, information about: Group Functions. (line 6) * gsub <1>: String Functions. (line 139) * gsub: Using Constant Regexps. @@ -32937,7 +33013,7 @@ Index * installation, VMS: VMS Installation. (line 6) * installing gawk: Installation. (line 6) * instruction tracing, in debugger: Debugger Info. (line 89) -* int: Numeric Functions. (line 23) +* int: Numeric Functions. (line 38) * INT signal (MS-Windows): Profiling. (line 214) * integer array indices: Numeric Array Subscripts. (line 31) @@ -33066,7 +33142,7 @@ Index * lint checking, empty programs: Command Line. (line 16) * lint checking, issuing warnings: Options. (line 185) * lint checking, POSIXLY_CORRECT environment variable: Options. - (line 341) + (line 339) * lint checking, undefined functions: Pass By Value/Reference. (line 88) * LINT variable: User-modified. (line 88) @@ -33082,14 +33158,14 @@ Index * loading, extensions: Options. (line 173) * local variables, in a function: Variable Scope. (line 6) * locale categories: Explaining gettext. (line 81) -* locale decimal point character: Options. (line 272) +* locale decimal point character: Options. (line 270) * locale, definition of: Locales. (line 6) * localization: I18N and L10N. (line 6) * localization, See internationalization, localization: I18N and L10N. (line 6) -* log: Numeric Functions. (line 30) +* log: Numeric Functions. (line 45) * log files, timestamps in: Time Functions. (line 6) -* logarithm: Numeric Functions. (line 30) +* logarithm: Numeric Functions. (line 45) * logical false/true: Truth Values. (line 6) * logical operators, See Boolean expressions: Boolean Ops. (line 6) * login information: Passwd Functions. (line 16) @@ -33130,8 +33206,8 @@ Index * mawk utility <2>: Nextfile Statement. (line 47) * mawk utility <3>: Concatenation. (line 36) * mawk utility <4>: Getline/Pipe. (line 62) -* mawk utility: Escape Sequences. (line 130) -* maximum precision supported by MPFR library: Auto-set. (line 220) +* mawk utility: Escape Sequences. (line 132) +* maximum precision supported by MPFR library: Auto-set. (line 228) * McIlroy, Doug: Glossary. (line 149) * McPhee, Patrick: Contributors. (line 100) * message object files: Explaining gettext. (line 42) @@ -33143,8 +33219,8 @@ Index (line 54) * messages from extensions: Printing Messages. (line 6) * metacharacters in regular expressions: Regexp Operators. (line 6) -* metacharacters, escape sequences for: Escape Sequences. (line 136) -* minimum precision supported by MPFR library: Auto-set. (line 223) +* metacharacters, escape sequences for: Escape Sequences. (line 138) +* minimum precision supported by MPFR library: Auto-set. (line 231) * mktime: Time Functions. (line 25) * modifiers, in format specifiers: Format Modifiers. (line 6) * monetary information, localization: Explaining gettext. (line 104) @@ -33164,7 +33240,7 @@ Index * networks, programming: TCP/IP Networking. (line 6) * networks, support for: Special Network. (line 6) * newlines <1>: Boolean Ops. (line 69) -* newlines <2>: Options. (line 262) +* newlines <2>: Options. (line 260) * newlines: Statements/Lines. (line 6) * newlines, as field separators: Default Field Splitting. (line 6) @@ -33193,7 +33269,7 @@ Index (line 47) * nexti debugger command: Debugger Execution Control. (line 49) -* NF variable <1>: Auto-set. (line 104) +* NF variable <1>: Auto-set. (line 112) * NF variable: Fields. (line 33) * NF variable, decrementing: Changing Fields. (line 107) * ni debugger command (alias for nexti): Debugger Execution Control. @@ -33202,9 +33278,9 @@ Index * non-existent array elements: Reference to Elements. (line 23) * not Boolean-logic operator: Boolean Ops. (line 6) -* NR variable <1>: Auto-set. (line 124) +* NR variable <1>: Auto-set. (line 132) * NR variable: Records. (line 6) -* NR variable, changing: Auto-set. (line 308) +* NR variable, changing: Auto-set. (line 316) * null strings <1>: Basic Data Typing. (line 26) * null strings <2>: Truth Values. (line 6) * null strings <3>: Regexp Field Splitting. @@ -33318,7 +33394,7 @@ Index * p debugger command (alias for print): Viewing And Changing Data. (line 36) * Papadopoulos, Panos: Contributors. (line 128) -* parent process ID of gawk process: Auto-set. (line 188) +* parent process ID of gawk process: Auto-set. (line 196) * parentheses (), in a profile: Profiling. (line 146) * parentheses (), regexp operator: Regexp Operators. (line 81) * password file: Passwd Functions. (line 16) @@ -33360,14 +33436,14 @@ Index * plus sign (+), += operator: Assignment Ops. (line 82) * plus sign (+), regexp operator: Regexp Operators. (line 105) * pointers to functions: Indirect Calls. (line 6) -* portability: Escape Sequences. (line 100) +* portability: Escape Sequences. (line 102) * portability, #! (executable scripts): Executable Scripts. (line 33) * portability, ** operator and: Arithmetic Ops. (line 81) * portability, **= operator and: Assignment Ops. (line 143) * portability, ARGV variable: Executable Scripts. (line 59) * portability, backslash continuation and: Statements/Lines. (line 30) * portability, backslash in escape sequences: Escape Sequences. - (line 118) + (line 120) * portability, close() function and: Close Files And Pipes. (line 81) * portability, data files as single record: gawk split records. @@ -33385,7 +33461,7 @@ Index * portability, NF variable, decrementing: Changing Fields. (line 115) * portability, operators: Increment Ops. (line 60) * portability, operators, not in POSIX awk: Precedence. (line 98) -* portability, POSIXLY_CORRECT environment variable: Options. (line 361) +* portability, POSIXLY_CORRECT environment variable: Options. (line 359) * portability, substr() function: String Functions. (line 511) * portable object files <1>: Translator i18n. (line 6) * portable object files: Explaining gettext. (line 37) @@ -33406,7 +33482,7 @@ Index * POSIX awk, < operator and: Getline/File. (line 26) * POSIX awk, arithmetic operators and: Arithmetic Ops. (line 30) * POSIX awk, backslashes in string constants: Escape Sequences. - (line 118) + (line 120) * POSIX awk, BEGIN/END patterns: I/O And BEGIN/END. (line 16) * POSIX awk, bracket expressions and: Bracket Expressions. (line 26) * POSIX awk, bracket expressions and, character classes: Bracket Expressions. @@ -33434,11 +33510,11 @@ Index * POSIX awk, regular expressions and: Regexp Operators. (line 161) * POSIX awk, timestamps and: Time Functions. (line 6) * POSIX awk, | I/O operator and: Getline/Pipe. (line 55) -* POSIX mode: Options. (line 256) +* POSIX mode: Options. (line 254) * POSIX, awk and: Preface. (line 21) * POSIX, gawk extensions not included in: POSIX/GNU. (line 6) * POSIX, programs, implementing in awk: Clones. (line 6) -* POSIXLY_CORRECT environment variable: Options. (line 341) +* POSIXLY_CORRECT environment variable: Options. (line 339) * PREC variable: User-modified. (line 123) * precedence <1>: Precedence. (line 6) * precedence: Increment Ops. (line 60) @@ -33485,24 +33561,24 @@ 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 idIDof gawk process: Auto-set. (line 182) -* process ID of gawk process: Auto-set. (line 185) +* process group idIDof gawk process: Auto-set. (line 190) +* process ID of gawk process: Auto-set. (line 193) * processes, two-way communications with: Two-way I/O. (line 6) * processing data: Basic High Level. (line 6) * PROCINFO array <1>: Passwd Functions. (line 6) * PROCINFO array <2>: Time Functions. (line 47) -* PROCINFO array: Auto-set. (line 129) +* PROCINFO array: Auto-set. (line 137) * PROCINFO array, and communications via ptys: Two-way I/O. (line 99) * PROCINFO array, and group membership: Group Functions. (line 6) * PROCINFO array, and user and group ID numbers: Id Program. (line 15) * PROCINFO array, testing the field splitting: Passwd Functions. (line 154) -* PROCINFO array, uses: Auto-set. (line 241) +* PROCINFO array, uses: Auto-set. (line 249) * PROCINFO, values of sorted_in: Controlling Scanning. (line 26) * profiling awk programs: Profiling. (line 6) * profiling awk programs, dynamically: Profiling. (line 179) -* program identifiers: Auto-set. (line 147) +* program identifiers: Auto-set. (line 155) * program, definition of: Getting Started. (line 21) * programming conventions, --non-decimal-data option: Nondecimal Data. (line 35) @@ -33546,12 +33622,12 @@ Index * Rakitzis, Byron: History Sorting. (line 25) * Ramey, Chet <1>: General Data Types. (line 6) * Ramey, Chet: Acknowledgments. (line 60) -* rand: Numeric Functions. (line 35) +* rand: Numeric Functions. (line 50) * random numbers, Cliff: Cliff Random Function. (line 6) * random numbers, rand()/srand() functions: Numeric Functions. - (line 35) -* random numbers, seed of: Numeric Functions. (line 65) + (line 50) +* random numbers, seed of: Numeric Functions. (line 80) * range expressions (regexps): Bracket Expressions. (line 6) * range patterns: Ranges. (line 6) * range patterns, line continuation and: Ranges. (line 65) @@ -33621,7 +33697,7 @@ Index (line 59) * regular expressions, gawk, command-line options: GNU Regexp Operators. (line 70) -* regular expressions, interval expressions and: Options. (line 281) +* regular expressions, interval expressions and: Options. (line 279) * regular expressions, leftmost longest match: Leftmost Longest. (line 6) * regular expressions, operators <1>: Regexp Operators. (line 6) @@ -33661,7 +33737,7 @@ Index * right shift: Bitwise Functions. (line 53) * right shift, bitwise: Bitwise Functions. (line 32) * Ritchie, Dennis: Basic Data Typing. (line 54) -* RLENGTH variable: Auto-set. (line 251) +* RLENGTH variable: Auto-set. (line 259) * RLENGTH variable, match() function and: String Functions. (line 227) * Robbins, Arnold <1>: Future Extensions. (line 6) * Robbins, Arnold <2>: Bugs. (line 72) @@ -33679,7 +33755,7 @@ Index * Robbins, Miriam <2>: Getline/Pipe. (line 39) * Robbins, Miriam: Acknowledgments. (line 94) * Rommel, Kai Uwe: Contributors. (line 42) -* round to nearest integer: Numeric Functions. (line 23) +* round to nearest integer: Numeric Functions. (line 38) * round() user-defined function: Round Function. (line 16) * rounding numbers: Round Function. (line 6) * ROUNDMODE variable: User-modified. (line 127) @@ -33687,9 +33763,9 @@ Index * RS variable: awk split records. (line 12) * RS variable, multiline records and: Multiple Line. (line 17) * rshift: Bitwise Functions. (line 53) -* RSTART variable: Auto-set. (line 257) +* RSTART variable: Auto-set. (line 265) * RSTART variable, match() function and: String Functions. (line 227) -* RT variable <1>: Auto-set. (line 264) +* RT variable <1>: Auto-set. (line 272) * RT variable <2>: Multiple Line. (line 129) * RT variable: awk split records. (line 125) * Rubin, Paul <1>: Contributors. (line 15) @@ -33702,14 +33778,14 @@ Index (line 68) * sample debugging session: Sample Debugging Session. (line 6) -* sandbox mode: Options. (line 288) +* sandbox mode: Options. (line 286) * save debugger options: Debugger Info. (line 84) * scalar or array: Type Functions. (line 11) * scalar values: Basic Data Typing. (line 13) * scanning arrays: Scanning an Array. (line 6) * scanning multidimensional arrays: Multiscanning. (line 11) * Schorr, Andrew <1>: Contributors. (line 133) -* Schorr, Andrew <2>: Auto-set. (line 291) +* Schorr, Andrew <2>: Auto-set. (line 299) * Schorr, Andrew: Acknowledgments. (line 60) * Schreiber, Bert: Acknowledgments. (line 38) * Schreiber, Rita: Acknowledgments. (line 38) @@ -33729,7 +33805,7 @@ Index * sed utility <2>: Simple Sed. (line 6) * sed utility: Field Splitting Summary. (line 46) -* seeding random number generator: Numeric Functions. (line 65) +* seeding random number generator: Numeric Functions. (line 80) * semicolon (;), AWKPATH variable and: PC Using. (line 10) * semicolon (;), separating statements in actions <1>: Statements. (line 10) @@ -33790,14 +33866,14 @@ Index * sidebar, A Constant's Base Does Not Affect Its Value: Nondecimal-numbers. (line 64) * sidebar, Backslash Before Regular Characters: Escape Sequences. - (line 116) + (line 118) * sidebar, Changing FS Does Not Affect the Fields: Field Splitting Summary. (line 38) -* sidebar, Changing NR and FNR: Auto-set. (line 306) +* sidebar, Changing NR and FNR: Auto-set. (line 314) * sidebar, Controlling Output Buffering with system(): I/O Functions. (line 137) * sidebar, Escape Sequences for Metacharacters: Escape Sequences. - (line 134) + (line 136) * sidebar, FS and IGNORECASE: Field Splitting Summary. (line 64) * sidebar, Interactive Versus Noninteractive Buffering: I/O Functions. @@ -33830,8 +33906,8 @@ Index * SIGUSR1 signal, for dynamic profiling: Profiling. (line 188) * silent debugger command: Debugger Execution Control. (line 10) -* sin: Numeric Functions. (line 76) -* sine: Numeric Functions. (line 76) +* sin: Numeric Functions. (line 91) +* sine: Numeric Functions. (line 91) * single quote ('): One-shot. (line 15) * single quote (') in gawk command lines: Long. (line 35) * single quote ('), in shell commands: Quoting. (line 48) @@ -33881,10 +33957,10 @@ Index * sprintf() function, OFMT variable and: User-modified. (line 113) * sprintf() function, print/printf statements and: Round Function. (line 6) -* sqrt: Numeric Functions. (line 79) +* sqrt: Numeric Functions. (line 94) * square brackets ([]), regexp operator: Regexp Operators. (line 56) -* square root: Numeric Functions. (line 79) -* srand: Numeric Functions. (line 83) +* square root: Numeric Functions. (line 94) +* srand: Numeric Functions. (line 98) * stack frame: Debugging Terms. (line 10) * Stallman, Richard <1>: Glossary. (line 296) * Stallman, Richard <2>: Contributors. (line 23) @@ -33956,9 +34032,9 @@ Index * substr: String Functions. (line 480) * substring: String Functions. (line 480) * Sumner, Andrew: Other Versions. (line 64) -* supplementary groups of gawk process: Auto-set. (line 236) +* supplementary groups of gawk process: Auto-set. (line 244) * switch statement: Switch Statement. (line 6) -* SYMTAB array: Auto-set. (line 268) +* SYMTAB array: Auto-set. (line 276) * syntactic ambiguity: /= operator vs. /=.../ regexp constant: Assignment Ops. (line 148) * system: I/O Functions. (line 74) @@ -34025,7 +34101,7 @@ Index (line 37) * troubleshooting, awk uses FS not IFS: Field Separators. (line 30) * troubleshooting, backslash before nonspecial character: Escape Sequences. - (line 118) + (line 120) * troubleshooting, division: Arithmetic Ops. (line 44) * troubleshooting, fatal errors, field widths, specifying: Constant Size. (line 23) @@ -34081,7 +34157,7 @@ Index * uniq.awk program: Uniq Program. (line 65) * Unix: Glossary. (line 611) * Unix awk, backslashes in escape sequences: Escape Sequences. - (line 130) + (line 132) * Unix awk, close() function and: Close Files And Pipes. (line 132) * Unix awk, password files, field separators and: Command Line Field Separator. @@ -34135,10 +34211,10 @@ Index * variables, uninitialized, as array subscripts: Uninitialized Subscripts. (line 6) * variables, user-defined: Variables. (line 6) -* version of gawk: Auto-set. (line 206) -* version of gawk extension API: Auto-set. (line 231) -* version of GNU MP library: Auto-set. (line 217) -* version of GNU MPFR library: Auto-set. (line 213) +* version of gawk: Auto-set. (line 214) +* version of gawk extension API: Auto-set. (line 239) +* version of GNU MP library: Auto-set. (line 225) +* version of GNU MPFR library: Auto-set. (line 221) * vertical bar (|): Regexp Operators. (line 70) * vertical bar (|), | operator (I/O) <1>: Precedence. (line 65) * vertical bar (|), | operator (I/O): Getline/Pipe. (line 9) @@ -34175,7 +34251,7 @@ Index * whitespace, as field separators: Default Field Splitting. (line 6) * whitespace, functions, calling: Calling Built-in. (line 10) -* whitespace, newlines as: Options. (line 262) +* whitespace, newlines as: Options. (line 260) * Williams, Kent: Contributors. (line 34) * Woehlke, Matthew: Contributors. (line 79) * Woods, John: Contributors. (line 27) @@ -34267,518 +34343,518 @@ Node: Intro Summary110458 Node: Invoking Gawk111341 Node: Command Line112856 Node: Options113647 -Ref: Options-Footnote-1129542 -Node: Other Arguments129567 -Node: Naming Standard Input132528 -Node: Environment Variables133621 -Node: AWKPATH Variable134179 -Ref: AWKPATH Variable-Footnote-1137031 -Ref: AWKPATH Variable-Footnote-2137076 -Node: AWKLIBPATH Variable137336 -Node: Other Environment Variables138095 -Node: Exit Status141797 -Node: Include Files142472 -Node: Loading Shared Libraries146050 -Node: Obsolete147477 -Node: Undocumented148174 -Node: Invoking Summary148441 -Node: Regexp150107 -Node: Regexp Usage151566 -Node: Escape Sequences153599 -Node: Regexp Operators159616 -Ref: Regexp Operators-Footnote-1167050 -Ref: Regexp Operators-Footnote-2167197 -Node: Bracket Expressions167295 -Ref: table-char-classes169312 -Node: Leftmost Longest172252 -Node: Computed Regexps173554 -Node: GNU Regexp Operators176951 -Node: Case-sensitivity180657 -Ref: Case-sensitivity-Footnote-1183547 -Ref: Case-sensitivity-Footnote-2183782 -Node: Regexp Summary183890 -Node: Reading Files185359 -Node: Records187453 -Node: awk split records188185 -Node: gawk split records193099 -Ref: gawk split records-Footnote-1197638 -Node: Fields197675 -Ref: Fields-Footnote-1200473 -Node: Nonconstant Fields200559 -Ref: Nonconstant Fields-Footnote-1202789 -Node: Changing Fields202991 -Node: Field Separators208923 -Node: Default Field Splitting211627 -Node: Regexp Field Splitting212744 -Node: Single Character Fields216094 -Node: Command Line Field Separator217153 -Node: Full Line Fields220365 -Ref: Full Line Fields-Footnote-1220873 -Node: Field Splitting Summary220919 -Ref: Field Splitting Summary-Footnote-1224050 -Node: Constant Size224151 -Node: Splitting By Content228757 -Ref: Splitting By Content-Footnote-1232830 -Node: Multiple Line232870 -Ref: Multiple Line-Footnote-1238759 -Node: Getline238938 -Node: Plain Getline241149 -Node: Getline/Variable243789 -Node: Getline/File244936 -Node: Getline/Variable/File246320 -Ref: Getline/Variable/File-Footnote-1247921 -Node: Getline/Pipe248008 -Node: Getline/Variable/Pipe250691 -Node: Getline/Coprocess251822 -Node: Getline/Variable/Coprocess253074 -Node: Getline Notes253813 -Node: Getline Summary256605 -Ref: table-getline-variants257017 -Node: Read Timeout257846 -Ref: Read Timeout-Footnote-1261660 -Node: Command-line directories261718 -Node: Input Summary262622 -Node: Input Exercises265874 -Node: Printing266602 -Node: Print268379 -Node: Print Examples269836 -Node: Output Separators272615 -Node: OFMT274633 -Node: Printf275987 -Node: Basic Printf276772 -Node: Control Letters278343 -Node: Format Modifiers282327 -Node: Printf Examples288334 -Node: Redirection290816 -Node: Special FD297655 -Ref: Special FD-Footnote-1300812 -Node: Special Files300886 -Node: Other Inherited Files301502 -Node: Special Network302502 -Node: Special Caveats303363 -Node: Close Files And Pipes304314 -Ref: Close Files And Pipes-Footnote-1311493 -Ref: Close Files And Pipes-Footnote-2311641 -Node: Output Summary311791 -Node: Output Exercises312787 -Node: Expressions313467 -Node: Values314652 -Node: Constants315328 -Node: Scalar Constants316008 -Ref: Scalar Constants-Footnote-1316867 -Node: Nondecimal-numbers317117 -Node: Regexp Constants320117 -Node: Using Constant Regexps320642 -Node: Variables323780 -Node: Using Variables324435 -Node: Assignment Options326345 -Node: Conversion328220 -Node: Strings And Numbers328744 -Ref: Strings And Numbers-Footnote-1331808 -Node: Locale influences conversions331917 -Ref: table-locale-affects334632 -Node: All Operators335220 -Node: Arithmetic Ops335850 -Node: Concatenation338355 -Ref: Concatenation-Footnote-1341174 -Node: Assignment Ops341280 -Ref: table-assign-ops346263 -Node: Increment Ops347541 -Node: Truth Values and Conditions350979 -Node: Truth Values352062 -Node: Typing and Comparison353111 -Node: Variable Typing353904 -Node: Comparison Operators357556 -Ref: table-relational-ops357966 -Node: POSIX String Comparison361481 -Ref: POSIX String Comparison-Footnote-1362553 -Node: Boolean Ops362691 -Ref: Boolean Ops-Footnote-1367170 -Node: Conditional Exp367261 -Node: Function Calls368988 -Node: Precedence372868 -Node: Locales376536 -Node: Expressions Summary378167 -Node: Patterns and Actions380741 -Node: Pattern Overview381861 -Node: Regexp Patterns383540 -Node: Expression Patterns384083 -Node: Ranges387863 -Node: BEGIN/END390969 -Node: Using BEGIN/END391731 -Ref: Using BEGIN/END-Footnote-1394468 -Node: I/O And BEGIN/END394574 -Node: BEGINFILE/ENDFILE396888 -Node: Empty399789 -Node: Using Shell Variables400106 -Node: Action Overview402382 -Node: Statements404709 -Node: If Statement406557 -Node: While Statement408055 -Node: Do Statement410083 -Node: For Statement411225 -Node: Switch Statement414380 -Node: Break Statement416768 -Node: Continue Statement418809 -Node: Next Statement420634 -Node: Nextfile Statement423014 -Node: Exit Statement425644 -Node: Built-in Variables428047 -Node: User-modified429180 -Ref: User-modified-Footnote-1436860 -Node: Auto-set436922 -Ref: Auto-set-Footnote-1449779 -Ref: Auto-set-Footnote-2449984 -Node: ARGC and ARGV450040 -Node: Pattern Action Summary454244 -Node: Arrays456671 -Node: Array Basics458000 -Node: Array Intro458844 -Ref: figure-array-elements460817 -Ref: Array Intro-Footnote-1463341 -Node: Reference to Elements463469 -Node: Assigning Elements465919 -Node: Array Example466410 -Node: Scanning an Array468168 -Node: Controlling Scanning471184 -Ref: Controlling Scanning-Footnote-1476373 -Node: Numeric Array Subscripts476689 -Node: Uninitialized Subscripts478874 -Node: Delete480491 -Ref: Delete-Footnote-1483235 -Node: Multidimensional483292 -Node: Multiscanning486387 -Node: Arrays of Arrays487976 -Node: Arrays Summary492737 -Node: Functions494842 -Node: Built-in495715 -Node: Calling Built-in496793 -Node: Numeric Functions498781 -Ref: Numeric Functions-Footnote-1502803 -Ref: Numeric Functions-Footnote-2503160 -Ref: Numeric Functions-Footnote-3503208 -Node: String Functions503477 -Ref: String Functions-Footnote-1526941 -Ref: String Functions-Footnote-2527070 -Ref: String Functions-Footnote-3527318 -Node: Gory Details527405 -Ref: table-sub-escapes529186 -Ref: table-sub-proposed530706 -Ref: table-posix-sub532070 -Ref: table-gensub-escapes533610 -Ref: Gory Details-Footnote-1534442 -Node: I/O Functions534593 -Ref: I/O Functions-Footnote-1541694 -Node: Time Functions541841 -Ref: Time Functions-Footnote-1552310 -Ref: Time Functions-Footnote-2552378 -Ref: Time Functions-Footnote-3552536 -Ref: Time Functions-Footnote-4552647 -Ref: Time Functions-Footnote-5552759 -Ref: Time Functions-Footnote-6552986 -Node: Bitwise Functions553252 -Ref: table-bitwise-ops553814 -Ref: Bitwise Functions-Footnote-1558122 -Node: Type Functions558291 -Node: I18N Functions559440 -Node: User-defined561085 -Node: Definition Syntax561889 -Ref: Definition Syntax-Footnote-1567295 -Node: Function Example567364 -Ref: Function Example-Footnote-1570281 -Node: Function Caveats570303 -Node: Calling A Function570821 -Node: Variable Scope571776 -Node: Pass By Value/Reference574764 -Node: Return Statement578274 -Node: Dynamic Typing581258 -Node: Indirect Calls582187 -Ref: Indirect Calls-Footnote-1593491 -Node: Functions Summary593619 -Node: Library Functions596318 -Ref: Library Functions-Footnote-1599936 -Ref: Library Functions-Footnote-2600079 -Node: Library Names600250 -Ref: Library Names-Footnote-1603710 -Ref: Library Names-Footnote-2603930 -Node: General Functions604016 -Node: Strtonum Function605119 -Node: Assert Function608139 -Node: Round Function611463 -Node: Cliff Random Function613004 -Node: Ordinal Functions614020 -Ref: Ordinal Functions-Footnote-1617085 -Ref: Ordinal Functions-Footnote-2617337 -Node: Join Function617548 -Ref: Join Function-Footnote-1619319 -Node: Getlocaltime Function619519 -Node: Readfile Function623260 -Node: Shell Quoting625230 -Node: Data File Management626631 -Node: Filetrans Function627263 -Node: Rewind Function631322 -Node: File Checking632707 -Ref: File Checking-Footnote-1634035 -Node: Empty Files634236 -Node: Ignoring Assigns636215 -Node: Getopt Function637766 -Ref: Getopt Function-Footnote-1649226 -Node: Passwd Functions649429 -Ref: Passwd Functions-Footnote-1658280 -Node: Group Functions658368 -Ref: Group Functions-Footnote-1666271 -Node: Walking Arrays666484 -Node: Library Functions Summary668087 -Node: Library Exercises669488 -Node: Sample Programs670768 -Node: Running Examples671538 -Node: Clones672266 -Node: Cut Program673490 -Node: Egrep Program683220 -Ref: Egrep Program-Footnote-1690724 -Node: Id Program690834 -Node: Split Program694478 -Ref: Split Program-Footnote-1697924 -Node: Tee Program698052 -Node: Uniq Program700839 -Node: Wc Program708260 -Ref: Wc Program-Footnote-1712508 -Node: Miscellaneous Programs712600 -Node: Dupword Program713813 -Node: Alarm Program715844 -Node: Translate Program720648 -Ref: Translate Program-Footnote-1725212 -Node: Labels Program725482 -Ref: Labels Program-Footnote-1728831 -Node: Word Sorting728915 -Node: History Sorting732985 -Node: Extract Program734821 -Node: Simple Sed742353 -Node: Igawk Program745415 -Ref: Igawk Program-Footnote-1759741 -Ref: Igawk Program-Footnote-2759942 -Ref: Igawk Program-Footnote-3760064 -Node: Anagram Program760179 -Node: Signature Program763241 -Node: Programs Summary764488 -Node: Programs Exercises765681 -Ref: Programs Exercises-Footnote-1769812 -Node: Advanced Features769903 -Node: Nondecimal Data771851 -Node: Array Sorting773441 -Node: Controlling Array Traversal774138 -Ref: Controlling Array Traversal-Footnote-1782469 -Node: Array Sorting Functions782587 -Ref: Array Sorting Functions-Footnote-1786479 -Node: Two-way I/O786673 -Ref: Two-way I/O-Footnote-1791617 -Ref: Two-way I/O-Footnote-2791803 -Node: TCP/IP Networking791885 -Node: Profiling794757 -Node: Advanced Features Summary802301 -Node: Internationalization804234 -Node: I18N and L10N805714 -Node: Explaining gettext806400 -Ref: Explaining gettext-Footnote-1811429 -Ref: Explaining gettext-Footnote-2811613 -Node: Programmer i18n811778 -Ref: Programmer i18n-Footnote-1816644 -Node: Translator i18n816693 -Node: String Extraction817487 -Ref: String Extraction-Footnote-1818618 -Node: Printf Ordering818704 -Ref: Printf Ordering-Footnote-1821490 -Node: I18N Portability821554 -Ref: I18N Portability-Footnote-1824003 -Node: I18N Example824066 -Ref: I18N Example-Footnote-1826866 -Node: Gawk I18N826938 -Node: I18N Summary827576 -Node: Debugger828915 -Node: Debugging829937 -Node: Debugging Concepts830378 -Node: Debugging Terms832235 -Node: Awk Debugging834810 -Node: Sample Debugging Session835702 -Node: Debugger Invocation836222 -Node: Finding The Bug837606 -Node: List of Debugger Commands844081 -Node: Breakpoint Control845413 -Node: Debugger Execution Control849105 -Node: Viewing And Changing Data852469 -Node: Execution Stack855834 -Node: Debugger Info857472 -Node: Miscellaneous Debugger Commands861489 -Node: Readline Support866681 -Node: Limitations867573 -Node: Debugging Summary869670 -Node: Arbitrary Precision Arithmetic870838 -Node: Computer Arithmetic872254 -Ref: table-numeric-ranges875855 -Ref: Computer Arithmetic-Footnote-1876714 -Node: Math Definitions876771 -Ref: table-ieee-formats880058 -Ref: Math Definitions-Footnote-1880662 -Node: MPFR features880767 -Node: FP Math Caution882438 -Ref: FP Math Caution-Footnote-1883488 -Node: Inexactness of computations883857 -Node: Inexact representation884805 -Node: Comparing FP Values886160 -Node: Errors accumulate887233 -Node: Getting Accuracy888666 -Node: Try To Round891325 -Node: Setting precision892224 -Ref: table-predefined-precision-strings892908 -Node: Setting the rounding mode894702 -Ref: table-gawk-rounding-modes895066 -Ref: Setting the rounding mode-Footnote-1898520 -Node: Arbitrary Precision Integers898699 -Ref: Arbitrary Precision Integers-Footnote-1901690 -Node: POSIX Floating Point Problems901839 -Ref: POSIX Floating Point Problems-Footnote-1905715 -Node: Floating point summary905753 -Node: Dynamic Extensions907945 -Node: Extension Intro909497 -Node: Plugin License910763 -Node: Extension Mechanism Outline911560 -Ref: figure-load-extension911988 -Ref: figure-register-new-function913468 -Ref: figure-call-new-function914472 -Node: Extension API Description916458 -Node: Extension API Functions Introduction917908 -Node: General Data Types922744 -Ref: General Data Types-Footnote-1928431 -Node: Memory Allocation Functions928730 -Ref: Memory Allocation Functions-Footnote-1931560 -Node: Constructor Functions931656 -Node: Registration Functions933390 -Node: Extension Functions934075 -Node: Exit Callback Functions936371 -Node: Extension Version String937619 -Node: Input Parsers938269 -Node: Output Wrappers948084 -Node: Two-way processors952600 -Node: Printing Messages954804 -Ref: Printing Messages-Footnote-1955881 -Node: Updating `ERRNO'956033 -Node: Requesting Values956773 -Ref: table-value-types-returned957501 -Node: Accessing Parameters958459 -Node: Symbol Table Access959690 -Node: Symbol table by name960204 -Node: Symbol table by cookie962184 -Ref: Symbol table by cookie-Footnote-1966323 -Node: Cached values966386 -Ref: Cached values-Footnote-1969890 -Node: Array Manipulation969981 -Ref: Array Manipulation-Footnote-1971079 -Node: Array Data Types971118 -Ref: Array Data Types-Footnote-1973775 -Node: Array Functions973867 -Node: Flattening Arrays977721 -Node: Creating Arrays984608 -Node: Extension API Variables989375 -Node: Extension Versioning990011 -Node: Extension API Informational Variables991912 -Node: Extension API Boilerplate993000 -Node: Finding Extensions996816 -Node: Extension Example997376 -Node: Internal File Description998148 -Node: Internal File Ops1002215 -Ref: Internal File Ops-Footnote-11013873 -Node: Using Internal File Ops1014013 -Ref: Using Internal File Ops-Footnote-11016396 -Node: Extension Samples1016669 -Node: Extension Sample File Functions1018193 -Node: Extension Sample Fnmatch1025795 -Node: Extension Sample Fork1027277 -Node: Extension Sample Inplace1028490 -Node: Extension Sample Ord1030165 -Node: Extension Sample Readdir1031001 -Ref: table-readdir-file-types1031857 -Node: Extension Sample Revout1032668 -Node: Extension Sample Rev2way1033259 -Node: Extension Sample Read write array1034000 -Node: Extension Sample Readfile1035939 -Node: Extension Sample Time1037034 -Node: Extension Sample API Tests1038383 -Node: gawkextlib1038874 -Node: Extension summary1041524 -Node: Extension Exercises1045206 -Node: Language History1045928 -Node: V7/SVR3.11047585 -Node: SVR41049766 -Node: POSIX1051211 -Node: BTL1052600 -Node: POSIX/GNU1053334 -Node: Feature History1058903 -Node: Common Extensions1071994 -Node: Ranges and Locales1073318 -Ref: Ranges and Locales-Footnote-11077957 -Ref: Ranges and Locales-Footnote-21077984 -Ref: Ranges and Locales-Footnote-31078218 -Node: Contributors1078439 -Node: History summary1083979 -Node: Installation1085348 -Node: Gawk Distribution1086304 -Node: Getting1086788 -Node: Extracting1087612 -Node: Distribution contents1089254 -Node: Unix Installation1094971 -Node: Quick Installation1095588 -Node: Additional Configuration Options1098019 -Node: Configuration Philosophy1099759 -Node: Non-Unix Installation1102110 -Node: PC Installation1102568 -Node: PC Binary Installation1103894 -Node: PC Compiling1105742 -Ref: PC Compiling-Footnote-11108763 -Node: PC Testing1108868 -Node: PC Using1110044 -Node: Cygwin1114159 -Node: MSYS1114982 -Node: VMS Installation1115480 -Node: VMS Compilation1116272 -Ref: VMS Compilation-Footnote-11117494 -Node: VMS Dynamic Extensions1117552 -Node: VMS Installation Details1119236 -Node: VMS Running1121488 -Node: VMS GNV1124329 -Node: VMS Old Gawk1125058 -Node: Bugs1125528 -Node: Other Versions1129498 -Node: Installation summary1135711 -Node: Notes1136767 -Node: Compatibility Mode1137632 -Node: Additions1138414 -Node: Accessing The Source1139339 -Node: Adding Code1140775 -Node: New Ports1146947 -Node: Derived Files1151429 -Ref: Derived Files-Footnote-11156904 -Ref: Derived Files-Footnote-21156938 -Ref: Derived Files-Footnote-31157534 -Node: Future Extensions1157648 -Node: Implementation Limitations1158254 -Node: Extension Design1159502 -Node: Old Extension Problems1160656 -Ref: Old Extension Problems-Footnote-11162173 -Node: Extension New Mechanism Goals1162230 -Ref: Extension New Mechanism Goals-Footnote-11165590 -Node: Extension Other Design Decisions1165779 -Node: Extension Future Growth1167887 -Node: Old Extension Mechanism1168723 -Node: Notes summary1170485 -Node: Basic Concepts1171671 -Node: Basic High Level1172352 -Ref: figure-general-flow1172624 -Ref: figure-process-flow1173223 -Ref: Basic High Level-Footnote-11176452 -Node: Basic Data Typing1176637 -Node: Glossary1179965 -Node: Copying1205123 -Node: GNU Free Documentation License1242679 -Node: Index1267815 +Ref: Options-Footnote-1129413 +Node: Other Arguments129438 +Node: Naming Standard Input132399 +Node: Environment Variables133492 +Node: AWKPATH Variable134050 +Ref: AWKPATH Variable-Footnote-1136902 +Ref: AWKPATH Variable-Footnote-2136947 +Node: AWKLIBPATH Variable137207 +Node: Other Environment Variables137966 +Node: Exit Status141439 +Node: Include Files142114 +Node: Loading Shared Libraries145692 +Node: Obsolete147119 +Node: Undocumented147816 +Node: Invoking Summary148083 +Node: Regexp149749 +Node: Regexp Usage151208 +Node: Escape Sequences153241 +Node: Regexp Operators159341 +Ref: Regexp Operators-Footnote-1166775 +Ref: Regexp Operators-Footnote-2166922 +Node: Bracket Expressions167020 +Ref: table-char-classes169037 +Node: Leftmost Longest171977 +Node: Computed Regexps173279 +Node: GNU Regexp Operators176676 +Node: Case-sensitivity180382 +Ref: Case-sensitivity-Footnote-1183272 +Ref: Case-sensitivity-Footnote-2183507 +Node: Regexp Summary183615 +Node: Reading Files185084 +Node: Records187178 +Node: awk split records187910 +Node: gawk split records192824 +Ref: gawk split records-Footnote-1197363 +Node: Fields197400 +Ref: Fields-Footnote-1200198 +Node: Nonconstant Fields200284 +Ref: Nonconstant Fields-Footnote-1202514 +Node: Changing Fields202716 +Node: Field Separators208648 +Node: Default Field Splitting211352 +Node: Regexp Field Splitting212469 +Node: Single Character Fields215819 +Node: Command Line Field Separator216878 +Node: Full Line Fields220090 +Ref: Full Line Fields-Footnote-1220598 +Node: Field Splitting Summary220644 +Ref: Field Splitting Summary-Footnote-1223775 +Node: Constant Size223876 +Node: Splitting By Content228482 +Ref: Splitting By Content-Footnote-1232555 +Node: Multiple Line232595 +Ref: Multiple Line-Footnote-1238484 +Node: Getline238663 +Node: Plain Getline240874 +Node: Getline/Variable243514 +Node: Getline/File244661 +Node: Getline/Variable/File246045 +Ref: Getline/Variable/File-Footnote-1247646 +Node: Getline/Pipe247733 +Node: Getline/Variable/Pipe250416 +Node: Getline/Coprocess251547 +Node: Getline/Variable/Coprocess252799 +Node: Getline Notes253538 +Node: Getline Summary256330 +Ref: table-getline-variants256742 +Node: Read Timeout257571 +Ref: Read Timeout-Footnote-1261385 +Node: Command-line directories261443 +Node: Input Summary262347 +Node: Input Exercises265599 +Node: Printing266327 +Node: Print268104 +Node: Print Examples269561 +Node: Output Separators272340 +Node: OFMT274358 +Node: Printf275712 +Node: Basic Printf276497 +Node: Control Letters278068 +Node: Format Modifiers282052 +Node: Printf Examples288059 +Node: Redirection290541 +Node: Special FD297380 +Ref: Special FD-Footnote-1300537 +Node: Special Files300611 +Node: Other Inherited Files301227 +Node: Special Network302227 +Node: Special Caveats303088 +Node: Close Files And Pipes304039 +Ref: Close Files And Pipes-Footnote-1311218 +Ref: Close Files And Pipes-Footnote-2311366 +Node: Output Summary311516 +Node: Output Exercises312512 +Node: Expressions313192 +Node: Values314377 +Node: Constants315053 +Node: Scalar Constants315733 +Ref: Scalar Constants-Footnote-1316592 +Node: Nondecimal-numbers316842 +Node: Regexp Constants319842 +Node: Using Constant Regexps320367 +Node: Variables323505 +Node: Using Variables324160 +Node: Assignment Options326070 +Node: Conversion327945 +Node: Strings And Numbers328469 +Ref: Strings And Numbers-Footnote-1331533 +Node: Locale influences conversions331642 +Ref: table-locale-affects334357 +Node: All Operators334945 +Node: Arithmetic Ops335575 +Node: Concatenation338080 +Ref: Concatenation-Footnote-1340899 +Node: Assignment Ops341005 +Ref: table-assign-ops345988 +Node: Increment Ops347266 +Node: Truth Values and Conditions350704 +Node: Truth Values351787 +Node: Typing and Comparison352836 +Node: Variable Typing353629 +Node: Comparison Operators357281 +Ref: table-relational-ops357691 +Node: POSIX String Comparison361206 +Ref: POSIX String Comparison-Footnote-1362278 +Node: Boolean Ops362416 +Ref: Boolean Ops-Footnote-1366895 +Node: Conditional Exp366986 +Node: Function Calls368713 +Node: Precedence372593 +Node: Locales376261 +Node: Expressions Summary377892 +Node: Patterns and Actions380466 +Node: Pattern Overview381586 +Node: Regexp Patterns383265 +Node: Expression Patterns383808 +Node: Ranges387588 +Node: BEGIN/END390694 +Node: Using BEGIN/END391456 +Ref: Using BEGIN/END-Footnote-1394193 +Node: I/O And BEGIN/END394299 +Node: BEGINFILE/ENDFILE396613 +Node: Empty399514 +Node: Using Shell Variables399831 +Node: Action Overview402107 +Node: Statements404434 +Node: If Statement406282 +Node: While Statement407780 +Node: Do Statement409808 +Node: For Statement410950 +Node: Switch Statement414105 +Node: Break Statement416493 +Node: Continue Statement418534 +Node: Next Statement420359 +Node: Nextfile Statement422739 +Node: Exit Statement425369 +Node: Built-in Variables427772 +Node: User-modified428905 +Ref: User-modified-Footnote-1436585 +Node: Auto-set436647 +Ref: Auto-set-Footnote-1449841 +Ref: Auto-set-Footnote-2450046 +Node: ARGC and ARGV450102 +Node: Pattern Action Summary454306 +Node: Arrays456733 +Node: Array Basics458062 +Node: Array Intro458906 +Ref: figure-array-elements460879 +Ref: Array Intro-Footnote-1463403 +Node: Reference to Elements463531 +Node: Assigning Elements465981 +Node: Array Example466472 +Node: Scanning an Array468230 +Node: Controlling Scanning471246 +Ref: Controlling Scanning-Footnote-1476435 +Node: Numeric Array Subscripts476751 +Node: Uninitialized Subscripts478936 +Node: Delete480553 +Ref: Delete-Footnote-1483297 +Node: Multidimensional483354 +Node: Multiscanning486449 +Node: Arrays of Arrays488038 +Node: Arrays Summary492799 +Node: Functions494904 +Node: Built-in495777 +Node: Calling Built-in496855 +Node: Numeric Functions498843 +Ref: Numeric Functions-Footnote-1503667 +Ref: Numeric Functions-Footnote-2504024 +Ref: Numeric Functions-Footnote-3504072 +Node: String Functions504341 +Ref: String Functions-Footnote-1527805 +Ref: String Functions-Footnote-2527934 +Ref: String Functions-Footnote-3528182 +Node: Gory Details528269 +Ref: table-sub-escapes530050 +Ref: table-sub-proposed531570 +Ref: table-posix-sub532934 +Ref: table-gensub-escapes534474 +Ref: Gory Details-Footnote-1535306 +Node: I/O Functions535457 +Ref: I/O Functions-Footnote-1542558 +Node: Time Functions542705 +Ref: Time Functions-Footnote-1553174 +Ref: Time Functions-Footnote-2553242 +Ref: Time Functions-Footnote-3553400 +Ref: Time Functions-Footnote-4553511 +Ref: Time Functions-Footnote-5553623 +Ref: Time Functions-Footnote-6553850 +Node: Bitwise Functions554116 +Ref: table-bitwise-ops554678 +Ref: Bitwise Functions-Footnote-1558986 +Node: Type Functions559155 +Node: I18N Functions560304 +Node: User-defined561949 +Node: Definition Syntax562753 +Ref: Definition Syntax-Footnote-1568159 +Node: Function Example568228 +Ref: Function Example-Footnote-1571145 +Node: Function Caveats571167 +Node: Calling A Function571685 +Node: Variable Scope572640 +Node: Pass By Value/Reference575628 +Node: Return Statement579138 +Node: Dynamic Typing582122 +Node: Indirect Calls583051 +Ref: Indirect Calls-Footnote-1594355 +Node: Functions Summary594483 +Node: Library Functions597182 +Ref: Library Functions-Footnote-1600800 +Ref: Library Functions-Footnote-2600943 +Node: Library Names601114 +Ref: Library Names-Footnote-1604574 +Ref: Library Names-Footnote-2604794 +Node: General Functions604880 +Node: Strtonum Function605983 +Node: Assert Function609003 +Node: Round Function612327 +Node: Cliff Random Function613868 +Node: Ordinal Functions614884 +Ref: Ordinal Functions-Footnote-1617949 +Ref: Ordinal Functions-Footnote-2618201 +Node: Join Function618412 +Ref: Join Function-Footnote-1620183 +Node: Getlocaltime Function620383 +Node: Readfile Function624124 +Node: Shell Quoting626094 +Node: Data File Management627495 +Node: Filetrans Function628127 +Node: Rewind Function632186 +Node: File Checking633571 +Ref: File Checking-Footnote-1634899 +Node: Empty Files635100 +Node: Ignoring Assigns637079 +Node: Getopt Function638630 +Ref: Getopt Function-Footnote-1650090 +Node: Passwd Functions650293 +Ref: Passwd Functions-Footnote-1659144 +Node: Group Functions659232 +Ref: Group Functions-Footnote-1667135 +Node: Walking Arrays667348 +Node: Library Functions Summary668951 +Node: Library Exercises670352 +Node: Sample Programs671632 +Node: Running Examples672402 +Node: Clones673130 +Node: Cut Program674354 +Node: Egrep Program684084 +Ref: Egrep Program-Footnote-1691588 +Node: Id Program691698 +Node: Split Program695342 +Ref: Split Program-Footnote-1698788 +Node: Tee Program698916 +Node: Uniq Program701703 +Node: Wc Program709124 +Ref: Wc Program-Footnote-1713372 +Node: Miscellaneous Programs713464 +Node: Dupword Program714677 +Node: Alarm Program716708 +Node: Translate Program721512 +Ref: Translate Program-Footnote-1726076 +Node: Labels Program726346 +Ref: Labels Program-Footnote-1729695 +Node: Word Sorting729779 +Node: History Sorting733849 +Node: Extract Program735685 +Node: Simple Sed743217 +Node: Igawk Program746279 +Ref: Igawk Program-Footnote-1760605 +Ref: Igawk Program-Footnote-2760806 +Ref: Igawk Program-Footnote-3760928 +Node: Anagram Program761043 +Node: Signature Program764105 +Node: Programs Summary765352 +Node: Programs Exercises766545 +Ref: Programs Exercises-Footnote-1770676 +Node: Advanced Features770767 +Node: Nondecimal Data772715 +Node: Array Sorting774305 +Node: Controlling Array Traversal775002 +Ref: Controlling Array Traversal-Footnote-1783333 +Node: Array Sorting Functions783451 +Ref: Array Sorting Functions-Footnote-1787343 +Node: Two-way I/O787537 +Ref: Two-way I/O-Footnote-1792481 +Ref: Two-way I/O-Footnote-2792667 +Node: TCP/IP Networking792749 +Node: Profiling795621 +Node: Advanced Features Summary803174 +Node: Internationalization805107 +Node: I18N and L10N806587 +Node: Explaining gettext807273 +Ref: Explaining gettext-Footnote-1812302 +Ref: Explaining gettext-Footnote-2812486 +Node: Programmer i18n812651 +Ref: Programmer i18n-Footnote-1817517 +Node: Translator i18n817566 +Node: String Extraction818360 +Ref: String Extraction-Footnote-1819491 +Node: Printf Ordering819577 +Ref: Printf Ordering-Footnote-1822363 +Node: I18N Portability822427 +Ref: I18N Portability-Footnote-1824876 +Node: I18N Example824939 +Ref: I18N Example-Footnote-1827739 +Node: Gawk I18N827811 +Node: I18N Summary828449 +Node: Debugger829788 +Node: Debugging830810 +Node: Debugging Concepts831251 +Node: Debugging Terms833108 +Node: Awk Debugging835683 +Node: Sample Debugging Session836575 +Node: Debugger Invocation837095 +Node: Finding The Bug838479 +Node: List of Debugger Commands844954 +Node: Breakpoint Control846286 +Node: Debugger Execution Control849978 +Node: Viewing And Changing Data853342 +Node: Execution Stack856707 +Node: Debugger Info858345 +Node: Miscellaneous Debugger Commands862362 +Node: Readline Support867554 +Node: Limitations868446 +Node: Debugging Summary870543 +Node: Arbitrary Precision Arithmetic871711 +Node: Computer Arithmetic873127 +Ref: table-numeric-ranges876728 +Ref: Computer Arithmetic-Footnote-1877587 +Node: Math Definitions877644 +Ref: table-ieee-formats880931 +Ref: Math Definitions-Footnote-1881535 +Node: MPFR features881640 +Node: FP Math Caution883311 +Ref: FP Math Caution-Footnote-1884361 +Node: Inexactness of computations884730 +Node: Inexact representation885678 +Node: Comparing FP Values887033 +Node: Errors accumulate888106 +Node: Getting Accuracy889539 +Node: Try To Round892198 +Node: Setting precision893097 +Ref: table-predefined-precision-strings893781 +Node: Setting the rounding mode895575 +Ref: table-gawk-rounding-modes895939 +Ref: Setting the rounding mode-Footnote-1899393 +Node: Arbitrary Precision Integers899572 +Ref: Arbitrary Precision Integers-Footnote-1904476 +Node: POSIX Floating Point Problems904625 +Ref: POSIX Floating Point Problems-Footnote-1908501 +Node: Floating point summary908539 +Node: Dynamic Extensions910731 +Node: Extension Intro912283 +Node: Plugin License913549 +Node: Extension Mechanism Outline914346 +Ref: figure-load-extension914774 +Ref: figure-register-new-function916254 +Ref: figure-call-new-function917258 +Node: Extension API Description919244 +Node: Extension API Functions Introduction920694 +Node: General Data Types925530 +Ref: General Data Types-Footnote-1931217 +Node: Memory Allocation Functions931516 +Ref: Memory Allocation Functions-Footnote-1934346 +Node: Constructor Functions934442 +Node: Registration Functions936176 +Node: Extension Functions936861 +Node: Exit Callback Functions939157 +Node: Extension Version String940405 +Node: Input Parsers941055 +Node: Output Wrappers950870 +Node: Two-way processors955386 +Node: Printing Messages957590 +Ref: Printing Messages-Footnote-1958667 +Node: Updating `ERRNO'958819 +Node: Requesting Values959559 +Ref: table-value-types-returned960287 +Node: Accessing Parameters961245 +Node: Symbol Table Access962476 +Node: Symbol table by name962990 +Node: Symbol table by cookie964970 +Ref: Symbol table by cookie-Footnote-1969109 +Node: Cached values969172 +Ref: Cached values-Footnote-1972676 +Node: Array Manipulation972767 +Ref: Array Manipulation-Footnote-1973865 +Node: Array Data Types973904 +Ref: Array Data Types-Footnote-1976561 +Node: Array Functions976653 +Node: Flattening Arrays980507 +Node: Creating Arrays987394 +Node: Extension API Variables992161 +Node: Extension Versioning992797 +Node: Extension API Informational Variables994698 +Node: Extension API Boilerplate995786 +Node: Finding Extensions999602 +Node: Extension Example1000162 +Node: Internal File Description1000934 +Node: Internal File Ops1005001 +Ref: Internal File Ops-Footnote-11016659 +Node: Using Internal File Ops1016799 +Ref: Using Internal File Ops-Footnote-11019182 +Node: Extension Samples1019455 +Node: Extension Sample File Functions1020979 +Node: Extension Sample Fnmatch1028581 +Node: Extension Sample Fork1030063 +Node: Extension Sample Inplace1031276 +Node: Extension Sample Ord1032951 +Node: Extension Sample Readdir1033787 +Ref: table-readdir-file-types1034643 +Node: Extension Sample Revout1035454 +Node: Extension Sample Rev2way1036045 +Node: Extension Sample Read write array1036786 +Node: Extension Sample Readfile1038725 +Node: Extension Sample Time1039820 +Node: Extension Sample API Tests1041169 +Node: gawkextlib1041660 +Node: Extension summary1044310 +Node: Extension Exercises1047992 +Node: Language History1048714 +Node: V7/SVR3.11050371 +Node: SVR41052552 +Node: POSIX1053997 +Node: BTL1055386 +Node: POSIX/GNU1056120 +Node: Feature History1061749 +Node: Common Extensions1074840 +Node: Ranges and Locales1076164 +Ref: Ranges and Locales-Footnote-11080803 +Ref: Ranges and Locales-Footnote-21080830 +Ref: Ranges and Locales-Footnote-31081064 +Node: Contributors1081285 +Node: History summary1086825 +Node: Installation1088194 +Node: Gawk Distribution1089150 +Node: Getting1089634 +Node: Extracting1090458 +Node: Distribution contents1092100 +Node: Unix Installation1097870 +Node: Quick Installation1098487 +Node: Additional Configuration Options1100918 +Node: Configuration Philosophy1102658 +Node: Non-Unix Installation1105009 +Node: PC Installation1105467 +Node: PC Binary Installation1106793 +Node: PC Compiling1108641 +Ref: PC Compiling-Footnote-11111662 +Node: PC Testing1111767 +Node: PC Using1112943 +Node: Cygwin1117058 +Node: MSYS1117881 +Node: VMS Installation1118379 +Node: VMS Compilation1119171 +Ref: VMS Compilation-Footnote-11120393 +Node: VMS Dynamic Extensions1120451 +Node: VMS Installation Details1122135 +Node: VMS Running1124387 +Node: VMS GNV1127228 +Node: VMS Old Gawk1127957 +Node: Bugs1128427 +Node: Other Versions1132397 +Node: Installation summary1138610 +Node: Notes1139666 +Node: Compatibility Mode1140531 +Node: Additions1141313 +Node: Accessing The Source1142238 +Node: Adding Code1143674 +Node: New Ports1149846 +Node: Derived Files1154328 +Ref: Derived Files-Footnote-11159803 +Ref: Derived Files-Footnote-21159837 +Ref: Derived Files-Footnote-31160433 +Node: Future Extensions1160547 +Node: Implementation Limitations1161153 +Node: Extension Design1162401 +Node: Old Extension Problems1163555 +Ref: Old Extension Problems-Footnote-11165072 +Node: Extension New Mechanism Goals1165129 +Ref: Extension New Mechanism Goals-Footnote-11168489 +Node: Extension Other Design Decisions1168678 +Node: Extension Future Growth1170786 +Node: Old Extension Mechanism1171622 +Node: Notes summary1173384 +Node: Basic Concepts1174570 +Node: Basic High Level1175251 +Ref: figure-general-flow1175523 +Ref: figure-process-flow1176122 +Ref: Basic High Level-Footnote-11179351 +Node: Basic Data Typing1179536 +Node: Glossary1182864 +Node: Copying1208022 +Node: GNU Free Documentation License1245578 +Node: Index1270714 End Tag Table |