gawk-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[gawk-diffs] [SCM] gawk branch, gawk-4.2-stable, updated. gawk-4.1.0-310


From: Arnold Robbins
Subject: [gawk-diffs] [SCM] gawk branch, gawk-4.2-stable, updated. gawk-4.1.0-3107-gfe85aef
Date: Mon, 14 Jan 2019 13:55:35 -0500 (EST)

This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "gawk".

The branch, gawk-4.2-stable has been updated
       via  fe85aef5cc3e31450c6850c996aa348a68c42ca7 (commit)
       via  63a31bee666a9bf9e37eda447f7742b07917dc74 (commit)
      from  5ba504111dee165e033b3a9087c13ffca2b30302 (commit)

Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.

- Log -----------------------------------------------------------------
http://git.sv.gnu.org/cgit/gawk.git/commit/?id=fe85aef5cc3e31450c6850c996aa348a68c42ca7

commit fe85aef5cc3e31450c6850c996aa348a68c42ca7
Author: Arnold D. Robbins <address@hidden>
Date:   Mon Jan 14 20:55:12 2019 +0200

    Indexing and minor doc improvements.

diff --git a/doc/ChangeLog b/doc/ChangeLog
index 09d5f94..1c74038 100644
--- a/doc/ChangeLog
+++ b/doc/ChangeLog
@@ -1,3 +1,8 @@
+2019-01-14         Arnold D. Robbins     <address@hidden>
+
+       * gawktexi.in: More work on the indexing.
+       Document that `-f -' works to read source code from stdin.
+
 2019-01-13         Arnold D. Robbins     <address@hidden>
 
        * gawktexi.in: Work on the indexing.
diff --git a/doc/gawk.info b/doc/gawk.info
index d182b64..3c269ba 100644
--- a/doc/gawk.info
+++ b/doc/gawk.info
@@ -2921,7 +2921,9 @@ Here, 'awk' first reads 'file1', then it reads the output 
of
 SOME_COMMAND, and finally it reads 'file2'.
 
    You may also use '"-"' to name standard input when reading files with
-'getline' (*note Getline/File::).
+'getline' (*note Getline/File::).  And, you can even use '"-"' with the
+'-f' option to read program source code from standard input (*note
+Options::).
 
    In addition, 'gawk' allows you to specify the special file name
 '/dev/stdin', both on the command line and with 'getline'.  Some other
@@ -34186,9 +34188,13 @@ Index
                                                               (line  26)
 * differences in awk and gawk, retrying input: Retrying Input.
                                                               (line   6)
-* differences in awk and gawk, RS/RT variables: gawk split records.
+* differences in awk and gawk, RS/RT variables: awk split records.
+                                                              (line 131)
+* differences in awk and gawk, RS/RT variables <1>: gawk split records.
                                                               (line  58)
-* differences in awk and gawk, RS/RT variables <1>: Auto-set. (line 327)
+* differences in awk and gawk, RS/RT variables <2>: Multiple Line.
+                                                              (line 130)
+* differences in awk and gawk, RS/RT variables <3>: Auto-set. (line 327)
 * differences in awk and gawk, single-character fields: Single Character 
Fields.
                                                               (line   6)
 * differences in awk and gawk, split() function: String Functions.
@@ -34706,8 +34712,9 @@ Index
                                                               (line   6)
 * 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 <1>:              gawk split records.  (line  58)
+* gawk, RT variable in <2>:              Multiple Line.       (line 130)
+* gawk, RT variable in <3>:              Auto-set.            (line 327)
 * gawk, See Also awk:                    Preface.             (line  34)
 * gawk, source code, obtaining:          Getting.             (line   6)
 * gawk, splitting fields and:            Testing field creation.
@@ -35093,12 +35100,11 @@ Index
 * mailing labels, printing:              Labels Program.      (line   6)
 * mailing list, GNITS:                   Acknowledgments.     (line  52)
 * Malmberg, John:                        Acknowledgments.     (line  60)
-* Malmberg, John <1>:                    Maintainers.         (line  14)
-* Malmberg, John E.:                     Contributors.        (line 140)
+* Malmberg, John <1>:                    Contributors.        (line 140)
+* Malmberg, John <2>:                    Maintainers.         (line  14)
 * mark parity:                           Ordinal Functions.   (line  45)
 * marked string extraction (internationalization): String Extraction.
                                                               (line   6)
-* marked strings, extracting:            String Extraction.   (line   6)
 * Marx, Groucho:                         Increment Ops.       (line  60)
 * match:                                 String Functions.    (line 211)
 * match regexp in string:                String Functions.    (line 211)
@@ -35201,13 +35207,13 @@ Index
                                                               (line  21)
 * null strings, deleting array elements and: Delete.          (line  27)
 * null strings, matching:                String Functions.    (line 542)
-* number as string of bits:              Bitwise Functions.   (line 109)
 * number of array elements:              String Functions.    (line 201)
 * number sign (#), #! (executable scripts): Executable Scripts.
                                                               (line   6)
 * number sign (#), commenting:           Comments.            (line   6)
 * numbers, as array subscripts:          Numeric Array Subscripts.
                                                               (line   6)
+* numbers, as string of bits:            Bitwise Functions.   (line 109)
 * numbers, as values of characters:      Ordinal Functions.   (line   6)
 * numbers, Cliff random:                 Cliff Random Function.
                                                               (line   6)
@@ -35260,8 +35266,8 @@ Index
 * operators, input/output <6>:           Precedence.          (line  64)
 * operators, input/output <7>:           Precedence.          (line  64)
 * operators, logical, See Boolean expressions: Boolean Ops.   (line   6)
-* operators, precedence:                 Increment Ops.       (line  60)
-* operators, precedence <1>:             Precedence.          (line   6)
+* operators, precedence:                 Precedence.          (line   6)
+* operators, precedence of:              Increment Ops.       (line  60)
 * operators, relational, See operators, comparison: Typing and Comparison.
                                                               (line   9)
 * operators, short-circuit:              Boolean Ops.         (line  59)
@@ -35520,6 +35526,7 @@ Index
 * programming languages, Ada:            Glossary.            (line  11)
 * programming languages, data-driven vs. procedural: Getting Started.
                                                               (line  12)
+* programming languages, Go:             Other Versions.      (line 113)
 * programming languages, Java:           Glossary.            (line 466)
 * programming, basic steps:              Basic High Level.    (line  18)
 * programming, concepts:                 Basic Concepts.      (line   6)
@@ -35537,9 +35544,9 @@ Index
 * quit debugger command:                 Miscellaneous Debugger Commands.
                                                               (line 100)
 * QUIT signal (MS-Windows):              Profiling.           (line 212)
-* 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)
+* quoting, in gawk command lines:        Long.                (line  26)
+* quoting, in gawk command lines, tricks for: Quoting.        (line  91)
 * r debugger command (alias for run):    Debugger Execution Control.
                                                               (line  62)
 * Rakitzis, Byron:                       History Sorting.     (line  25)
@@ -35604,9 +35611,9 @@ Index
 * register extension:                    Registration Functions.
                                                               (line   6)
 * regular expressions:                   Regexp.              (line   6)
-* regular expressions as field separators: Field Separators.  (line  50)
 * regular expressions, anchors in:       Regexp Operators.    (line  22)
-* regular expressions, as field separators: Regexp Field Splitting.
+* regular expressions, as field separators: Field Separators. (line  50)
+* regular expressions, as field separators <1>: Regexp Field Splitting.
                                                               (line   6)
 * regular expressions, as patterns:      Regexp Usage.        (line   6)
 * regular expressions, as patterns <1>:  Regexp Patterns.     (line   6)
@@ -35694,8 +35701,9 @@ Index
 * RSTART variable:                       Auto-set.            (line 320)
 * 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 <1>:                       gawk split records.  (line  58)
+* RT variable <2>:                       Multiple Line.       (line 130)
+* RT variable <3>:                       Auto-set.            (line 327)
 * Rubin, Paul:                           History.             (line  30)
 * Rubin, Paul <1>:                       Contributors.        (line  16)
 * rule, definition of:                   Getting Started.     (line  21)
@@ -35890,7 +35898,6 @@ Index
 * split.awk program:                     Split Program.       (line  30)
 * sprintf:                               OFMT.                (line  15)
 * sprintf <1>:                           String Functions.    (line 389)
-* sprintf() function, OFMT variable and: User-modified.       (line 116)
 * sprintf() function, print/printf statements and: Round Function.
                                                               (line   6)
 * sqrt:                                  Numeric Functions.   (line  78)
@@ -36120,6 +36127,8 @@ Index
 * users, information about, retrieving:  Passwd Functions.    (line  16)
 * USR1 signal, for dynamic profiling:    Profiling.           (line 186)
 * values, numeric:                       Basic Data Typing.   (line  13)
+* values, regexp:                        Strong Regexp Constants.
+                                                              (line  24)
 * values, string:                        Basic Data Typing.   (line  13)
 * variable assignments and input files:  Other Arguments.     (line  26)
 * variable type:                         Type Functions.      (line  14)
@@ -36142,8 +36151,8 @@ Index
 * variables, initializing:               Using Variables.     (line  23)
 * variables, local to a function:        Variable Scope.      (line   6)
 * variables, predefined:                 Built-in Variables.  (line   6)
-* variables, predefined -v option, setting with: Options.     (line  41)
-* variables, predefined conveying information: Auto-set.      (line   6)
+* variables, predefined, -v option, setting with: Options.    (line  41)
+* variables, predefined, conveying information: Auto-set.     (line   6)
 * variables, private:                    Library Names.       (line  11)
 * variables, setting:                    Options.             (line  32)
 * variables, shadowing:                  Definition Syntax.   (line  77)
@@ -36185,7 +36194,6 @@ Index
 * wc.awk program:                        Wc Program.          (line  46)
 * Weinberger, Peter:                     History.             (line  17)
 * Weinberger, Peter <1>:                 Contributors.        (line  12)
-* where debugger command:                Execution Stack.     (line  13)
 * where debugger command (alias for backtrace): Execution Stack.
                                                               (line  13)
 * while statement:                       While Statement.     (line   6)
@@ -36267,539 +36275,539 @@ Ref: Options-Footnote-1134953
 Ref: Options-Footnote-2135184
 Node: Other Arguments135209
 Node: Naming Standard Input138156
-Node: Environment Variables139249
-Node: AWKPATH Variable139807
-Ref: AWKPATH Variable-Footnote-1143219
-Ref: AWKPATH Variable-Footnote-2143253
-Node: AWKLIBPATH Variable143514
-Node: Other Environment Variables145172
-Node: Exit Status148993
-Node: Include Files149670
-Node: Loading Shared Libraries153195
-Node: Obsolete154623
-Node: Undocumented155315
-Node: Invoking Summary155612
-Node: Regexp157272
-Node: Regexp Usage158726
-Node: Escape Sequences160763
-Node: Regexp Operators166995
-Ref: Regexp Operators-Footnote-1174411
-Ref: Regexp Operators-Footnote-2174558
-Node: Bracket Expressions174656
-Ref: table-char-classes177132
-Node: Leftmost Longest180458
-Node: Computed Regexps181761
-Node: GNU Regexp Operators185188
-Node: Case-sensitivity188867
-Ref: Case-sensitivity-Footnote-1191754
-Ref: Case-sensitivity-Footnote-2191989
-Node: Regexp Summary192097
-Node: Reading Files193563
-Node: Records195832
-Node: awk split records196907
-Node: gawk split records202182
-Ref: gawk split records-Footnote-1206768
-Node: Fields206805
-Node: Nonconstant Fields209546
-Ref: Nonconstant Fields-Footnote-1211782
-Node: Changing Fields211986
-Node: Field Separators218017
-Node: Default Field Splitting220715
-Node: Regexp Field Splitting221833
-Node: Single Character Fields225186
-Node: Command Line Field Separator226246
-Node: Full Line Fields229464
-Ref: Full Line Fields-Footnote-1230986
-Ref: Full Line Fields-Footnote-2231032
-Node: Field Splitting Summary231133
-Node: Constant Size233207
-Node: Fixed width data233939
-Node: Skipping intervening237406
-Node: Allowing trailing data238204
-Node: Fields with fixed data239241
-Node: Splitting By Content240759
-Ref: Splitting By Content-Footnote-1244409
-Node: Testing field creation244572
-Node: Multiple Line246197
-Ref: Multiple Line-Footnote-1252081
-Node: Getline252260
-Node: Plain Getline254729
-Node: Getline/Variable257370
-Node: Getline/File258521
-Node: Getline/Variable/File259909
-Ref: Getline/Variable/File-Footnote-1261514
-Node: Getline/Pipe261602
-Node: Getline/Variable/Pipe264309
-Node: Getline/Coprocess265444
-Node: Getline/Variable/Coprocess266711
-Node: Getline Notes267453
-Node: Getline Summary270250
-Ref: table-getline-variants270674
-Node: Read Timeout271422
-Ref: Read Timeout-Footnote-1275328
-Node: Retrying Input275386
-Node: Command-line directories276585
-Node: Input Summary277491
-Node: Input Exercises280663
-Node: Printing281391
-Node: Print283225
-Node: Print Examples284682
-Node: Output Separators287462
-Node: OFMT289479
-Node: Printf290835
-Node: Basic Printf291620
-Node: Control Letters293194
-Node: Format Modifiers298356
-Node: Printf Examples304371
-Node: Redirection306857
-Node: Special FD313698
-Ref: Special FD-Footnote-1316866
-Node: Special Files316940
-Node: Other Inherited Files317557
-Node: Special Network318558
-Node: Special Caveats319418
-Node: Close Files And Pipes320367
-Ref: table-close-pipe-return-values327274
-Ref: Close Files And Pipes-Footnote-1328087
-Ref: Close Files And Pipes-Footnote-2328235
-Node: Nonfatal328387
-Node: Output Summary330725
-Node: Output Exercises331947
-Node: Expressions332626
-Node: Values333814
-Node: Constants334492
-Node: Scalar Constants335183
-Ref: Scalar Constants-Footnote-1337708
-Node: Nondecimal-numbers337958
-Node: Regexp Constants340959
-Node: Using Constant Regexps341485
-Node: Standard Regexp Constants342107
-Node: Strong Regexp Constants345295
-Node: Variables348253
-Node: Using Variables348910
-Node: Assignment Options350820
-Node: Conversion353287
-Node: Strings And Numbers353811
-Ref: Strings And Numbers-Footnote-1356874
-Node: Locale influences conversions356983
-Ref: table-locale-affects359741
-Node: All Operators360359
-Node: Arithmetic Ops360988
-Node: Concatenation363494
-Ref: Concatenation-Footnote-1366341
-Node: Assignment Ops366448
-Ref: table-assign-ops371439
-Node: Increment Ops372752
-Node: Truth Values and Conditions376212
-Node: Truth Values377286
-Node: Typing and Comparison378334
-Node: Variable Typing379154
-Ref: Variable Typing-Footnote-1385617
-Ref: Variable Typing-Footnote-2385689
-Node: Comparison Operators385766
-Ref: table-relational-ops386185
-Node: POSIX String Comparison389680
-Ref: POSIX String Comparison-Footnote-1391375
-Ref: POSIX String Comparison-Footnote-2391514
-Node: Boolean Ops391598
-Ref: Boolean Ops-Footnote-1396080
-Node: Conditional Exp396172
-Node: Function Calls397908
-Node: Precedence401785
-Node: Locales405444
-Node: Expressions Summary407076
-Node: Patterns and Actions409649
-Node: Pattern Overview410769
-Node: Regexp Patterns412446
-Node: Expression Patterns412988
-Node: Ranges416769
-Node: BEGIN/END419877
-Node: Using BEGIN/END420638
-Ref: Using BEGIN/END-Footnote-1423374
-Node: I/O And BEGIN/END423480
-Node: BEGINFILE/ENDFILE425794
-Node: Empty428707
-Node: Using Shell Variables429024
-Node: Action Overview431298
-Node: Statements433623
-Node: If Statement435471
-Node: While Statement436966
-Node: Do Statement438994
-Node: For Statement440142
-Node: Switch Statement443313
-Node: Break Statement445699
-Node: Continue Statement447791
-Node: Next Statement449618
-Node: Nextfile Statement452001
-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-1835797
-Ref: Two-way I/O-Footnote-2835984
-Node: TCP/IP Networking836066
-Node: Profiling839184
-Ref: Profiling-Footnote-1847869
-Node: Advanced Features Summary848192
-Node: Internationalization850036
-Node: I18N and L10N851516
-Node: Explaining gettext852203
-Ref: Explaining gettext-Footnote-1858095
-Ref: Explaining gettext-Footnote-2858280
-Node: Programmer i18n858445
-Ref: Programmer i18n-Footnote-1863394
-Node: Translator i18n863443
-Node: String Extraction864237
-Ref: String Extraction-Footnote-1865369
-Node: Printf Ordering865455
-Ref: Printf Ordering-Footnote-1868241
-Node: I18N Portability868305
-Ref: I18N Portability-Footnote-1870761
-Node: I18N Example870824
-Ref: I18N Example-Footnote-1874099
-Ref: I18N Example-Footnote-2874172
-Node: Gawk I18N874281
-Node: I18N Summary874926
-Node: Debugger876267
-Node: Debugging877287
-Node: Debugging Concepts877728
-Node: Debugging Terms879537
-Node: Awk Debugging882112
-Ref: Awk Debugging-Footnote-1883057
-Node: Sample Debugging Session883189
-Node: Debugger Invocation883723
-Node: Finding The Bug885109
-Node: List of Debugger Commands891583
-Node: Breakpoint Control892916
-Node: Debugger Execution Control896610
-Node: Viewing And Changing Data899972
-Node: Execution Stack903346
-Node: Debugger Info904983
-Node: Miscellaneous Debugger Commands909054
-Node: Readline Support914116
-Node: Limitations915012
-Node: Debugging Summary917121
-Node: Arbitrary Precision Arithmetic918400
-Node: Computer Arithmetic919885
-Ref: table-numeric-ranges923651
-Ref: table-floating-point-ranges924144
-Ref: Computer Arithmetic-Footnote-1924802
-Node: Math Definitions924859
-Ref: table-ieee-formats928175
-Ref: Math Definitions-Footnote-1928778
-Node: MPFR features928883
-Node: FP Math Caution930601
-Ref: FP Math Caution-Footnote-1931673
-Node: Inexactness of computations932042
-Node: Inexact representation933002
-Node: Comparing FP Values934362
-Node: Errors accumulate935603
-Node: Getting Accuracy937036
-Node: Try To Round939746
-Node: Setting precision940645
-Ref: table-predefined-precision-strings941342
-Node: Setting the rounding mode943172
-Ref: table-gawk-rounding-modes943546
-Ref: Setting the rounding mode-Footnote-1947477
-Node: Arbitrary Precision Integers947656
-Ref: Arbitrary Precision Integers-Footnote-1950831
-Node: Checking for MPFR950980
-Node: POSIX Floating Point Problems952454
-Ref: POSIX Floating Point Problems-Footnote-1956739
-Node: Floating point summary956777
-Node: Dynamic Extensions958967
-Node: Extension Intro960520
-Node: Plugin License961786
-Node: Extension Mechanism Outline962583
-Ref: figure-load-extension963022
-Ref: figure-register-new-function964587
-Ref: figure-call-new-function965679
-Node: Extension API Description967741
-Node: Extension API Functions Introduction969383
-Node: General Data Types974923
-Ref: General Data Types-Footnote-1983284
-Node: Memory Allocation Functions983583
-Ref: Memory Allocation Functions-Footnote-1987793
-Node: Constructor Functions987892
-Node: Registration Functions991478
-Node: Extension Functions992163
-Node: Exit Callback Functions997378
-Node: Extension Version String998628
-Node: Input Parsers999291
-Node: Output Wrappers1012012
-Node: Two-way processors1016524
-Node: Printing Messages1018789
-Ref: Printing Messages-Footnote-11019960
-Node: Updating ERRNO1020113
-Node: Requesting Values1020852
-Ref: table-value-types-returned1021589
-Node: Accessing Parameters1022525
-Node: Symbol Table Access1023760
-Node: Symbol table by name1024272
-Node: Symbol table by cookie1026061
-Ref: Symbol table by cookie-Footnote-11030246
-Node: Cached values1030310
-Ref: Cached values-Footnote-11033846
-Node: Array Manipulation1033999
-Ref: Array Manipulation-Footnote-11035090
-Node: Array Data Types1035127
-Ref: Array Data Types-Footnote-11037785
-Node: Array Functions1037877
-Node: Flattening Arrays1042375
-Node: Creating Arrays1049351
-Node: Redirection API1054118
-Node: Extension API Variables1056951
-Node: Extension Versioning1057662
-Ref: gawk-api-version1058091
-Node: Extension GMP/MPFR Versioning1059822
-Node: Extension API Informational Variables1061450
-Node: Extension API Boilerplate1062523
-Node: Changes from API V11066497
-Node: Finding Extensions1068069
-Node: Extension Example1068628
-Node: Internal File Description1069426
-Node: Internal File Ops1073506
-Ref: Internal File Ops-Footnote-11084856
-Node: Using Internal File Ops1084996
-Ref: Using Internal File Ops-Footnote-11087379
-Node: Extension Samples1087653
-Node: Extension Sample File Functions1089182
-Node: Extension Sample Fnmatch1096831
-Node: Extension Sample Fork1098318
-Node: Extension Sample Inplace1099536
-Node: Extension Sample Ord1102753
-Node: Extension Sample Readdir1103589
-Ref: table-readdir-file-types1104478
-Node: Extension Sample Revout1105283
-Node: Extension Sample Rev2way1105872
-Node: Extension Sample Read write array1106612
-Node: Extension Sample Readfile1108554
-Node: Extension Sample Time1109649
-Node: Extension Sample API Tests1110997
-Node: gawkextlib1111489
-Node: Extension summary1114407
-Node: Extension Exercises1118109
-Node: Language History1119607
-Node: V7/SVR3.11121263
-Node: SVR41123415
-Node: POSIX1124849
-Node: BTL1126229
-Node: POSIX/GNU1126958
-Node: Feature History1132736
-Node: Common Extensions1148595
-Node: Ranges and Locales1149878
-Ref: Ranges and Locales-Footnote-11154494
-Ref: Ranges and Locales-Footnote-21154521
-Ref: Ranges and Locales-Footnote-31154756
-Node: Contributors1154977
-Node: History summary1160922
-Node: Installation1162302
-Node: Gawk Distribution1163246
-Node: Getting1163730
-Node: Extracting1164693
-Node: Distribution contents1166331
-Node: Unix Installation1172811
-Node: Quick Installation1173493
-Node: Shell Startup Files1175907
-Node: Additional Configuration Options1176996
-Node: Configuration Philosophy1179289
-Node: Non-Unix Installation1181658
-Node: PC Installation1182118
-Node: PC Binary Installation1182956
-Node: PC Compiling1183391
-Node: PC Using1184508
-Node: Cygwin1187723
-Node: MSYS1188822
-Node: VMS Installation1189323
-Node: VMS Compilation1190114
-Ref: VMS Compilation-Footnote-11191343
-Node: VMS Dynamic Extensions1191401
-Node: VMS Installation Details1193086
-Node: VMS Running1195339
-Node: VMS GNV1199618
-Node: VMS Old Gawk1200353
-Node: Bugs1200824
-Node: Bug address1201487
-Node: Usenet1204469
-Node: Maintainers1205473
-Node: Other Versions1206734
-Node: Installation summary1213648
-Node: Notes1214850
-Node: Compatibility Mode1215644
-Node: Additions1216426
-Node: Accessing The Source1217351
-Node: Adding Code1218788
-Node: New Ports1225007
-Node: Derived Files1229495
-Ref: Derived Files-Footnote-11235141
-Ref: Derived Files-Footnote-21235176
-Ref: Derived Files-Footnote-31235774
-Node: Future Extensions1235888
-Node: Implementation Limitations1236546
-Node: Extension Design1237729
-Node: Old Extension Problems1238873
-Ref: Old Extension Problems-Footnote-11240391
-Node: Extension New Mechanism Goals1240448
-Ref: Extension New Mechanism Goals-Footnote-11243812
-Node: Extension Other Design Decisions1244001
-Node: Extension Future Growth1246114
-Node: Notes summary1246950
-Node: Basic Concepts1248125
-Node: Basic High Level1248806
-Ref: figure-general-flow1249088
-Ref: figure-process-flow1249773
-Ref: Basic High Level-Footnote-11253074
-Node: Basic Data Typing1253259
-Node: Glossary1256587
-Node: Copying1288425
-Node: GNU Free Documentation License1325968
-Node: Index1351088
+Node: Environment Variables139366
+Node: AWKPATH Variable139924
+Ref: AWKPATH Variable-Footnote-1143336
+Ref: AWKPATH Variable-Footnote-2143370
+Node: AWKLIBPATH Variable143631
+Node: Other Environment Variables145289
+Node: Exit Status149110
+Node: Include Files149787
+Node: Loading Shared Libraries153312
+Node: Obsolete154740
+Node: Undocumented155432
+Node: Invoking Summary155729
+Node: Regexp157389
+Node: Regexp Usage158843
+Node: Escape Sequences160880
+Node: Regexp Operators167112
+Ref: Regexp Operators-Footnote-1174528
+Ref: Regexp Operators-Footnote-2174675
+Node: Bracket Expressions174773
+Ref: table-char-classes177249
+Node: Leftmost Longest180575
+Node: Computed Regexps181878
+Node: GNU Regexp Operators185305
+Node: Case-sensitivity188984
+Ref: Case-sensitivity-Footnote-1191871
+Ref: Case-sensitivity-Footnote-2192106
+Node: Regexp Summary192214
+Node: Reading Files193680
+Node: Records195949
+Node: awk split records197024
+Node: gawk split records202299
+Ref: gawk split records-Footnote-1206885
+Node: Fields206922
+Node: Nonconstant Fields209663
+Ref: Nonconstant Fields-Footnote-1211899
+Node: Changing Fields212103
+Node: Field Separators218134
+Node: Default Field Splitting220832
+Node: Regexp Field Splitting221950
+Node: Single Character Fields225303
+Node: Command Line Field Separator226363
+Node: Full Line Fields229581
+Ref: Full Line Fields-Footnote-1231103
+Ref: Full Line Fields-Footnote-2231149
+Node: Field Splitting Summary231250
+Node: Constant Size233324
+Node: Fixed width data234056
+Node: Skipping intervening237523
+Node: Allowing trailing data238321
+Node: Fields with fixed data239358
+Node: Splitting By Content240876
+Ref: Splitting By Content-Footnote-1244526
+Node: Testing field creation244689
+Node: Multiple Line246314
+Ref: Multiple Line-Footnote-1252198
+Node: Getline252377
+Node: Plain Getline254846
+Node: Getline/Variable257487
+Node: Getline/File258638
+Node: Getline/Variable/File260026
+Ref: Getline/Variable/File-Footnote-1261631
+Node: Getline/Pipe261719
+Node: Getline/Variable/Pipe264426
+Node: Getline/Coprocess265561
+Node: Getline/Variable/Coprocess266828
+Node: Getline Notes267570
+Node: Getline Summary270367
+Ref: table-getline-variants270791
+Node: Read Timeout271539
+Ref: Read Timeout-Footnote-1275445
+Node: Retrying Input275503
+Node: Command-line directories276702
+Node: Input Summary277608
+Node: Input Exercises280780
+Node: Printing281508
+Node: Print283342
+Node: Print Examples284799
+Node: Output Separators287579
+Node: OFMT289596
+Node: Printf290952
+Node: Basic Printf291737
+Node: Control Letters293311
+Node: Format Modifiers298473
+Node: Printf Examples304488
+Node: Redirection306974
+Node: Special FD313815
+Ref: Special FD-Footnote-1316983
+Node: Special Files317057
+Node: Other Inherited Files317674
+Node: Special Network318675
+Node: Special Caveats319535
+Node: Close Files And Pipes320484
+Ref: table-close-pipe-return-values327391
+Ref: Close Files And Pipes-Footnote-1328204
+Ref: Close Files And Pipes-Footnote-2328352
+Node: Nonfatal328504
+Node: Output Summary330842
+Node: Output Exercises332064
+Node: Expressions332743
+Node: Values333931
+Node: Constants334609
+Node: Scalar Constants335300
+Ref: Scalar Constants-Footnote-1337825
+Node: Nondecimal-numbers338075
+Node: Regexp Constants341076
+Node: Using Constant Regexps341602
+Node: Standard Regexp Constants342224
+Node: Strong Regexp Constants345412
+Node: Variables348370
+Node: Using Variables349027
+Node: Assignment Options350937
+Node: Conversion353404
+Node: Strings And Numbers353928
+Ref: Strings And Numbers-Footnote-1356991
+Node: Locale influences conversions357100
+Ref: table-locale-affects359858
+Node: All Operators360476
+Node: Arithmetic Ops361105
+Node: Concatenation363611
+Ref: Concatenation-Footnote-1366458
+Node: Assignment Ops366565
+Ref: table-assign-ops371556
+Node: Increment Ops372869
+Node: Truth Values and Conditions376329
+Node: Truth Values377403
+Node: Typing and Comparison378451
+Node: Variable Typing379271
+Ref: Variable Typing-Footnote-1385734
+Ref: Variable Typing-Footnote-2385806
+Node: Comparison Operators385883
+Ref: table-relational-ops386302
+Node: POSIX String Comparison389797
+Ref: POSIX String Comparison-Footnote-1391492
+Ref: POSIX String Comparison-Footnote-2391631
+Node: Boolean Ops391715
+Ref: Boolean Ops-Footnote-1396197
+Node: Conditional Exp396289
+Node: Function Calls398025
+Node: Precedence401902
+Node: Locales405561
+Node: Expressions Summary407193
+Node: Patterns and Actions409766
+Node: Pattern Overview410886
+Node: Regexp Patterns412563
+Node: Expression Patterns413105
+Node: Ranges416886
+Node: BEGIN/END419994
+Node: Using BEGIN/END420755
+Ref: Using BEGIN/END-Footnote-1423491
+Node: I/O And BEGIN/END423597
+Node: BEGINFILE/ENDFILE425911
+Node: Empty428824
+Node: Using Shell Variables429141
+Node: Action Overview431415
+Node: Statements433740
+Node: If Statement435588
+Node: While Statement437083
+Node: Do Statement439111
+Node: For Statement440259
+Node: Switch Statement443430
+Node: Break Statement445816
+Node: Continue Statement447908
+Node: Next Statement449735
+Node: Nextfile Statement452118
+Node: Exit Statement454770
+Node: Built-in Variables457173
+Node: User-modified458306
+Node: Auto-set466073
+Ref: Auto-set-Footnote-1482375
+Ref: Auto-set-Footnote-2482581
+Node: ARGC and ARGV482637
+Node: Pattern Action Summary486850
+Node: Arrays489280
+Node: Array Basics490609
+Node: Array Intro491453
+Ref: figure-array-elements493428
+Ref: Array Intro-Footnote-1496132
+Node: Reference to Elements496260
+Node: Assigning Elements498724
+Node: Array Example499215
+Node: Scanning an Array500974
+Node: Controlling Scanning503996
+Ref: Controlling Scanning-Footnote-1509395
+Node: Numeric Array Subscripts509711
+Node: Uninitialized Subscripts511895
+Node: Delete513514
+Ref: Delete-Footnote-1516266
+Node: Multidimensional516323
+Node: Multiscanning519418
+Node: Arrays of Arrays521009
+Node: Arrays Summary525777
+Node: Functions527870
+Node: Built-in528908
+Node: Calling Built-in529989
+Node: Numeric Functions531985
+Ref: Numeric Functions-Footnote-1536013
+Ref: Numeric Functions-Footnote-2536370
+Ref: Numeric Functions-Footnote-3536418
+Node: String Functions536690
+Ref: String Functions-Footnote-1560548
+Ref: String Functions-Footnote-2560676
+Ref: String Functions-Footnote-3560924
+Node: Gory Details561011
+Ref: table-sub-escapes562802
+Ref: table-sub-proposed564321
+Ref: table-posix-sub565684
+Ref: table-gensub-escapes567225
+Ref: Gory Details-Footnote-1568048
+Node: I/O Functions568202
+Ref: table-system-return-values574670
+Ref: I/O Functions-Footnote-1576750
+Ref: I/O Functions-Footnote-2576898
+Node: Time Functions577018
+Ref: Time Functions-Footnote-1587689
+Ref: Time Functions-Footnote-2587757
+Ref: Time Functions-Footnote-3587915
+Ref: Time Functions-Footnote-4588026
+Ref: Time Functions-Footnote-5588138
+Ref: Time Functions-Footnote-6588365
+Node: Bitwise Functions588631
+Ref: table-bitwise-ops589225
+Ref: Bitwise Functions-Footnote-1595288
+Ref: Bitwise Functions-Footnote-2595461
+Node: Type Functions595652
+Node: I18N Functions598403
+Node: User-defined600054
+Node: Definition Syntax600859
+Ref: Definition Syntax-Footnote-1606546
+Node: Function Example606617
+Ref: Function Example-Footnote-1609539
+Node: Function Caveats609561
+Node: Calling A Function610079
+Node: Variable Scope611037
+Node: Pass By Value/Reference614031
+Node: Return Statement617530
+Node: Dynamic Typing620509
+Node: Indirect Calls621439
+Ref: Indirect Calls-Footnote-1631691
+Node: Functions Summary631819
+Node: Library Functions634524
+Ref: Library Functions-Footnote-1638131
+Ref: Library Functions-Footnote-2638274
+Node: Library Names638445
+Ref: Library Names-Footnote-1641905
+Ref: Library Names-Footnote-2642128
+Node: General Functions642214
+Node: Strtonum Function643317
+Node: Assert Function646339
+Node: Round Function649665
+Node: Cliff Random Function651205
+Node: Ordinal Functions652221
+Ref: Ordinal Functions-Footnote-1655284
+Ref: Ordinal Functions-Footnote-2655536
+Node: Join Function655746
+Ref: Join Function-Footnote-1657516
+Node: Getlocaltime Function657716
+Node: Readfile Function661458
+Node: Shell Quoting663435
+Node: Data File Management664836
+Node: Filetrans Function665468
+Node: Rewind Function669564
+Node: File Checking671474
+Ref: File Checking-Footnote-1672808
+Node: Empty Files673009
+Node: Ignoring Assigns674988
+Node: Getopt Function676538
+Ref: Getopt Function-Footnote-1688007
+Node: Passwd Functions688207
+Ref: Passwd Functions-Footnote-1697046
+Node: Group Functions697134
+Ref: Group Functions-Footnote-1705032
+Node: Walking Arrays705239
+Node: Library Functions Summary708247
+Node: Library Exercises709653
+Node: Sample Programs710118
+Node: Running Examples710888
+Node: Clones711616
+Node: Cut Program712840
+Node: Egrep Program722769
+Ref: Egrep Program-Footnote-1730281
+Node: Id Program730391
+Node: Split Program734071
+Ref: Split Program-Footnote-1737529
+Node: Tee Program737658
+Node: Uniq Program740448
+Node: Wc Program747874
+Ref: Wc Program-Footnote-1752129
+Node: Miscellaneous Programs752223
+Node: Dupword Program753436
+Node: Alarm Program755466
+Node: Translate Program760321
+Ref: Translate Program-Footnote-1764886
+Node: Labels Program765156
+Ref: Labels Program-Footnote-1768507
+Node: Word Sorting768591
+Node: History Sorting772663
+Node: Extract Program774498
+Node: Simple Sed782552
+Node: Igawk Program785626
+Ref: Igawk Program-Footnote-1799957
+Ref: Igawk Program-Footnote-2800159
+Ref: Igawk Program-Footnote-3800281
+Node: Anagram Program800396
+Node: Signature Program803458
+Node: Programs Summary804705
+Node: Programs Exercises805919
+Ref: Programs Exercises-Footnote-1810048
+Node: Advanced Features810139
+Node: Nondecimal Data812129
+Node: Array Sorting813720
+Node: Controlling Array Traversal814420
+Ref: Controlling Array Traversal-Footnote-1822788
+Node: Array Sorting Functions822906
+Ref: Array Sorting Functions-Footnote-1827997
+Node: Two-way I/O828193
+Ref: Two-way I/O-Footnote-1835914
+Ref: Two-way I/O-Footnote-2836101
+Node: TCP/IP Networking836183
+Node: Profiling839301
+Ref: Profiling-Footnote-1847986
+Node: Advanced Features Summary848309
+Node: Internationalization850153
+Node: I18N and L10N851633
+Node: Explaining gettext852320
+Ref: Explaining gettext-Footnote-1858212
+Ref: Explaining gettext-Footnote-2858397
+Node: Programmer i18n858562
+Ref: Programmer i18n-Footnote-1863511
+Node: Translator i18n863560
+Node: String Extraction864354
+Ref: String Extraction-Footnote-1865486
+Node: Printf Ordering865572
+Ref: Printf Ordering-Footnote-1868358
+Node: I18N Portability868422
+Ref: I18N Portability-Footnote-1870878
+Node: I18N Example870941
+Ref: I18N Example-Footnote-1874216
+Ref: I18N Example-Footnote-2874289
+Node: Gawk I18N874398
+Node: I18N Summary875043
+Node: Debugger876384
+Node: Debugging877404
+Node: Debugging Concepts877845
+Node: Debugging Terms879654
+Node: Awk Debugging882229
+Ref: Awk Debugging-Footnote-1883174
+Node: Sample Debugging Session883306
+Node: Debugger Invocation883840
+Node: Finding The Bug885226
+Node: List of Debugger Commands891700
+Node: Breakpoint Control893033
+Node: Debugger Execution Control896727
+Node: Viewing And Changing Data900089
+Node: Execution Stack903463
+Node: Debugger Info905100
+Node: Miscellaneous Debugger Commands909171
+Node: Readline Support914233
+Node: Limitations915129
+Node: Debugging Summary917238
+Node: Arbitrary Precision Arithmetic918517
+Node: Computer Arithmetic920002
+Ref: table-numeric-ranges923768
+Ref: table-floating-point-ranges924261
+Ref: Computer Arithmetic-Footnote-1924919
+Node: Math Definitions924976
+Ref: table-ieee-formats928292
+Ref: Math Definitions-Footnote-1928895
+Node: MPFR features929000
+Node: FP Math Caution930718
+Ref: FP Math Caution-Footnote-1931790
+Node: Inexactness of computations932159
+Node: Inexact representation933119
+Node: Comparing FP Values934479
+Node: Errors accumulate935720
+Node: Getting Accuracy937153
+Node: Try To Round939863
+Node: Setting precision940762
+Ref: table-predefined-precision-strings941459
+Node: Setting the rounding mode943289
+Ref: table-gawk-rounding-modes943663
+Ref: Setting the rounding mode-Footnote-1947594
+Node: Arbitrary Precision Integers947773
+Ref: Arbitrary Precision Integers-Footnote-1950948
+Node: Checking for MPFR951097
+Node: POSIX Floating Point Problems952571
+Ref: POSIX Floating Point Problems-Footnote-1956856
+Node: Floating point summary956894
+Node: Dynamic Extensions959084
+Node: Extension Intro960637
+Node: Plugin License961903
+Node: Extension Mechanism Outline962700
+Ref: figure-load-extension963139
+Ref: figure-register-new-function964704
+Ref: figure-call-new-function965796
+Node: Extension API Description967858
+Node: Extension API Functions Introduction969500
+Node: General Data Types975040
+Ref: General Data Types-Footnote-1983401
+Node: Memory Allocation Functions983700
+Ref: Memory Allocation Functions-Footnote-1987910
+Node: Constructor Functions988009
+Node: Registration Functions991595
+Node: Extension Functions992280
+Node: Exit Callback Functions997495
+Node: Extension Version String998745
+Node: Input Parsers999408
+Node: Output Wrappers1012129
+Node: Two-way processors1016641
+Node: Printing Messages1018906
+Ref: Printing Messages-Footnote-11020077
+Node: Updating ERRNO1020230
+Node: Requesting Values1020969
+Ref: table-value-types-returned1021706
+Node: Accessing Parameters1022642
+Node: Symbol Table Access1023877
+Node: Symbol table by name1024389
+Node: Symbol table by cookie1026178
+Ref: Symbol table by cookie-Footnote-11030363
+Node: Cached values1030427
+Ref: Cached values-Footnote-11033963
+Node: Array Manipulation1034116
+Ref: Array Manipulation-Footnote-11035207
+Node: Array Data Types1035244
+Ref: Array Data Types-Footnote-11037902
+Node: Array Functions1037994
+Node: Flattening Arrays1042492
+Node: Creating Arrays1049468
+Node: Redirection API1054235
+Node: Extension API Variables1057068
+Node: Extension Versioning1057779
+Ref: gawk-api-version1058208
+Node: Extension GMP/MPFR Versioning1059939
+Node: Extension API Informational Variables1061567
+Node: Extension API Boilerplate1062640
+Node: Changes from API V11066614
+Node: Finding Extensions1068186
+Node: Extension Example1068745
+Node: Internal File Description1069543
+Node: Internal File Ops1073623
+Ref: Internal File Ops-Footnote-11084973
+Node: Using Internal File Ops1085113
+Ref: Using Internal File Ops-Footnote-11087496
+Node: Extension Samples1087770
+Node: Extension Sample File Functions1089299
+Node: Extension Sample Fnmatch1096948
+Node: Extension Sample Fork1098435
+Node: Extension Sample Inplace1099653
+Node: Extension Sample Ord1102870
+Node: Extension Sample Readdir1103706
+Ref: table-readdir-file-types1104595
+Node: Extension Sample Revout1105400
+Node: Extension Sample Rev2way1105989
+Node: Extension Sample Read write array1106729
+Node: Extension Sample Readfile1108671
+Node: Extension Sample Time1109766
+Node: Extension Sample API Tests1111114
+Node: gawkextlib1111606
+Node: Extension summary1114524
+Node: Extension Exercises1118226
+Node: Language History1119724
+Node: V7/SVR3.11121380
+Node: SVR41123532
+Node: POSIX1124966
+Node: BTL1126346
+Node: POSIX/GNU1127075
+Node: Feature History1132853
+Node: Common Extensions1148712
+Node: Ranges and Locales1149995
+Ref: Ranges and Locales-Footnote-11154611
+Ref: Ranges and Locales-Footnote-21154638
+Ref: Ranges and Locales-Footnote-31154873
+Node: Contributors1155094
+Node: History summary1161039
+Node: Installation1162419
+Node: Gawk Distribution1163363
+Node: Getting1163847
+Node: Extracting1164810
+Node: Distribution contents1166448
+Node: Unix Installation1172928
+Node: Quick Installation1173610
+Node: Shell Startup Files1176024
+Node: Additional Configuration Options1177113
+Node: Configuration Philosophy1179406
+Node: Non-Unix Installation1181775
+Node: PC Installation1182235
+Node: PC Binary Installation1183073
+Node: PC Compiling1183508
+Node: PC Using1184625
+Node: Cygwin1187840
+Node: MSYS1188939
+Node: VMS Installation1189440
+Node: VMS Compilation1190231
+Ref: VMS Compilation-Footnote-11191460
+Node: VMS Dynamic Extensions1191518
+Node: VMS Installation Details1193203
+Node: VMS Running1195456
+Node: VMS GNV1199735
+Node: VMS Old Gawk1200470
+Node: Bugs1200941
+Node: Bug address1201604
+Node: Usenet1204586
+Node: Maintainers1205590
+Node: Other Versions1206851
+Node: Installation summary1213765
+Node: Notes1214967
+Node: Compatibility Mode1215761
+Node: Additions1216543
+Node: Accessing The Source1217468
+Node: Adding Code1218905
+Node: New Ports1225124
+Node: Derived Files1229612
+Ref: Derived Files-Footnote-11235258
+Ref: Derived Files-Footnote-21235293
+Ref: Derived Files-Footnote-31235891
+Node: Future Extensions1236005
+Node: Implementation Limitations1236663
+Node: Extension Design1237846
+Node: Old Extension Problems1238990
+Ref: Old Extension Problems-Footnote-11240508
+Node: Extension New Mechanism Goals1240565
+Ref: Extension New Mechanism Goals-Footnote-11243929
+Node: Extension Other Design Decisions1244118
+Node: Extension Future Growth1246231
+Node: Notes summary1247067
+Node: Basic Concepts1248242
+Node: Basic High Level1248923
+Ref: figure-general-flow1249205
+Ref: figure-process-flow1249890
+Ref: Basic High Level-Footnote-11253191
+Node: Basic Data Typing1253376
+Node: Glossary1256704
+Node: Copying1288542
+Node: GNU Free Documentation License1326085
+Node: Index1351205
 
 End Tag Table
diff --git a/doc/gawk.texi b/doc/gawk.texi
index 7627fdf..102bf23 100644
--- a/doc/gawk.texi
+++ b/doc/gawk.texi
@@ -2577,7 +2577,7 @@ does the same thing as this one:
 awk 'BEGIN @{ print "Don\47t Panic!" @}'
 @end example
 
address@hidden quoting in @command{gawk} command lines
address@hidden quoting, in @command{gawk} command lines
 @noindent
 This was explained earlier
 (@pxref{Read Terminal}).
@@ -2933,7 +2933,7 @@ as the value of @code{FS}, and the first @value{FN} as 
the text of the program!
 This results in syntax errors at best, and confusing behavior at worst.
 @end itemize
 
address@hidden quoting in @command{gawk} command lines, tricks for
address@hidden quoting, in @command{gawk} command lines, tricks for
 Mixing single and double quotes is difficult.  You have to resort
 to shell quoting tricks, like this:
 
@@ -3841,7 +3841,7 @@ more than once, setting another variable each time, like 
this:
 @samp{awk @w{-v foo=1} @w{-v bar=2} @dots{}}.
 
 @cindex predefined variables, @code{-v} address@hidden setting with
address@hidden variables, predefined @code{-v} address@hidden setting with
address@hidden variables, predefined, @code{-v} address@hidden setting with
 @quotation CAUTION
 Using @option{-v} to set the values of the built-in
 variables may lead to surprising results.  @command{awk} will reset the
@@ -4458,6 +4458,8 @@ the output of @var{some_command}, and finally it reads
 
 You may also use @code{"-"} to name standard input when reading
 files with @code{getline} (@pxref{Getline/File}).
+And, you can even use @code{"-"} with the @option{-f} option
+to read program source code from standard input (@pxref{Options}).
 
 In addition, @command{gawk} allows you to specify the special
 @value{FN} @file{/dev/stdin}, both on the command line and
@@ -6651,6 +6653,7 @@ affected.
 @cindex records, terminating
 @cindex terminating records
 @cindex differences in @command{awk} and @command{gawk}, record separators
address@hidden differences in @command{awk} and @command{gawk}, 
@code{RS}/@code{RT} variables
 @cindex regular expressions, as record separators
 @cindex record separators, regular expressions as
 @cindex separators, for records, regular expressions as
@@ -6726,6 +6729,8 @@ that happens to contain newline characters.
 It is thus best to avoid anchor metacharacters in the value of @code{RS}.
 @end quotation
 
address@hidden @command{gawk}, @code{RT} variable in
address@hidden @code{RT} variable
 @cindex differences in @command{awk} and @command{gawk}, @code{RS}/@code{RT} 
variables
 The use of @code{RS} as a regular expression and the @code{RT}
 variable are @command{gawk} extensions; they are not available in
@@ -7273,7 +7278,7 @@ this @command{awk} program extracts and prints the string
 @address@hidden@address@hidden
 
 @cindex field separators, choice of
address@hidden regular expressions as field separators
address@hidden regular expressions, as field separators
 @cindex field separators, regular expressions as
 Sometimes the input data contains separator characters that don't
 separate fields the way you thought they would.  For instance, the
@@ -8320,6 +8325,7 @@ POSIX standard.)
 
 @cindex @command{gawk}, @code{RT} variable in
 @cindex @code{RT} variable
address@hidden differences in @command{awk} and @command{gawk}, 
@code{RS}/@code{RT} variables
 If not in compatibility mode (@pxref{Options}), @command{gawk} sets
 @code{RT} to the input text that matched the value specified by @code{RS}.
 But if the input file ended without any text that matches @code{RS},
@@ -11393,6 +11399,7 @@ it would be nice to have regexp constants that
 are @dfn{strongly typed}; in other words, that denote a regexp useful
 for matching, and not an expression.
 
address@hidden values, regexp
 @command{gawk} provides this feature.  A strongly typed regexp constant
 looks almost like a regular regexp constant, except that it is preceded
 by an @samp{@@} sign:
@@ -12469,7 +12476,7 @@ like @address@hidden, but instead of adding, it 
subtracts.)
 @end docbook
 
 @cindex precedence
address@hidden operators, precedence
address@hidden operators, precedence of
 @cindex portability, operators
 @cindex evaluation order
 @cindex Marx, Groucho
@@ -12521,7 +12528,7 @@ You should avoid such things in your own programs.
 
 
 @cindex precedence
address@hidden operators, precedence
address@hidden operators, precedence of
 @cindex portability, operators
 @cindex evaluation order
 @cindex Marx, Groucho
@@ -15411,7 +15418,6 @@ Its default value is @code{"%.6g"}.  Earlier versions 
of @command{awk}
 used @code{OFMT} to specify the format for converting numbers to
 strings in general expressions; this is now done by @code{CONVFMT}.
 
address@hidden @code{sprintf()} function, @code{OFMT} variable and
 @cindex @code{print} statement, @code{OFMT} variable and
 @cindex @code{OFS} variable
 @cindex separators, field
@@ -15485,7 +15491,7 @@ The default value of @code{TEXTDOMAIN} is 
@code{"messages"}.
 @subsection Built-in Variables That Convey Information
 
 @cindex predefined variables, conveying information
address@hidden variables, predefined conveying information
address@hidden variables, predefined, conveying information
 The following is an alphabetical list of variables that @command{awk}
 sets automatically on certain occasions in order to provide
 information to your program.
@@ -20122,7 +20128,7 @@ $ @kbd{gawk -f testbits.awk}
 @cindex strings, converting
 @cindex numbers, converting
 @cindex converting, numbers to strings
address@hidden number as string of bits
address@hidden numbers, as string of bits
 The @code{bits2str()} function turns a binary number into a string.
 Initializing @code{mask} to one creates
 a binary value where the rightmost bit
@@ -29779,7 +29785,6 @@ is covered.
 @node String Extraction
 @subsection Extracting Marked Strings
 @cindex strings, extracting
address@hidden marked address@hidden extracting
 @cindex @option{--gen-pot} option
 @cindex command-line options, string extraction
 @cindex string extraction (internationalization)
@@ -31128,7 +31133,6 @@ functions that called the one you are in.  The commands 
for doing this are:
 @cindex debugger commands, @code{where} (@code{backtrace})
 @cindex @code{backtrace} debugger command
 @cindex @code{bt} debugger command (alias for @code{backtrace})
address@hidden @code{where} debugger command
 @cindex @code{where} debugger command (alias for @code{backtrace})
 @cindex call stack, display in debugger
 @cindex traceback, display in debugger
@@ -39322,7 +39326,7 @@ The development of the extension API first released with
 Arnold Robbins and Andrew Schorr, with notable contributions from
 the rest of the development team.
 
address@hidden Malmberg, John E.
address@hidden Malmberg, John
 @item
 John Malmberg contributed significant improvements to the
 OpenVMS port and the related documentation.
@@ -40894,6 +40898,7 @@ makes this implementation available.  You can view the 
files one at a time from
 @cindex @command{goawk}
 @cindex Go implementation of @command{awk}
 @cindex source code, @command{goawk}
address@hidden programming languages, Go
 @item @command{goawk}
 This is an @command{awk} interpreter written in the
 @uref{https://golang.org/, Go programming language}.
diff --git a/doc/gawktexi.in b/doc/gawktexi.in
index be3b746..ec09b79 100644
--- a/doc/gawktexi.in
+++ b/doc/gawktexi.in
@@ -2544,7 +2544,7 @@ does the same thing as this one:
 awk 'BEGIN @{ print "Don\47t Panic!" @}'
 @end example
 
address@hidden quoting in @command{gawk} command lines
address@hidden quoting, in @command{gawk} command lines
 @noindent
 This was explained earlier
 (@pxref{Read Terminal}).
@@ -2843,7 +2843,7 @@ as the value of @code{FS}, and the first @value{FN} as 
the text of the program!
 This results in syntax errors at best, and confusing behavior at worst.
 @end itemize
 
address@hidden quoting in @command{gawk} command lines, tricks for
address@hidden quoting, in @command{gawk} command lines, tricks for
 Mixing single and double quotes is difficult.  You have to resort
 to shell quoting tricks, like this:
 
@@ -3751,7 +3751,7 @@ more than once, setting another variable each time, like 
this:
 @samp{awk @w{-v foo=1} @w{-v bar=2} @dots{}}.
 
 @cindex predefined variables, @code{-v} address@hidden setting with
address@hidden variables, predefined @code{-v} address@hidden setting with
address@hidden variables, predefined, @code{-v} address@hidden setting with
 @quotation CAUTION
 Using @option{-v} to set the values of the built-in
 variables may lead to surprising results.  @command{awk} will reset the
@@ -4368,6 +4368,8 @@ the output of @var{some_command}, and finally it reads
 
 You may also use @code{"-"} to name standard input when reading
 files with @code{getline} (@pxref{Getline/File}).
+And, you can even use @code{"-"} with the @option{-f} option
+to read program source code from standard input (@pxref{Options}).
 
 In addition, @command{gawk} allows you to specify the special
 @value{FN} @file{/dev/stdin}, both on the command line and
@@ -6434,6 +6436,7 @@ affected.
 @cindex records, terminating
 @cindex terminating records
 @cindex differences in @command{awk} and @command{gawk}, record separators
address@hidden differences in @command{awk} and @command{gawk}, 
@code{RS}/@code{RT} variables
 @cindex regular expressions, as record separators
 @cindex record separators, regular expressions as
 @cindex separators, for records, regular expressions as
@@ -6509,6 +6512,8 @@ that happens to contain newline characters.
 It is thus best to avoid anchor metacharacters in the value of @code{RS}.
 @end quotation
 
address@hidden @command{gawk}, @code{RT} variable in
address@hidden @code{RT} variable
 @cindex differences in @command{awk} and @command{gawk}, @code{RS}/@code{RT} 
variables
 The use of @code{RS} as a regular expression and the @code{RT}
 variable are @command{gawk} extensions; they are not available in
@@ -6967,7 +6972,7 @@ this @command{awk} program extracts and prints the string
 @address@hidden@address@hidden
 
 @cindex field separators, choice of
address@hidden regular expressions as field separators
address@hidden regular expressions, as field separators
 @cindex field separators, regular expressions as
 Sometimes the input data contains separator characters that don't
 separate fields the way you thought they would.  For instance, the
@@ -7918,6 +7923,7 @@ POSIX standard.)
 
 @cindex @command{gawk}, @code{RT} variable in
 @cindex @code{RT} variable
address@hidden differences in @command{awk} and @command{gawk}, 
@code{RS}/@code{RT} variables
 If not in compatibility mode (@pxref{Options}), @command{gawk} sets
 @code{RT} to the input text that matched the value specified by @code{RS}.
 But if the input file ended without any text that matches @code{RS},
@@ -10849,6 +10855,7 @@ it would be nice to have regexp constants that
 are @dfn{strongly typed}; in other words, that denote a regexp useful
 for matching, and not an expression.
 
address@hidden values, regexp
 @command{gawk} provides this feature.  A strongly typed regexp constant
 looks almost like a regular regexp constant, except that it is preceded
 by an @samp{@@} sign:
@@ -11839,7 +11846,7 @@ like @address@hidden, but instead of adding, it 
subtracts.)
 
 @sidebar Operator Evaluation Order
 @cindex precedence
address@hidden operators, precedence
address@hidden operators, precedence of
 @cindex portability, operators
 @cindex evaluation order
 @cindex Marx, Groucho
@@ -14728,7 +14735,6 @@ Its default value is @code{"%.6g"}.  Earlier versions 
of @command{awk}
 used @code{OFMT} to specify the format for converting numbers to
 strings in general expressions; this is now done by @code{CONVFMT}.
 
address@hidden @code{sprintf()} function, @code{OFMT} variable and
 @cindex @code{print} statement, @code{OFMT} variable and
 @cindex @code{OFS} variable
 @cindex separators, field
@@ -14802,7 +14808,7 @@ The default value of @code{TEXTDOMAIN} is 
@code{"messages"}.
 @subsection Built-in Variables That Convey Information
 
 @cindex predefined variables, conveying information
address@hidden variables, predefined conveying information
address@hidden variables, predefined, conveying information
 The following is an alphabetical list of variables that @command{awk}
 sets automatically on certain occasions in order to provide
 information to your program.
@@ -19232,7 +19238,7 @@ $ @kbd{gawk -f testbits.awk}
 @cindex strings, converting
 @cindex numbers, converting
 @cindex converting, numbers to strings
address@hidden number as string of bits
address@hidden numbers, as string of bits
 The @code{bits2str()} function turns a binary number into a string.
 Initializing @code{mask} to one creates
 a binary value where the rightmost bit
@@ -28791,7 +28797,6 @@ is covered.
 @node String Extraction
 @subsection Extracting Marked Strings
 @cindex strings, extracting
address@hidden marked address@hidden extracting
 @cindex @option{--gen-pot} option
 @cindex command-line options, string extraction
 @cindex string extraction (internationalization)
@@ -30140,7 +30145,6 @@ functions that called the one you are in.  The commands 
for doing this are:
 @cindex debugger commands, @code{where} (@code{backtrace})
 @cindex @code{backtrace} debugger command
 @cindex @code{bt} debugger command (alias for @code{backtrace})
address@hidden @code{where} debugger command
 @cindex @code{where} debugger command (alias for @code{backtrace})
 @cindex call stack, display in debugger
 @cindex traceback, display in debugger
@@ -38295,7 +38299,7 @@ The development of the extension API first released with
 Arnold Robbins and Andrew Schorr, with notable contributions from
 the rest of the development team.
 
address@hidden Malmberg, John E.
address@hidden Malmberg, John
 @item
 John Malmberg contributed significant improvements to the
 OpenVMS port and the related documentation.
@@ -39867,6 +39871,7 @@ makes this implementation available.  You can view the 
files one at a time from
 @cindex @command{goawk}
 @cindex Go implementation of @command{awk}
 @cindex source code, @command{goawk}
address@hidden programming languages, Go
 @item @command{goawk}
 This is an @command{awk} interpreter written in the
 @uref{https://golang.org/, Go programming language}.

http://git.sv.gnu.org/cgit/gawk.git/commit/?id=63a31bee666a9bf9e37eda447f7742b07917dc74

commit 63a31bee666a9bf9e37eda447f7742b07917dc74
Author: Arnold D. Robbins <address@hidden>
Date:   Mon Jan 14 20:33:32 2019 +0200

    Fix small potential memory leak for intdiv.

diff --git a/ChangeLog b/ChangeLog
index 86ba9b2..658088d 100755
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,9 @@
+2019-01-14         Arnold D. Robbins     <address@hidden>
+
+       * builtin.c (do_intdiv): Add unref of subscripts.
+       * mpfr.c (do_mpfr_intdiv): Ditto.
+       Thanks to Andy Schorr for noticing.
+
 2019-01-09         John E. Malmberg      <address@hidden>
 
        * awk.h: For non GCC, have __attribute__ definition match
diff --git a/builtin.c b/builtin.c
index f2d3105..3d57234 100644
--- a/builtin.c
+++ b/builtin.c
@@ -3,7 +3,7 @@
  */
 
 /*
- * Copyright (C) 1986, 1988, 1989, 1991-2018 the Free Software Foundation, Inc.
+ * Copyright (C) 1986, 1988, 1989, 1991-2019 the Free Software Foundation, Inc.
  *
  * This file is part of GAWK, the GNU implementation of the
  * AWK Programming Language.
@@ -4048,11 +4048,13 @@ do_intdiv(int nargs)
        lhs = assoc_lookup(result, sub);
        unref(*lhs);
        *lhs = make_number((AWKNUM) quotient);
+       unref(sub);
 
        sub = make_string("remainder", 9);
        lhs = assoc_lookup(result, sub);
        unref(*lhs);
        *lhs = make_number((AWKNUM) remainder);
+       unref(sub);
 
        DEREF(denominator);
        DEREF(numerator);
diff --git a/mpfr.c b/mpfr.c
index 8478570..c3ba2a6 100644
--- a/mpfr.c
+++ b/mpfr.c
@@ -3,7 +3,7 @@
  */
 
 /*
- * Copyright (C) 2012, 2013, 2015, 2017, 2018,
+ * Copyright (C) 2012, 2013, 2015, 2017, 2018, 2019,
  * the Free Software Foundation, Inc.
  *
  * This file is part of GAWK, the GNU implementation of the
@@ -1265,11 +1265,13 @@ do_mpfr_intdiv(int nargs)
        lhs = assoc_lookup(result, sub);
        unref(*lhs);
        *lhs = quotient;
+       unref(sub);
 
        sub = make_string("remainder", 9);
        lhs = assoc_lookup(result, sub);
        unref(*lhs);
        *lhs = remainder;
+       unref(sub);
 
        return make_number((AWKNUM) 0.0);
 }

-----------------------------------------------------------------------

Summary of changes:
 ChangeLog       |    6 +
 builtin.c       |    4 +-
 doc/ChangeLog   |    5 +
 doc/gawk.info   | 1118 ++++++++++++++++++++++++++++---------------------------
 doc/gawk.texi   |   29 +-
 doc/gawktexi.in |   27 +-
 mpfr.c          |    4 +-
 7 files changed, 613 insertions(+), 580 deletions(-)


hooks/post-receive
-- 
gawk



reply via email to

[Prev in Thread] Current Thread [Next in Thread]