[Top][All Lists]

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

[gawk-diffs] [SCM] gawk branch, gawk-5.0-stable, updated. gawk-4.1.0-373

From: Arnold Robbins
Subject: [gawk-diffs] [SCM] gawk branch, gawk-5.0-stable, updated. gawk-4.1.0-3737-ge43c786
Date: Tue, 11 Jun 2019 15:18:20 -0400 (EDT)

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

The branch, gawk-5.0-stable has been updated
       via  e43c786c285a0757b7db71cbc79a66e791829345 (commit)
      from  0ce140454c7f60362f93dbf12928adcceadf9f76 (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 -----------------------------------------------------------------

commit e43c786c285a0757b7db71cbc79a66e791829345
Author: Arnold D. Robbins <address@hidden>
Date:   Tue Jun 11 22:17:57 2019 +0300

    Doc update on unmatched parentheses in regexps.

diff --git a/doc/ChangeLog b/doc/ChangeLog
index 57765d5..9fc9aaf 100644
--- a/doc/ChangeLog
+++ b/doc/ChangeLog
@@ -1,3 +1,10 @@
+2019-06-11         Arnold D. Robbins     <address@hidden>
+       * (Regexp Operator Details): Add a paragraph
+       describing how unmatched left and right parentheses work.
+       Thanks to Neil Ormos <address@hidden>
+       for pointing out the need.
 2019-06-05         Arnold D. Robbins     <address@hidden>
        * (Type Functions): Clarify isarray() and
diff --git a/doc/ b/doc/
index 1bbd329..cf0cab9 100644
--- a/doc/
+++ b/doc/
@@ -3744,6 +3744,12 @@ sequences and that are not listed here stand for 
      (These are Texinfo formatting control sequences.  The '+' is
      explained further on in this list.)
+     The left or opening parenthesis is always a metacharacter; to match
+     one literally, precede it with a backslash.  However, the right or
+     closing parenthesis is only special when paired with a left
+     parenthesis; an unpaired right parenthesis is (silently) treated as
+     a regular character.
      This symbol means that the preceding regular expression should be
      repeated as many times as necessary to find a match.  For example,
@@ -33635,7 +33641,7 @@ Index
 * * (asterisk), * operator, as multiplication operator: Precedence.
                                                               (line  54)
 * * (asterisk), * operator, as regexp operator: Regexp Operator Details.
-                                                              (line  85)
+                                                              (line  91)
 * * (asterisk), * operator, null strings, matching: String Functions.
                                                               (line 542)
 * * (asterisk), ** operator:             Arithmetic Ops.      (line  81)
@@ -33652,7 +33658,7 @@ Index
 * + (plus sign), += operator:            Assignment Ops.      (line  81)
 * + (plus sign), += operator <1>:        Precedence.          (line  94)
 * + (plus sign), regexp operator:        Regexp Operator Details.
-                                                              (line 101)
+                                                              (line 107)
 * , (comma), in range patterns:          Ranges.              (line   6)
 * - (hyphen), - operator:                Precedence.          (line  51)
 * - (hyphen), - operator <1>:            Precedence.          (line  57)
@@ -33805,7 +33811,7 @@ Index
 * > (right angle bracket), >> operator (I/O) <1>: Precedence. (line  64)
 * ? (question mark), ?: operator:        Precedence.          (line  91)
 * ? (question mark), regexp operator:    Regexp Operator Details.
-                                                              (line 107)
+                                                              (line 113)
 * ? (question mark), regexp operator <1>: GNU Regexp Operators.
                                                               (line  62)
 * @-notation for indirect function calls: Indirect Calls.     (line  47)
@@ -34051,7 +34057,7 @@ Index
 * asterisk (*), * operator, as multiplication operator: Precedence.
                                                               (line  54)
 * asterisk (*), * operator, as regexp operator: Regexp Operator Details.
-                                                              (line  85)
+                                                              (line  91)
 * asterisk (*), * operator, null strings, matching: String Functions.
                                                               (line 542)
 * asterisk (*), ** operator:             Arithmetic Ops.      (line  81)
@@ -35331,7 +35337,7 @@ Index
 * gawk, regular expressions, operators:  GNU Regexp Operators.
                                                               (line   6)
 * gawk, regular expressions, precedence: Regexp Operator Details.
-                                                              (line 136)
+                                                              (line 142)
 * gawk, RT variable in:                  awk split records.   (line 131)
 * gawk, RT variable in <1>:              gawk split records.  (line  58)
 * gawk, RT variable in <2>:              Multiple Line.       (line 139)
@@ -35575,7 +35581,7 @@ Index
 * interpreted programs:                  Basic High Level.    (line  13)
 * interpreted programs <1>:              Glossary.            (line 443)
 * interval expressions, regexp operator: Regexp Operator Details.
-                                                              (line 112)
+                                                              (line 118)
 * inventory-shipped file:                Sample Data Files.   (line  32)
 * invoke shell command:                  I/O Functions.       (line 106)
 * isarray:                               Type Functions.      (line  11)
@@ -36014,7 +36020,7 @@ Index
 * plus sign (+), += operator:            Assignment Ops.      (line  81)
 * plus sign (+), += operator <1>:        Precedence.          (line  94)
 * plus sign (+), regexp operator:        Regexp Operator Details.
-                                                              (line 101)
+                                                              (line 107)
 * pointers to functions:                 Indirect Calls.      (line   6)
 * portability:                           Escape Sequences.    (line 103)
 * portability, #! (executable scripts):  Executable Scripts.  (line  33)
@@ -36089,7 +36095,7 @@ Index
                                                               (line  47)
 * POSIX awk, printf format strings and:  Format Modifiers.    (line 157)
 * POSIX awk, regular expressions and:    Regexp Operator Details.
-                                                              (line 136)
+                                                              (line 142)
 * POSIX awk, timestamps and:             Time Functions.      (line   6)
 * POSIX awk, | I/O operator and:         Getline/Pipe.        (line  56)
 * POSIX mode:                            Options.             (line 283)
@@ -36102,7 +36108,7 @@ Index
 * precedence:                            Increment Ops.       (line  60)
 * precedence <1>:                        Precedence.          (line   6)
 * precedence, regexp operators:          Regexp Operator Details.
-                                                              (line 131)
+                                                              (line 137)
 * predefined variables:                  Built-in Variables.  (line   6)
 * predefined variables, -v option, setting with: Options.     (line  45)
 * predefined variables, conveying information: Auto-set.      (line   6)
@@ -36203,7 +36209,7 @@ Index
 * Quanstrom, Erik:                       Alarm Program.       (line   8)
 * question mark (?), ?: operator:        Precedence.          (line  91)
 * question mark (?), regexp operator:    Regexp Operator Details.
-                                                              (line 107)
+                                                              (line 113)
 * question mark (?), regexp operator <1>: GNU Regexp Operators.
                                                               (line  62)
 * QuikTrim Awk:                          Other Versions.      (line 147)
@@ -36308,7 +36314,7 @@ Index
 * regular expressions, operators, gawk:  GNU Regexp Operators.
                                                               (line   6)
 * regular expressions, operators, precedence of: Regexp Operator Details.
-                                                              (line 131)
+                                                              (line 137)
 * regular expressions, searching for:    Egrep Program.       (line   6)
 * relational operators, See comparison operators: Typing and Comparison.
                                                               (line   9)
@@ -36963,536 +36969,536 @@ Node: Regexp Usage160998
 Node: Escape Sequences163035
 Node: Regexp Operators169267
 Node: Regexp Operator Details169752
-Ref: Regexp Operator Details-Footnote-1175874
-Node: Interval Expressions176021
-Ref: Interval Expressions-Footnote-1177456
-Node: Bracket Expressions177554
-Ref: table-char-classes180030
-Node: Leftmost Longest183356
-Node: Computed Regexps184659
-Node: GNU Regexp Operators188086
-Node: Case-sensitivity191765
-Ref: Case-sensitivity-Footnote-1194631
-Ref: Case-sensitivity-Footnote-2194866
-Node: Regexp Summary194974
-Node: Reading Files196440
-Node: Records198709
-Node: awk split records199784
-Node: gawk split records205059
-Ref: gawk split records-Footnote-1209645
-Node: Fields209682
-Node: Nonconstant Fields212423
-Ref: Nonconstant Fields-Footnote-1214659
-Node: Changing Fields214863
-Node: Field Separators220894
-Node: Default Field Splitting223592
-Node: Regexp Field Splitting224710
-Node: Single Character Fields228063
-Node: Command Line Field Separator229123
-Node: Full Line Fields232341
-Ref: Full Line Fields-Footnote-1233863
-Ref: Full Line Fields-Footnote-2233909
-Node: Field Splitting Summary234010
-Node: Constant Size236084
-Node: Fixed width data236816
-Node: Skipping intervening240283
-Node: Allowing trailing data241081
-Node: Fields with fixed data242118
-Node: Splitting By Content243636
-Ref: Splitting By Content-Footnote-1247286
-Node: Testing field creation247449
-Node: Multiple Line249074
-Node: Getline255351
-Node: Plain Getline257820
-Node: Getline/Variable260461
-Node: Getline/File261612
-Node: Getline/Variable/File263000
-Ref: Getline/Variable/File-Footnote-1264605
-Node: Getline/Pipe264693
-Node: Getline/Variable/Pipe267400
-Node: Getline/Coprocess268535
-Node: Getline/Variable/Coprocess269802
-Node: Getline Notes270544
-Node: Getline Summary273341
-Ref: table-getline-variants273765
-Node: Read Timeout274513
-Ref: Read Timeout-Footnote-1278419
-Node: Retrying Input278477
-Node: Command-line directories279676
-Node: Input Summary280582
-Node: Input Exercises283754
-Node: Printing284482
-Node: Print286316
-Node: Print Examples287773
-Node: Output Separators290553
-Node: OFMT292570
-Node: Printf293926
-Node: Basic Printf294711
-Node: Control Letters296285
-Node: Format Modifiers301449
-Node: Printf Examples307464
-Node: Redirection309950
-Node: Special FD316791
-Ref: Special FD-Footnote-1319959
-Node: Special Files320033
-Node: Other Inherited Files320650
-Node: Special Network321651
-Node: Special Caveats322511
-Node: Close Files And Pipes323460
-Ref: table-close-pipe-return-values330367
-Ref: Close Files And Pipes-Footnote-1331180
-Ref: Close Files And Pipes-Footnote-2331328
-Node: Nonfatal331480
-Node: Output Summary333818
-Node: Output Exercises335040
-Node: Expressions335719
-Node: Values336907
-Node: Constants337585
-Node: Scalar Constants338276
-Ref: Scalar Constants-Footnote-1340800
-Node: Nondecimal-numbers341050
-Node: Regexp Constants344051
-Node: Using Constant Regexps344577
-Node: Standard Regexp Constants345199
-Node: Strong Regexp Constants348387
-Node: Variables351345
-Node: Using Variables352002
-Node: Assignment Options353912
-Node: Conversion356379
-Node: Strings And Numbers356903
-Ref: Strings And Numbers-Footnote-1359966
-Node: Locale influences conversions360075
-Ref: table-locale-affects362833
-Node: All Operators363451
-Node: Arithmetic Ops364080
-Node: Concatenation366586
-Ref: Concatenation-Footnote-1369433
-Node: Assignment Ops369540
-Ref: table-assign-ops374531
-Node: Increment Ops375844
-Node: Truth Values and Conditions379304
-Node: Truth Values380378
-Node: Typing and Comparison381426
-Node: Variable Typing382246
-Ref: Variable Typing-Footnote-1388709
-Ref: Variable Typing-Footnote-2388781
-Node: Comparison Operators388858
-Ref: table-relational-ops389277
-Node: POSIX String Comparison392772
-Ref: POSIX String Comparison-Footnote-1394467
-Ref: POSIX String Comparison-Footnote-2394606
-Node: Boolean Ops394690
-Ref: Boolean Ops-Footnote-1399172
-Node: Conditional Exp399264
-Node: Function Calls401000
-Node: Precedence404877
-Node: Locales408536
-Node: Expressions Summary410168
-Node: Patterns and Actions412741
-Node: Pattern Overview413861
-Node: Regexp Patterns415538
-Node: Expression Patterns416080
-Node: Ranges419861
-Node: BEGIN/END422969
-Node: Using BEGIN/END423730
-Ref: Using BEGIN/END-Footnote-1426466
-Node: I/O And BEGIN/END426572
-Node: Empty431799
-Node: Using Shell Variables432116
-Node: Action Overview434390
-Node: Statements436715
-Node: If Statement438563
-Node: While Statement440058
-Node: Do Statement442086
-Node: For Statement443234
-Node: Switch Statement446405
-Node: Break Statement448791
-Node: Continue Statement450883
-Node: Next Statement452710
-Node: Nextfile Statement455093
-Node: Exit Statement457745
-Node: Built-in Variables460148
-Node: User-modified461281
-Node: Auto-set469048
-Ref: Auto-set-Footnote-1485855
-Ref: Auto-set-Footnote-2486061
-Node: ARGC and ARGV486117
-Node: Pattern Action Summary490330
-Node: Arrays492760
-Node: Array Basics494089
-Node: Array Intro494933
-Ref: figure-array-elements496908
-Ref: Array Intro-Footnote-1499612
-Node: Reference to Elements499740
-Node: Assigning Elements502204
-Node: Array Example502695
-Node: Scanning an Array504454
-Node: Controlling Scanning507476
-Ref: Controlling Scanning-Footnote-1512875
-Node: Numeric Array Subscripts513191
-Node: Uninitialized Subscripts515375
-Node: Delete516994
-Ref: Delete-Footnote-1519746
-Node: Multidimensional519803
-Node: Multiscanning522898
-Node: Arrays of Arrays524489
-Node: Arrays Summary529257
-Node: Functions531350
-Node: Built-in532388
-Node: Calling Built-in533469
-Node: Numeric Functions535465
-Ref: Numeric Functions-Footnote-1539493
-Ref: Numeric Functions-Footnote-2540141
-Ref: Numeric Functions-Footnote-3540189
-Node: String Functions540461
-Ref: String Functions-Footnote-1564319
-Ref: String Functions-Footnote-2564447
-Ref: String Functions-Footnote-3564695
-Node: Gory Details564782
-Ref: table-sub-escapes566573
-Ref: table-sub-proposed568092
-Ref: table-posix-sub569455
-Ref: table-gensub-escapes570996
-Ref: Gory Details-Footnote-1571819
-Node: I/O Functions571973
-Ref: table-system-return-values578441
-Ref: I/O Functions-Footnote-1580521
-Ref: I/O Functions-Footnote-2580669
-Node: Time Functions580789
-Ref: Time Functions-Footnote-1591460
-Ref: Time Functions-Footnote-2591528
-Ref: Time Functions-Footnote-3591686
-Ref: Time Functions-Footnote-4591797
-Ref: Time Functions-Footnote-5591909
-Ref: Time Functions-Footnote-6592136
-Node: Bitwise Functions592402
-Ref: table-bitwise-ops592996
-Ref: Bitwise Functions-Footnote-1599059
-Ref: Bitwise Functions-Footnote-2599232
-Node: Type Functions599423
-Node: I18N Functions602286
-Node: User-defined603937
-Node: Definition Syntax604749
-Ref: Definition Syntax-Footnote-1610436
-Node: Function Example610507
-Ref: Function Example-Footnote-1613429
-Node: Function Calling613451
-Node: Calling A Function614039
-Node: Variable Scope614997
-Node: Pass By Value/Reference617991
-Node: Function Caveats620635
-Ref: Function Caveats-Footnote-1622682
-Node: Return Statement622802
-Node: Dynamic Typing625781
-Node: Indirect Calls626711
-Ref: Indirect Calls-Footnote-1636963
-Node: Functions Summary637091
-Node: Library Functions639796
-Ref: Library Functions-Footnote-1643403
-Ref: Library Functions-Footnote-2643546
-Node: Library Names643717
-Ref: Library Names-Footnote-1647384
-Ref: Library Names-Footnote-2647607
-Node: General Functions647693
-Node: Strtonum Function648796
-Node: Assert Function651818
-Node: Round Function655144
-Node: Cliff Random Function656684
-Node: Ordinal Functions657700
-Ref: Ordinal Functions-Footnote-1660763
-Ref: Ordinal Functions-Footnote-2661015
-Node: Join Function661225
-Ref: Join Function-Footnote-1662995
-Node: Getlocaltime Function663195
-Node: Readfile Function666937
-Node: Shell Quoting668914
-Node: Data File Management670315
-Node: Filetrans Function670947
-Node: Rewind Function675043
-Node: File Checking676952
-Ref: File Checking-Footnote-1678286
-Node: Empty Files678487
-Node: Ignoring Assigns680466
-Node: Getopt Function682016
-Ref: Getopt Function-Footnote-1693485
-Node: Passwd Functions693685
-Ref: Passwd Functions-Footnote-1702524
-Node: Group Functions702612
-Ref: Group Functions-Footnote-1710510
-Node: Walking Arrays710717
-Node: Library Functions Summary713725
-Node: Library Exercises715131
-Node: Sample Programs715596
-Node: Running Examples716366
-Node: Clones717094
-Node: Cut Program718318
-Node: Egrep Program728247
-Ref: Egrep Program-Footnote-1735759
-Node: Id Program735869
-Node: Split Program739549
-Ref: Split Program-Footnote-1743007
-Node: Tee Program743136
-Node: Uniq Program745926
-Node: Wc Program753547
-Ref: Wc Program-Footnote-1757802
-Node: Miscellaneous Programs757896
-Node: Dupword Program759109
-Node: Alarm Program761139
-Node: Translate Program765994
-Ref: Translate Program-Footnote-1770559
-Node: Labels Program770829
-Ref: Labels Program-Footnote-1774180
-Node: Word Sorting774264
-Node: History Sorting778336
-Node: Extract Program780171
-Node: Simple Sed788225
-Node: Igawk Program791299
-Ref: Igawk Program-Footnote-1805630
-Ref: Igawk Program-Footnote-2805832
-Ref: Igawk Program-Footnote-3805954
-Node: Anagram Program806069
-Node: Signature Program809131
-Node: Programs Summary810378
-Node: Programs Exercises811592
-Ref: Programs Exercises-Footnote-1815721
-Node: Advanced Features815812
-Node: Nondecimal Data817802
-Node: Array Sorting819393
-Node: Controlling Array Traversal820093
-Ref: Controlling Array Traversal-Footnote-1828461
-Node: Array Sorting Functions828579
-Ref: Array Sorting Functions-Footnote-1833670
-Node: Two-way I/O833866
-Ref: Two-way I/O-Footnote-1841587
-Ref: Two-way I/O-Footnote-2841774
-Node: TCP/IP Networking841856
-Node: Profiling844974
-Node: Advanced Features Summary853989
-Node: Internationalization855833
-Node: I18N and L10N857313
-Node: Explaining gettext858000
-Ref: Explaining gettext-Footnote-1863892
-Ref: Explaining gettext-Footnote-2864077
-Node: Programmer i18n864242
-Ref: Programmer i18n-Footnote-1869191
-Node: Translator i18n869240
-Node: String Extraction870034
-Ref: String Extraction-Footnote-1871166
-Node: Printf Ordering871252
-Ref: Printf Ordering-Footnote-1874038
-Node: I18N Portability874102
-Ref: I18N Portability-Footnote-1876558
-Node: I18N Example876621
-Ref: I18N Example-Footnote-1879896
-Ref: I18N Example-Footnote-2879969
-Node: Gawk I18N880078
-Node: I18N Summary880727
-Node: Debugger882068
-Node: Debugging883068
-Node: Debugging Concepts883509
-Node: Debugging Terms885318
-Node: Awk Debugging887893
-Ref: Awk Debugging-Footnote-1888838
-Node: Sample Debugging Session888970
-Node: Debugger Invocation889504
-Node: Finding The Bug890890
-Node: List of Debugger Commands897364
-Node: Breakpoint Control898697
-Node: Debugger Execution Control902391
-Node: Viewing And Changing Data905753
-Node: Execution Stack909294
-Node: Debugger Info910931
-Node: Miscellaneous Debugger Commands915002
-Node: Readline Support920064
-Node: Limitations920960
-Node: Debugging Summary923514
-Node: Namespaces924793
-Node: Global Namespace925872
-Node: Qualified Names927270
-Node: Default Namespace928269
-Node: Changing The Namespace929010
-Node: Naming Rules930624
-Node: Internal Name Management932472
-Node: Namespace Example933514
-Node: Namespace And Features936076
-Node: Namespace Summary937511
-Node: Arbitrary Precision Arithmetic938988
-Node: Computer Arithmetic940475
-Ref: table-numeric-ranges944241
-Ref: table-floating-point-ranges944734
-Ref: Computer Arithmetic-Footnote-1945392
-Node: Math Definitions945449
-Ref: table-ieee-formats948765
-Ref: Math Definitions-Footnote-1949368
-Node: MPFR features949473
-Node: FP Math Caution951191
-Ref: FP Math Caution-Footnote-1952263
-Node: Inexactness of computations952632
-Node: Inexact representation953592
-Node: Comparing FP Values954952
-Node: Errors accumulate956193
-Node: Getting Accuracy957626
-Node: Try To Round960336
-Node: Setting precision961235
-Ref: table-predefined-precision-strings961932
-Node: Setting the rounding mode963762
-Ref: table-gawk-rounding-modes964136
-Ref: Setting the rounding mode-Footnote-1968067
-Node: Arbitrary Precision Integers968246
-Ref: Arbitrary Precision Integers-Footnote-1971421
-Node: Checking for MPFR971570
-Node: POSIX Floating Point Problems973044
-Ref: POSIX Floating Point Problems-Footnote-1977329
-Node: Floating point summary977367
-Node: Dynamic Extensions979557
-Node: Extension Intro981110
-Node: Plugin License982376
-Node: Extension Mechanism Outline983173
-Ref: figure-load-extension983612
-Ref: figure-register-new-function985177
-Ref: figure-call-new-function986269
-Node: Extension API Description988331
-Node: Extension API Functions Introduction989973
-Ref: table-api-std-headers991809
-Node: General Data Types995674
-Ref: General Data Types-Footnote-11004035
-Node: Memory Allocation Functions1004334
-Ref: Memory Allocation Functions-Footnote-11008544
-Node: Constructor Functions1008643
-Node: Registration Functions1012229
-Node: Extension Functions1012914
-Node: Exit Callback Functions1018236
-Node: Extension Version String1019486
-Node: Input Parsers1020149
-Node: Output Wrappers1032870
-Node: Two-way processors1037382
-Node: Printing Messages1039647
-Ref: Printing Messages-Footnote-11040818
-Node: Updating ERRNO1040971
-Node: Requesting Values1041710
-Ref: table-value-types-returned1042447
-Node: Accessing Parameters1043383
-Node: Symbol Table Access1044618
-Node: Symbol table by name1045130
-Ref: Symbol table by name-Footnote-11048154
-Node: Symbol table by cookie1048282
-Ref: Symbol table by cookie-Footnote-11052467
-Node: Cached values1052531
-Ref: Cached values-Footnote-11056067
-Node: Array Manipulation1056220
-Ref: Array Manipulation-Footnote-11057311
-Node: Array Data Types1057348
-Ref: Array Data Types-Footnote-11060006
-Node: Array Functions1060098
-Node: Flattening Arrays1064596
-Node: Creating Arrays1071572
-Node: Redirection API1076339
-Node: Extension API Variables1079172
-Node: Extension Versioning1079883
-Ref: gawk-api-version1080312
-Node: Extension GMP/MPFR Versioning1082043
-Node: Extension API Informational Variables1083671
-Node: Extension API Boilerplate1084744
-Node: Changes from API V11088718
-Node: Finding Extensions1090290
-Node: Extension Example1090849
-Node: Internal File Description1091647
-Node: Internal File Ops1095727
-Ref: Internal File Ops-Footnote-11107077
-Node: Using Internal File Ops1107217
-Ref: Using Internal File Ops-Footnote-11109600
-Node: Extension Samples1109874
-Node: Extension Sample File Functions1111403
-Node: Extension Sample Fnmatch1119052
-Node: Extension Sample Fork1120539
-Node: Extension Sample Inplace1121757
-Node: Extension Sample Ord1125061
-Node: Extension Sample Readdir1125897
-Ref: table-readdir-file-types1126786
-Node: Extension Sample Revout1127591
-Node: Extension Sample Rev2way1128180
-Node: Extension Sample Read write array1128920
-Node: Extension Sample Readfile1130862
-Node: Extension Sample Time1131957
-Node: Extension Sample API Tests1133305
-Node: gawkextlib1133797
-Node: Extension summary1136715
-Node: Extension Exercises1140417
-Node: Language History1141659
-Node: V7/SVR3.11143315
-Node: SVR41145467
-Node: POSIX1146901
-Node: BTL1148281
-Node: POSIX/GNU1149010
-Node: Feature History1154788
-Node: Common Extensions1170834
-Node: Ranges and Locales1172117
-Ref: Ranges and Locales-Footnote-11176733
-Ref: Ranges and Locales-Footnote-21176760
-Ref: Ranges and Locales-Footnote-31176995
-Node: Contributors1177216
-Node: History summary1183169
-Node: Installation1184549
-Node: Gawk Distribution1185493
-Node: Getting1185977
-Node: Extracting1186940
-Node: Distribution contents1188578
-Node: Unix Installation1195058
-Node: Quick Installation1195740
-Node: Shell Startup Files1198154
-Node: Additional Configuration Options1199243
-Node: Configuration Philosophy1201558
-Node: Non-Unix Installation1203927
-Node: PC Installation1204387
-Node: PC Binary Installation1205225
-Node: PC Compiling1205660
-Node: PC Using1206777
-Node: Cygwin1210330
-Node: MSYS1211429
-Node: VMS Installation1211930
-Node: VMS Compilation1212721
-Ref: VMS Compilation-Footnote-11213950
-Node: VMS Dynamic Extensions1214008
-Node: VMS Installation Details1215693
-Node: VMS Running1217946
-Node: VMS GNV1222225
-Node: VMS Old Gawk1222960
-Node: Bugs1223431
-Node: Bug address1224094
-Node: Usenet1227076
-Node: Maintainers1228080
-Node: Other Versions1229341
-Node: Installation summary1236429
-Node: Notes1237631
-Node: Compatibility Mode1238425
-Node: Additions1239207
-Node: Accessing The Source1240132
-Node: Adding Code1241569
-Node: New Ports1247788
-Node: Derived Files1252163
-Ref: Derived Files-Footnote-11257823
-Ref: Derived Files-Footnote-21257858
-Ref: Derived Files-Footnote-31258456
-Node: Future Extensions1258570
-Node: Implementation Limitations1259228
-Node: Extension Design1260411
-Node: Old Extension Problems1261555
-Ref: Old Extension Problems-Footnote-11263073
-Node: Extension New Mechanism Goals1263130
-Ref: Extension New Mechanism Goals-Footnote-11266494
-Node: Extension Other Design Decisions1266683
-Node: Extension Future Growth1268796
-Node: Notes summary1269632
-Node: Basic Concepts1270790
-Node: Basic High Level1271471
-Ref: figure-general-flow1271753
-Ref: figure-process-flow1272438
-Ref: Basic High Level-Footnote-11275739
-Node: Basic Data Typing1275924
-Node: Glossary1279252
-Node: Copying1311090
-Node: GNU Free Documentation License1348633
-Node: Index1373753
+Ref: Regexp Operator Details-Footnote-1176184
+Node: Interval Expressions176331
+Ref: Interval Expressions-Footnote-1177766
+Node: Bracket Expressions177864
+Ref: table-char-classes180340
+Node: Leftmost Longest183666
+Node: Computed Regexps184969
+Node: GNU Regexp Operators188396
+Node: Case-sensitivity192075
+Ref: Case-sensitivity-Footnote-1194941
+Ref: Case-sensitivity-Footnote-2195176
+Node: Regexp Summary195284
+Node: Reading Files196750
+Node: Records199019
+Node: awk split records200094
+Node: gawk split records205369
+Ref: gawk split records-Footnote-1209955
+Node: Fields209992
+Node: Nonconstant Fields212733
+Ref: Nonconstant Fields-Footnote-1214969
+Node: Changing Fields215173
+Node: Field Separators221204
+Node: Default Field Splitting223902
+Node: Regexp Field Splitting225020
+Node: Single Character Fields228373
+Node: Command Line Field Separator229433
+Node: Full Line Fields232651
+Ref: Full Line Fields-Footnote-1234173
+Ref: Full Line Fields-Footnote-2234219
+Node: Field Splitting Summary234320
+Node: Constant Size236394
+Node: Fixed width data237126
+Node: Skipping intervening240593
+Node: Allowing trailing data241391
+Node: Fields with fixed data242428
+Node: Splitting By Content243946
+Ref: Splitting By Content-Footnote-1247596
+Node: Testing field creation247759
+Node: Multiple Line249384
+Node: Getline255661
+Node: Plain Getline258130
+Node: Getline/Variable260771
+Node: Getline/File261922
+Node: Getline/Variable/File263310
+Ref: Getline/Variable/File-Footnote-1264915
+Node: Getline/Pipe265003
+Node: Getline/Variable/Pipe267710
+Node: Getline/Coprocess268845
+Node: Getline/Variable/Coprocess270112
+Node: Getline Notes270854
+Node: Getline Summary273651
+Ref: table-getline-variants274075
+Node: Read Timeout274823
+Ref: Read Timeout-Footnote-1278729
+Node: Retrying Input278787
+Node: Command-line directories279986
+Node: Input Summary280892
+Node: Input Exercises284064
+Node: Printing284792
+Node: Print286626
+Node: Print Examples288083
+Node: Output Separators290863
+Node: OFMT292880
+Node: Printf294236
+Node: Basic Printf295021
+Node: Control Letters296595
+Node: Format Modifiers301759
+Node: Printf Examples307774
+Node: Redirection310260
+Node: Special FD317101
+Ref: Special FD-Footnote-1320269
+Node: Special Files320343
+Node: Other Inherited Files320960
+Node: Special Network321961
+Node: Special Caveats322821
+Node: Close Files And Pipes323770
+Ref: table-close-pipe-return-values330677
+Ref: Close Files And Pipes-Footnote-1331490
+Ref: Close Files And Pipes-Footnote-2331638
+Node: Nonfatal331790
+Node: Output Summary334128
+Node: Output Exercises335350
+Node: Expressions336029
+Node: Values337217
+Node: Constants337895
+Node: Scalar Constants338586
+Ref: Scalar Constants-Footnote-1341110
+Node: Nondecimal-numbers341360
+Node: Regexp Constants344361
+Node: Using Constant Regexps344887
+Node: Standard Regexp Constants345509
+Node: Strong Regexp Constants348697
+Node: Variables351655
+Node: Using Variables352312
+Node: Assignment Options354222
+Node: Conversion356689
+Node: Strings And Numbers357213
+Ref: Strings And Numbers-Footnote-1360276
+Node: Locale influences conversions360385
+Ref: table-locale-affects363143
+Node: All Operators363761
+Node: Arithmetic Ops364390
+Node: Concatenation366896
+Ref: Concatenation-Footnote-1369743
+Node: Assignment Ops369850
+Ref: table-assign-ops374841
+Node: Increment Ops376154
+Node: Truth Values and Conditions379614
+Node: Truth Values380688
+Node: Typing and Comparison381736
+Node: Variable Typing382556
+Ref: Variable Typing-Footnote-1389019
+Ref: Variable Typing-Footnote-2389091
+Node: Comparison Operators389168
+Ref: table-relational-ops389587
+Node: POSIX String Comparison393082
+Ref: POSIX String Comparison-Footnote-1394777
+Ref: POSIX String Comparison-Footnote-2394916
+Node: Boolean Ops395000
+Ref: Boolean Ops-Footnote-1399482
+Node: Conditional Exp399574
+Node: Function Calls401310
+Node: Precedence405187
+Node: Locales408846
+Node: Expressions Summary410478
+Node: Patterns and Actions413051
+Node: Pattern Overview414171
+Node: Regexp Patterns415848
+Node: Expression Patterns416390
+Node: Ranges420171
+Node: BEGIN/END423279
+Node: Using BEGIN/END424040
+Ref: Using BEGIN/END-Footnote-1426776
+Node: I/O And BEGIN/END426882
+Node: Empty432109
+Node: Using Shell Variables432426
+Node: Action Overview434700
+Node: Statements437025
+Node: If Statement438873
+Node: While Statement440368
+Node: Do Statement442396
+Node: For Statement443544
+Node: Switch Statement446715
+Node: Break Statement449101
+Node: Continue Statement451193
+Node: Next Statement453020
+Node: Nextfile Statement455403
+Node: Exit Statement458055
+Node: Built-in Variables460458
+Node: User-modified461591
+Node: Auto-set469358
+Ref: Auto-set-Footnote-1486165
+Ref: Auto-set-Footnote-2486371
+Node: ARGC and ARGV486427
+Node: Pattern Action Summary490640
+Node: Arrays493070
+Node: Array Basics494399
+Node: Array Intro495243
+Ref: figure-array-elements497218
+Ref: Array Intro-Footnote-1499922
+Node: Reference to Elements500050
+Node: Assigning Elements502514
+Node: Array Example503005
+Node: Scanning an Array504764
+Node: Controlling Scanning507786
+Ref: Controlling Scanning-Footnote-1513185
+Node: Numeric Array Subscripts513501
+Node: Uninitialized Subscripts515685
+Node: Delete517304
+Ref: Delete-Footnote-1520056
+Node: Multidimensional520113
+Node: Multiscanning523208
+Node: Arrays of Arrays524799
+Node: Arrays Summary529567
+Node: Functions531660
+Node: Built-in532698
+Node: Calling Built-in533779
+Node: Numeric Functions535775
+Ref: Numeric Functions-Footnote-1539803
+Ref: Numeric Functions-Footnote-2540451
+Ref: Numeric Functions-Footnote-3540499
+Node: String Functions540771
+Ref: String Functions-Footnote-1564629
+Ref: String Functions-Footnote-2564757
+Ref: String Functions-Footnote-3565005
+Node: Gory Details565092
+Ref: table-sub-escapes566883
+Ref: table-sub-proposed568402
+Ref: table-posix-sub569765
+Ref: table-gensub-escapes571306
+Ref: Gory Details-Footnote-1572129
+Node: I/O Functions572283
+Ref: table-system-return-values578751
+Ref: I/O Functions-Footnote-1580831
+Ref: I/O Functions-Footnote-2580979
+Node: Time Functions581099
+Ref: Time Functions-Footnote-1591770
+Ref: Time Functions-Footnote-2591838
+Ref: Time Functions-Footnote-3591996
+Ref: Time Functions-Footnote-4592107
+Ref: Time Functions-Footnote-5592219
+Ref: Time Functions-Footnote-6592446
+Node: Bitwise Functions592712
+Ref: table-bitwise-ops593306
+Ref: Bitwise Functions-Footnote-1599369
+Ref: Bitwise Functions-Footnote-2599542
+Node: Type Functions599733
+Node: I18N Functions602596
+Node: User-defined604247
+Node: Definition Syntax605059
+Ref: Definition Syntax-Footnote-1610746
+Node: Function Example610817
+Ref: Function Example-Footnote-1613739
+Node: Function Calling613761
+Node: Calling A Function614349
+Node: Variable Scope615307
+Node: Pass By Value/Reference618301
+Node: Function Caveats620945
+Ref: Function Caveats-Footnote-1622992
+Node: Return Statement623112
+Node: Dynamic Typing626091
+Node: Indirect Calls627021
+Ref: Indirect Calls-Footnote-1637273
+Node: Functions Summary637401
+Node: Library Functions640106
+Ref: Library Functions-Footnote-1643713
+Ref: Library Functions-Footnote-2643856
+Node: Library Names644027
+Ref: Library Names-Footnote-1647694
+Ref: Library Names-Footnote-2647917
+Node: General Functions648003
+Node: Strtonum Function649106
+Node: Assert Function652128
+Node: Round Function655454
+Node: Cliff Random Function656994
+Node: Ordinal Functions658010
+Ref: Ordinal Functions-Footnote-1661073
+Ref: Ordinal Functions-Footnote-2661325
+Node: Join Function661535
+Ref: Join Function-Footnote-1663305
+Node: Getlocaltime Function663505
+Node: Readfile Function667247
+Node: Shell Quoting669224
+Node: Data File Management670625
+Node: Filetrans Function671257
+Node: Rewind Function675353
+Node: File Checking677262
+Ref: File Checking-Footnote-1678596
+Node: Empty Files678797
+Node: Ignoring Assigns680776
+Node: Getopt Function682326
+Ref: Getopt Function-Footnote-1693795
+Node: Passwd Functions693995
+Ref: Passwd Functions-Footnote-1702834
+Node: Group Functions702922
+Ref: Group Functions-Footnote-1710820
+Node: Walking Arrays711027
+Node: Library Functions Summary714035
+Node: Library Exercises715441
+Node: Sample Programs715906
+Node: Running Examples716676
+Node: Clones717404
+Node: Cut Program718628
+Node: Egrep Program728557
+Ref: Egrep Program-Footnote-1736069
+Node: Id Program736179
+Node: Split Program739859
+Ref: Split Program-Footnote-1743317
+Node: Tee Program743446
+Node: Uniq Program746236
+Node: Wc Program753857
+Ref: Wc Program-Footnote-1758112
+Node: Miscellaneous Programs758206
+Node: Dupword Program759419
+Node: Alarm Program761449
+Node: Translate Program766304
+Ref: Translate Program-Footnote-1770869
+Node: Labels Program771139
+Ref: Labels Program-Footnote-1774490
+Node: Word Sorting774574
+Node: History Sorting778646
+Node: Extract Program780481
+Node: Simple Sed788535
+Node: Igawk Program791609
+Ref: Igawk Program-Footnote-1805940
+Ref: Igawk Program-Footnote-2806142
+Ref: Igawk Program-Footnote-3806264
+Node: Anagram Program806379
+Node: Signature Program809441
+Node: Programs Summary810688
+Node: Programs Exercises811902
+Ref: Programs Exercises-Footnote-1816031
+Node: Advanced Features816122
+Node: Nondecimal Data818112
+Node: Array Sorting819703
+Node: Controlling Array Traversal820403
+Ref: Controlling Array Traversal-Footnote-1828771
+Node: Array Sorting Functions828889
+Ref: Array Sorting Functions-Footnote-1833980
+Node: Two-way I/O834176
+Ref: Two-way I/O-Footnote-1841897
+Ref: Two-way I/O-Footnote-2842084
+Node: TCP/IP Networking842166
+Node: Profiling845284
+Node: Advanced Features Summary854299
+Node: Internationalization856143
+Node: I18N and L10N857623
+Node: Explaining gettext858310
+Ref: Explaining gettext-Footnote-1864202
+Ref: Explaining gettext-Footnote-2864387
+Node: Programmer i18n864552
+Ref: Programmer i18n-Footnote-1869501
+Node: Translator i18n869550
+Node: String Extraction870344
+Ref: String Extraction-Footnote-1871476
+Node: Printf Ordering871562
+Ref: Printf Ordering-Footnote-1874348
+Node: I18N Portability874412
+Ref: I18N Portability-Footnote-1876868
+Node: I18N Example876931
+Ref: I18N Example-Footnote-1880206
+Ref: I18N Example-Footnote-2880279
+Node: Gawk I18N880388
+Node: I18N Summary881037
+Node: Debugger882378
+Node: Debugging883378
+Node: Debugging Concepts883819
+Node: Debugging Terms885628
+Node: Awk Debugging888203
+Ref: Awk Debugging-Footnote-1889148
+Node: Sample Debugging Session889280
+Node: Debugger Invocation889814
+Node: Finding The Bug891200
+Node: List of Debugger Commands897674
+Node: Breakpoint Control899007
+Node: Debugger Execution Control902701
+Node: Viewing And Changing Data906063
+Node: Execution Stack909604
+Node: Debugger Info911241
+Node: Miscellaneous Debugger Commands915312
+Node: Readline Support920374
+Node: Limitations921270
+Node: Debugging Summary923824
+Node: Namespaces925103
+Node: Global Namespace926182
+Node: Qualified Names927580
+Node: Default Namespace928579
+Node: Changing The Namespace929320
+Node: Naming Rules930934
+Node: Internal Name Management932782
+Node: Namespace Example933824
+Node: Namespace And Features936386
+Node: Namespace Summary937821
+Node: Arbitrary Precision Arithmetic939298
+Node: Computer Arithmetic940785
+Ref: table-numeric-ranges944551
+Ref: table-floating-point-ranges945044
+Ref: Computer Arithmetic-Footnote-1945702
+Node: Math Definitions945759
+Ref: table-ieee-formats949075
+Ref: Math Definitions-Footnote-1949678
+Node: MPFR features949783
+Node: FP Math Caution951501
+Ref: FP Math Caution-Footnote-1952573
+Node: Inexactness of computations952942
+Node: Inexact representation953902
+Node: Comparing FP Values955262
+Node: Errors accumulate956503
+Node: Getting Accuracy957936
+Node: Try To Round960646
+Node: Setting precision961545
+Ref: table-predefined-precision-strings962242
+Node: Setting the rounding mode964072
+Ref: table-gawk-rounding-modes964446
+Ref: Setting the rounding mode-Footnote-1968377
+Node: Arbitrary Precision Integers968556
+Ref: Arbitrary Precision Integers-Footnote-1971731
+Node: Checking for MPFR971880
+Node: POSIX Floating Point Problems973354
+Ref: POSIX Floating Point Problems-Footnote-1977639
+Node: Floating point summary977677
+Node: Dynamic Extensions979867
+Node: Extension Intro981420
+Node: Plugin License982686
+Node: Extension Mechanism Outline983483
+Ref: figure-load-extension983922
+Ref: figure-register-new-function985487
+Ref: figure-call-new-function986579
+Node: Extension API Description988641
+Node: Extension API Functions Introduction990283
+Ref: table-api-std-headers992119
+Node: General Data Types995984
+Ref: General Data Types-Footnote-11004345
+Node: Memory Allocation Functions1004644
+Ref: Memory Allocation Functions-Footnote-11008854
+Node: Constructor Functions1008953
+Node: Registration Functions1012539
+Node: Extension Functions1013224
+Node: Exit Callback Functions1018546
+Node: Extension Version String1019796
+Node: Input Parsers1020459
+Node: Output Wrappers1033180
+Node: Two-way processors1037692
+Node: Printing Messages1039957
+Ref: Printing Messages-Footnote-11041128
+Node: Updating ERRNO1041281
+Node: Requesting Values1042020
+Ref: table-value-types-returned1042757
+Node: Accessing Parameters1043693
+Node: Symbol Table Access1044928
+Node: Symbol table by name1045440
+Ref: Symbol table by name-Footnote-11048464
+Node: Symbol table by cookie1048592
+Ref: Symbol table by cookie-Footnote-11052777
+Node: Cached values1052841
+Ref: Cached values-Footnote-11056377
+Node: Array Manipulation1056530
+Ref: Array Manipulation-Footnote-11057621
+Node: Array Data Types1057658
+Ref: Array Data Types-Footnote-11060316
+Node: Array Functions1060408
+Node: Flattening Arrays1064906
+Node: Creating Arrays1071882
+Node: Redirection API1076649
+Node: Extension API Variables1079482
+Node: Extension Versioning1080193
+Ref: gawk-api-version1080622
+Node: Extension GMP/MPFR Versioning1082353
+Node: Extension API Informational Variables1083981
+Node: Extension API Boilerplate1085054
+Node: Changes from API V11089028
+Node: Finding Extensions1090600
+Node: Extension Example1091159
+Node: Internal File Description1091957
+Node: Internal File Ops1096037
+Ref: Internal File Ops-Footnote-11107387
+Node: Using Internal File Ops1107527
+Ref: Using Internal File Ops-Footnote-11109910
+Node: Extension Samples1110184
+Node: Extension Sample File Functions1111713
+Node: Extension Sample Fnmatch1119362
+Node: Extension Sample Fork1120849
+Node: Extension Sample Inplace1122067
+Node: Extension Sample Ord1125371
+Node: Extension Sample Readdir1126207
+Ref: table-readdir-file-types1127096
+Node: Extension Sample Revout1127901
+Node: Extension Sample Rev2way1128490
+Node: Extension Sample Read write array1129230
+Node: Extension Sample Readfile1131172
+Node: Extension Sample Time1132267
+Node: Extension Sample API Tests1133615
+Node: gawkextlib1134107
+Node: Extension summary1137025
+Node: Extension Exercises1140727
+Node: Language History1141969
+Node: V7/SVR3.11143625
+Node: SVR41145777
+Node: POSIX1147211
+Node: BTL1148591
+Node: POSIX/GNU1149320
+Node: Feature History1155098
+Node: Common Extensions1171144
+Node: Ranges and Locales1172427
+Ref: Ranges and Locales-Footnote-11177043
+Ref: Ranges and Locales-Footnote-21177070
+Ref: Ranges and Locales-Footnote-31177305
+Node: Contributors1177526
+Node: History summary1183479
+Node: Installation1184859
+Node: Gawk Distribution1185803
+Node: Getting1186287
+Node: Extracting1187250
+Node: Distribution contents1188888
+Node: Unix Installation1195368
+Node: Quick Installation1196050
+Node: Shell Startup Files1198464
+Node: Additional Configuration Options1199553
+Node: Configuration Philosophy1201868
+Node: Non-Unix Installation1204237
+Node: PC Installation1204697
+Node: PC Binary Installation1205535
+Node: PC Compiling1205970
+Node: PC Using1207087
+Node: Cygwin1210640
+Node: MSYS1211739
+Node: VMS Installation1212240
+Node: VMS Compilation1213031
+Ref: VMS Compilation-Footnote-11214260
+Node: VMS Dynamic Extensions1214318
+Node: VMS Installation Details1216003
+Node: VMS Running1218256
+Node: VMS GNV1222535
+Node: VMS Old Gawk1223270
+Node: Bugs1223741
+Node: Bug address1224404
+Node: Usenet1227386
+Node: Maintainers1228390
+Node: Other Versions1229651
+Node: Installation summary1236739
+Node: Notes1237941
+Node: Compatibility Mode1238735
+Node: Additions1239517
+Node: Accessing The Source1240442
+Node: Adding Code1241879
+Node: New Ports1248098
+Node: Derived Files1252473
+Ref: Derived Files-Footnote-11258133
+Ref: Derived Files-Footnote-21258168
+Ref: Derived Files-Footnote-31258766
+Node: Future Extensions1258880
+Node: Implementation Limitations1259538
+Node: Extension Design1260721
+Node: Old Extension Problems1261865
+Ref: Old Extension Problems-Footnote-11263383
+Node: Extension New Mechanism Goals1263440
+Ref: Extension New Mechanism Goals-Footnote-11266804
+Node: Extension Other Design Decisions1266993
+Node: Extension Future Growth1269106
+Node: Notes summary1269942
+Node: Basic Concepts1271100
+Node: Basic High Level1271781
+Ref: figure-general-flow1272063
+Ref: figure-process-flow1272748
+Ref: Basic High Level-Footnote-11276049
+Node: Basic Data Typing1276234
+Node: Glossary1279562
+Node: Copying1311400
+Node: GNU Free Documentation License1348943
+Node: Index1374063
 End Tag Table
diff --git a/doc/gawk.texi b/doc/gawk.texi
index 1b248fc..aef3920 100644
--- a/doc/gawk.texi
+++ b/doc/gawk.texi
@@ -5693,6 +5693,11 @@ containing the alternation operator, @samp{|}.  For 
 (These are Texinfo formatting control sequences. The @samp{+} is
 explained further on in this list.)
+The left or opening parenthesis is always a metacharacter; to match
+one literally, precede it with a backslash. However, the right or
+closing parenthesis is only special when paired with a left parenthesis;
+an unpaired right parenthesis is (silently) treated as a regular character.
 @cindex @code{*} (asterisk), @code{*} operator, as regexp operator
 @cindex asterisk (@code{*}), @code{*} operator, as regexp operator
 @item @code{*}
diff --git a/doc/ b/doc/
index 38fa95e..0aaff3e 100644
--- a/doc/
+++ b/doc/
@@ -5520,6 +5520,11 @@ containing the alternation operator, @samp{|}.  For 
 (These are Texinfo formatting control sequences. The @samp{+} is
 explained further on in this list.)
+The left or opening parenthesis is always a metacharacter; to match
+one literally, precede it with a backslash. However, the right or
+closing parenthesis is only special when paired with a left parenthesis;
+an unpaired right parenthesis is (silently) treated as a regular character.
 @cindex @code{*} (asterisk), @code{*} operator, as regexp operator
 @cindex asterisk (@code{*}), @code{*} operator, as regexp operator
 @item @code{*}


Summary of changes:
 doc/ChangeLog   |    7 +
 doc/   | 1090 ++++++++++++++++++++++++++++---------------------------
 doc/gawk.texi   |    5 +
 doc/ |    5 +
 4 files changed, 565 insertions(+), 542 deletions(-)


reply via email to

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