aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorArnold D. Robbins <arnold@skeeve.com>2016-01-18 06:08:48 +0200
committerArnold D. Robbins <arnold@skeeve.com>2016-01-18 06:08:48 +0200
commitdd53cb380cc913ea1c2fa1a7df74c903adb2ef1a (patch)
tree7a0ca968a8c7b6e207d6dc440ab05fcc152bfad1
parent7985a75ad0cd606794fac7ba662637372bd204a9 (diff)
downloadegawk-dd53cb380cc913ea1c2fa1a7df74c903adb2ef1a.tar.gz
egawk-dd53cb380cc913ea1c2fa1a7df74c903adb2ef1a.tar.bz2
egawk-dd53cb380cc913ea1c2fa1a7df74c903adb2ef1a.zip
Minor improvement to doc on bracket expressions.
-rw-r--r--doc/ChangeLog5
-rw-r--r--doc/gawk.info984
-rw-r--r--doc/gawk.texi4
-rw-r--r--doc/gawktexi.in4
4 files changed, 507 insertions, 490 deletions
diff --git a/doc/ChangeLog b/doc/ChangeLog
index 7cb7f3e9..5b2028a8 100644
--- a/doc/ChangeLog
+++ b/doc/ChangeLog
@@ -1,3 +1,8 @@
+2016-01-18 Arnold D. Robbins <arnold@skeeve.com>
+
+ * gawktexi.in (Bracket Expressions): Document that '[', '.' and
+ '*' are literal inside bracket expressions.
+
2016-01-15 Arnold D. Robbins <arnold@skeeve.com>
* gawktexi.in (Array Sorting Functions): Clean up the code some,
diff --git a/doc/gawk.info b/doc/gawk.info
index a29ba203..23312f44 100644
--- a/doc/gawk.info
+++ b/doc/gawk.info
@@ -3806,6 +3806,10 @@ Equivalence classes
classes; they do not recognize collating symbols or equivalence
classes.
+ Inside a bracket expression, an opening bracket ('[') that does not
+start a character class, collating element or equivalence class is taken
+literally. This is also true of '.' and '*'.
+

File: gawk.info, Node: Leftmost Longest, Next: Computed Regexps, Prev: Bracket Expressions, Up: Regexp
@@ -34596,495 +34600,495 @@ Ref: Regexp Operators-Footnote-1170610
Ref: Regexp Operators-Footnote-2170757
Node: Bracket Expressions170855
Ref: table-char-classes172878
-Node: Leftmost Longest175824
-Node: Computed Regexps177127
-Node: GNU Regexp Operators180554
-Node: Case-sensitivity184233
-Ref: Case-sensitivity-Footnote-1187120
-Ref: Case-sensitivity-Footnote-2187355
-Node: Regexp Summary187463
-Node: Reading Files188929
-Node: Records191023
-Node: awk split records191756
-Node: gawk split records196688
-Ref: gawk split records-Footnote-1201232
-Node: Fields201269
-Ref: Fields-Footnote-1204049
-Node: Nonconstant Fields204135
-Ref: Nonconstant Fields-Footnote-1206371
-Node: Changing Fields206575
-Node: Field Separators212505
-Node: Default Field Splitting215203
-Node: Regexp Field Splitting216321
-Node: Single Character Fields219674
-Node: Command Line Field Separator220734
-Node: Full Line Fields223952
-Ref: Full Line Fields-Footnote-1225474
-Ref: Full Line Fields-Footnote-2225520
-Node: Field Splitting Summary225621
-Node: Constant Size227695
-Node: Splitting By Content232274
-Ref: Splitting By Content-Footnote-1236245
-Node: Multiple Line236408
-Ref: Multiple Line-Footnote-1242291
-Node: Getline242470
-Node: Plain Getline244674
-Node: Getline/Variable247313
-Node: Getline/File248462
-Node: Getline/Variable/File249848
-Ref: Getline/Variable/File-Footnote-1251452
-Node: Getline/Pipe251540
-Node: Getline/Variable/Pipe254245
-Node: Getline/Coprocess255378
-Node: Getline/Variable/Coprocess256643
-Node: Getline Notes257383
-Node: Getline Summary260178
-Ref: table-getline-variants260600
-Node: Read Timeout261348
-Ref: Read Timeout-Footnote-1265189
-Node: Command-line directories265247
-Node: Input Summary266152
-Node: Input Exercises269324
-Node: Printing270052
-Node: Print271829
-Node: Print Examples273286
-Node: Output Separators276066
-Node: OFMT278083
-Node: Printf279439
-Node: Basic Printf280224
-Node: Control Letters281798
-Node: Format Modifiers285786
-Node: Printf Examples291801
-Node: Redirection294287
-Node: Special FD301130
-Ref: Special FD-Footnote-1304298
-Node: Special Files304372
-Node: Other Inherited Files304989
-Node: Special Network305990
-Node: Special Caveats306850
-Node: Close Files And Pipes307799
-Ref: Close Files And Pipes-Footnote-1314992
-Ref: Close Files And Pipes-Footnote-2315140
-Node: Output Summary315291
-Node: Output Exercises316289
-Node: Expressions316968
-Node: Values318156
-Node: Constants318834
-Node: Scalar Constants319525
-Ref: Scalar Constants-Footnote-1320389
-Node: Nondecimal-numbers320639
-Node: Regexp Constants323653
-Node: Using Constant Regexps324179
-Node: Variables327342
-Node: Using Variables327999
-Node: Assignment Options329910
-Node: Conversion331784
-Node: Strings And Numbers332308
-Ref: Strings And Numbers-Footnote-1335372
-Node: Locale influences conversions335481
-Ref: table-locale-affects338239
-Node: All Operators338857
-Node: Arithmetic Ops339486
-Node: Concatenation341992
-Ref: Concatenation-Footnote-1344839
-Node: Assignment Ops344946
-Ref: table-assign-ops349938
-Node: Increment Ops351251
-Node: Truth Values and Conditions354711
-Node: Truth Values355785
-Node: Typing and Comparison356833
-Node: Variable Typing357653
-Node: Comparison Operators361277
-Ref: table-relational-ops361696
-Node: POSIX String Comparison365191
-Ref: POSIX String Comparison-Footnote-1366265
-Node: Boolean Ops366404
-Ref: Boolean Ops-Footnote-1370886
-Node: Conditional Exp370978
-Node: Function Calls372714
-Node: Precedence376594
-Node: Locales380253
-Node: Expressions Summary381885
-Node: Patterns and Actions384458
-Node: Pattern Overview385578
-Node: Regexp Patterns387255
-Node: Expression Patterns387797
-Node: Ranges391578
-Node: BEGIN/END394686
-Node: Using BEGIN/END395447
-Ref: Using BEGIN/END-Footnote-1398184
-Node: I/O And BEGIN/END398290
-Node: BEGINFILE/ENDFILE400606
-Node: Empty403513
-Node: Using Shell Variables403830
-Node: Action Overview406104
-Node: Statements408429
-Node: If Statement410277
-Node: While Statement411772
-Node: Do Statement413800
-Node: For Statement414948
-Node: Switch Statement418107
-Node: Break Statement420493
-Node: Continue Statement422585
-Node: Next Statement424412
-Node: Nextfile Statement426795
-Node: Exit Statement429447
-Node: Built-in Variables431852
-Node: User-modified432985
-Ref: User-modified-Footnote-1440612
-Node: Auto-set440674
-Ref: Auto-set-Footnote-1453768
-Ref: Auto-set-Footnote-2453974
-Node: ARGC and ARGV454030
-Node: Pattern Action Summary458249
-Node: Arrays460679
-Node: Array Basics462008
-Node: Array Intro462852
-Ref: figure-array-elements464827
-Ref: Array Intro-Footnote-1467531
-Node: Reference to Elements467659
-Node: Assigning Elements470123
-Node: Array Example470614
-Node: Scanning an Array472373
-Node: Controlling Scanning475397
-Ref: Controlling Scanning-Footnote-1480796
-Node: Numeric Array Subscripts481112
-Node: Uninitialized Subscripts483296
-Node: Delete484915
-Ref: Delete-Footnote-1487667
-Node: Multidimensional487724
-Node: Multiscanning490819
-Node: Arrays of Arrays492410
-Node: Arrays Summary497178
-Node: Functions499271
-Node: Built-in500309
-Node: Calling Built-in501387
-Node: Numeric Functions503383
-Ref: Numeric Functions-Footnote-1507411
-Ref: Numeric Functions-Footnote-2507768
-Ref: Numeric Functions-Footnote-3507816
-Node: String Functions508088
-Ref: String Functions-Footnote-1531596
-Ref: String Functions-Footnote-2531725
-Ref: String Functions-Footnote-3531973
-Node: Gory Details532060
-Ref: table-sub-escapes533851
-Ref: table-sub-proposed535370
-Ref: table-posix-sub536733
-Ref: table-gensub-escapes538274
-Ref: Gory Details-Footnote-1539097
-Node: I/O Functions539248
-Ref: I/O Functions-Footnote-1546469
-Node: Time Functions546617
-Ref: Time Functions-Footnote-1557122
-Ref: Time Functions-Footnote-2557190
-Ref: Time Functions-Footnote-3557348
-Ref: Time Functions-Footnote-4557459
-Ref: Time Functions-Footnote-5557571
-Ref: Time Functions-Footnote-6557798
-Node: Bitwise Functions558064
-Ref: table-bitwise-ops558658
-Ref: Bitwise Functions-Footnote-1562996
-Node: Type Functions563169
-Node: I18N Functions564325
-Node: User-defined565976
-Node: Definition Syntax566781
-Ref: Definition Syntax-Footnote-1572468
-Node: Function Example572539
-Ref: Function Example-Footnote-1575461
-Node: Function Caveats575483
-Node: Calling A Function576001
-Node: Variable Scope576959
-Node: Pass By Value/Reference579953
-Node: Return Statement583452
-Node: Dynamic Typing586431
-Node: Indirect Calls587361
-Ref: Indirect Calls-Footnote-1597612
-Node: Functions Summary597740
-Node: Library Functions600445
-Ref: Library Functions-Footnote-1604054
-Ref: Library Functions-Footnote-2604197
-Node: Library Names604368
-Ref: Library Names-Footnote-1607829
-Ref: Library Names-Footnote-2608052
-Node: General Functions608138
-Node: Strtonum Function609241
-Node: Assert Function612263
-Node: Round Function615589
-Node: Cliff Random Function617130
-Node: Ordinal Functions618146
-Ref: Ordinal Functions-Footnote-1621209
-Ref: Ordinal Functions-Footnote-2621461
-Node: Join Function621671
-Ref: Join Function-Footnote-1623441
-Node: Getlocaltime Function623641
-Node: Readfile Function627385
-Node: Shell Quoting629359
-Node: Data File Management630760
-Node: Filetrans Function631392
-Node: Rewind Function635489
-Node: File Checking636875
-Ref: File Checking-Footnote-1638209
-Node: Empty Files638410
-Node: Ignoring Assigns640389
-Node: Getopt Function641939
-Ref: Getopt Function-Footnote-1653409
-Node: Passwd Functions653609
-Ref: Passwd Functions-Footnote-1662450
-Node: Group Functions662538
-Ref: Group Functions-Footnote-1670437
-Node: Walking Arrays670644
-Node: Library Functions Summary673654
-Node: Library Exercises675060
-Node: Sample Programs675525
-Node: Running Examples676295
-Node: Clones677023
-Node: Cut Program678247
-Node: Egrep Program687968
-Ref: Egrep Program-Footnote-1695480
-Node: Id Program695590
-Node: Split Program699270
-Ref: Split Program-Footnote-1702729
-Node: Tee Program702858
-Node: Uniq Program705648
-Node: Wc Program713074
-Ref: Wc Program-Footnote-1717329
-Node: Miscellaneous Programs717423
-Node: Dupword Program718636
-Node: Alarm Program720666
-Node: Translate Program725521
-Ref: Translate Program-Footnote-1730086
-Node: Labels Program730356
-Ref: Labels Program-Footnote-1733707
-Node: Word Sorting733791
-Node: History Sorting737863
-Node: Extract Program739698
-Node: Simple Sed747227
-Node: Igawk Program750301
-Ref: Igawk Program-Footnote-1764632
-Ref: Igawk Program-Footnote-2764834
-Ref: Igawk Program-Footnote-3764956
-Node: Anagram Program765071
-Node: Signature Program768133
-Node: Programs Summary769380
-Node: Programs Exercises770595
-Ref: Programs Exercises-Footnote-1774724
-Node: Advanced Features774815
-Node: Nondecimal Data776805
-Node: Array Sorting778396
-Node: Controlling Array Traversal779096
-Ref: Controlling Array Traversal-Footnote-1787465
-Node: Array Sorting Functions787583
-Ref: Array Sorting Functions-Footnote-1792674
-Node: Two-way I/O792870
-Ref: Two-way I/O-Footnote-1797821
-Ref: Two-way I/O-Footnote-2798008
-Node: TCP/IP Networking798090
-Node: Profiling801208
-Node: Advanced Features Summary808747
-Node: Internationalization810683
-Node: I18N and L10N812163
-Node: Explaining gettext812850
-Ref: Explaining gettext-Footnote-1817873
-Ref: Explaining gettext-Footnote-2818058
-Node: Programmer i18n818223
-Ref: Programmer i18n-Footnote-1823079
-Node: Translator i18n823128
-Node: String Extraction823922
-Ref: String Extraction-Footnote-1825055
-Node: Printf Ordering825141
-Ref: Printf Ordering-Footnote-1827927
-Node: I18N Portability827991
-Ref: I18N Portability-Footnote-1830447
-Node: I18N Example830510
-Ref: I18N Example-Footnote-1833316
-Node: Gawk I18N833389
-Node: I18N Summary834034
-Node: Debugger835375
-Node: Debugging836397
-Node: Debugging Concepts836838
-Node: Debugging Terms838647
-Node: Awk Debugging841222
-Node: Sample Debugging Session842128
-Node: Debugger Invocation842662
-Node: Finding The Bug844048
-Node: List of Debugger Commands850526
-Node: Breakpoint Control851859
-Node: Debugger Execution Control855553
-Node: Viewing And Changing Data858915
-Node: Execution Stack862289
-Node: Debugger Info863926
-Node: Miscellaneous Debugger Commands867997
-Node: Readline Support873085
-Node: Limitations873981
-Node: Debugging Summary876090
-Node: Arbitrary Precision Arithmetic877263
-Node: Computer Arithmetic878679
-Ref: table-numeric-ranges882270
-Ref: Computer Arithmetic-Footnote-1882992
-Node: Math Definitions883049
-Ref: table-ieee-formats886363
-Ref: Math Definitions-Footnote-1886966
-Node: MPFR features887071
-Node: FP Math Caution888744
-Ref: FP Math Caution-Footnote-1889816
-Node: Inexactness of computations890185
-Node: Inexact representation891145
-Node: Comparing FP Values892505
-Node: Errors accumulate893587
-Node: Getting Accuracy895020
-Node: Try To Round897730
-Node: Setting precision898629
-Ref: table-predefined-precision-strings899326
-Node: Setting the rounding mode901156
-Ref: table-gawk-rounding-modes901530
-Ref: Setting the rounding mode-Footnote-1904938
-Node: Arbitrary Precision Integers905117
-Ref: Arbitrary Precision Integers-Footnote-1908101
-Node: POSIX Floating Point Problems908250
-Ref: POSIX Floating Point Problems-Footnote-1912132
-Node: Floating point summary912170
-Node: Dynamic Extensions914360
-Node: Extension Intro915913
-Node: Plugin License917179
-Node: Extension Mechanism Outline917976
-Ref: figure-load-extension918415
-Ref: figure-register-new-function919980
-Ref: figure-call-new-function921072
-Node: Extension API Description923135
-Node: Extension API Functions Introduction924583
-Node: General Data Types929395
-Ref: General Data Types-Footnote-1935350
-Node: Memory Allocation Functions935649
-Ref: Memory Allocation Functions-Footnote-1938494
-Node: Constructor Functions938593
-Node: Registration Functions940338
-Node: Extension Functions941023
-Node: Exit Callback Functions943322
-Node: Extension Version String944572
-Node: Input Parsers945235
-Node: Output Wrappers955120
-Node: Two-way processors959632
-Node: Printing Messages961896
-Ref: Printing Messages-Footnote-1962970
-Node: Updating ERRNO963123
-Node: Requesting Values963862
-Ref: table-value-types-returned964599
-Node: Accessing Parameters965482
-Node: Symbol Table Access966718
-Node: Symbol table by name967230
-Node: Symbol table by cookie969251
-Ref: Symbol table by cookie-Footnote-1973400
-Node: Cached values973464
-Ref: Cached values-Footnote-1976965
-Node: Array Manipulation977056
-Ref: Array Manipulation-Footnote-1978155
-Node: Array Data Types978192
-Ref: Array Data Types-Footnote-1980850
-Node: Array Functions980942
-Node: Flattening Arrays984801
-Node: Creating Arrays991709
-Node: Extension API Variables996481
-Node: Extension Versioning997117
-Node: Extension API Informational Variables999008
-Node: Extension API Boilerplate1000072
-Node: Finding Extensions1003886
-Node: Extension Example1004446
-Node: Internal File Description1005244
-Node: Internal File Ops1009324
-Ref: Internal File Ops-Footnote-11021086
-Node: Using Internal File Ops1021226
-Ref: Using Internal File Ops-Footnote-11023609
-Node: Extension Samples1023884
-Node: Extension Sample File Functions1025413
-Node: Extension Sample Fnmatch1033062
-Node: Extension Sample Fork1034549
-Node: Extension Sample Inplace1035767
-Node: Extension Sample Ord1038977
-Node: Extension Sample Readdir1039813
-Ref: table-readdir-file-types1040702
-Node: Extension Sample Revout1041507
-Node: Extension Sample Rev2way1042096
-Node: Extension Sample Read write array1042836
-Node: Extension Sample Readfile1044778
-Node: Extension Sample Time1045873
-Node: Extension Sample API Tests1047221
-Node: gawkextlib1047713
-Node: Extension summary1050137
-Node: Extension Exercises1053829
-Node: Language History1055326
-Node: V7/SVR3.11056982
-Node: SVR41059134
-Node: POSIX1060568
-Node: BTL1061948
-Node: POSIX/GNU1062678
-Node: Feature History1068199
-Node: Common Extensions1081528
-Node: Ranges and Locales1082811
-Ref: Ranges and Locales-Footnote-11087427
-Ref: Ranges and Locales-Footnote-21087454
-Ref: Ranges and Locales-Footnote-31087689
-Node: Contributors1087910
-Node: History summary1093479
-Node: Installation1094859
-Node: Gawk Distribution1095804
-Node: Getting1096288
-Node: Extracting1097249
-Node: Distribution contents1098887
-Node: Unix Installation1104640
-Node: Quick Installation1105256
-Node: Additional Configuration Options1107683
-Node: Configuration Philosophy1109487
-Node: Non-Unix Installation1111857
-Node: PC Installation1112315
-Node: PC Binary Installation1113635
-Node: PC Compiling1115487
-Ref: PC Compiling-Footnote-11118511
-Node: PC Testing1118620
-Node: PC Using1119800
-Node: Cygwin1123914
-Node: MSYS1124684
-Node: VMS Installation1125185
-Node: VMS Compilation1125976
-Ref: VMS Compilation-Footnote-11127206
-Node: VMS Dynamic Extensions1127264
-Node: VMS Installation Details1128949
-Node: VMS Running1131202
-Node: VMS GNV1134043
-Node: VMS Old Gawk1134778
-Node: Bugs1135249
-Node: Other Versions1139446
-Node: Installation summary1146032
-Node: Notes1147090
-Node: Compatibility Mode1147955
-Node: Additions1148737
-Node: Accessing The Source1149662
-Node: Adding Code1151098
-Node: New Ports1157317
-Node: Derived Files1161805
-Ref: Derived Files-Footnote-11167290
-Ref: Derived Files-Footnote-21167325
-Ref: Derived Files-Footnote-31167923
-Node: Future Extensions1168037
-Node: Implementation Limitations1168695
-Node: Extension Design1169878
-Node: Old Extension Problems1171032
-Ref: Old Extension Problems-Footnote-11172550
-Node: Extension New Mechanism Goals1172607
-Ref: Extension New Mechanism Goals-Footnote-11175971
-Node: Extension Other Design Decisions1176160
-Node: Extension Future Growth1178273
-Node: Old Extension Mechanism1179109
-Node: Notes summary1180872
-Node: Basic Concepts1182054
-Node: Basic High Level1182735
-Ref: figure-general-flow1183017
-Ref: figure-process-flow1183702
-Ref: Basic High Level-Footnote-11187003
-Node: Basic Data Typing1187188
-Node: Glossary1190516
-Node: Copying1222462
-Node: GNU Free Documentation License1260001
-Node: Index1285119
+Node: Leftmost Longest176015
+Node: Computed Regexps177318
+Node: GNU Regexp Operators180745
+Node: Case-sensitivity184424
+Ref: Case-sensitivity-Footnote-1187311
+Ref: Case-sensitivity-Footnote-2187546
+Node: Regexp Summary187654
+Node: Reading Files189120
+Node: Records191214
+Node: awk split records191947
+Node: gawk split records196879
+Ref: gawk split records-Footnote-1201423
+Node: Fields201460
+Ref: Fields-Footnote-1204240
+Node: Nonconstant Fields204326
+Ref: Nonconstant Fields-Footnote-1206562
+Node: Changing Fields206766
+Node: Field Separators212696
+Node: Default Field Splitting215394
+Node: Regexp Field Splitting216512
+Node: Single Character Fields219865
+Node: Command Line Field Separator220925
+Node: Full Line Fields224143
+Ref: Full Line Fields-Footnote-1225665
+Ref: Full Line Fields-Footnote-2225711
+Node: Field Splitting Summary225812
+Node: Constant Size227886
+Node: Splitting By Content232465
+Ref: Splitting By Content-Footnote-1236436
+Node: Multiple Line236599
+Ref: Multiple Line-Footnote-1242482
+Node: Getline242661
+Node: Plain Getline244865
+Node: Getline/Variable247504
+Node: Getline/File248653
+Node: Getline/Variable/File250039
+Ref: Getline/Variable/File-Footnote-1251643
+Node: Getline/Pipe251731
+Node: Getline/Variable/Pipe254436
+Node: Getline/Coprocess255569
+Node: Getline/Variable/Coprocess256834
+Node: Getline Notes257574
+Node: Getline Summary260369
+Ref: table-getline-variants260791
+Node: Read Timeout261539
+Ref: Read Timeout-Footnote-1265380
+Node: Command-line directories265438
+Node: Input Summary266343
+Node: Input Exercises269515
+Node: Printing270243
+Node: Print272020
+Node: Print Examples273477
+Node: Output Separators276257
+Node: OFMT278274
+Node: Printf279630
+Node: Basic Printf280415
+Node: Control Letters281989
+Node: Format Modifiers285977
+Node: Printf Examples291992
+Node: Redirection294478
+Node: Special FD301321
+Ref: Special FD-Footnote-1304489
+Node: Special Files304563
+Node: Other Inherited Files305180
+Node: Special Network306181
+Node: Special Caveats307041
+Node: Close Files And Pipes307990
+Ref: Close Files And Pipes-Footnote-1315183
+Ref: Close Files And Pipes-Footnote-2315331
+Node: Output Summary315482
+Node: Output Exercises316480
+Node: Expressions317159
+Node: Values318347
+Node: Constants319025
+Node: Scalar Constants319716
+Ref: Scalar Constants-Footnote-1320580
+Node: Nondecimal-numbers320830
+Node: Regexp Constants323844
+Node: Using Constant Regexps324370
+Node: Variables327533
+Node: Using Variables328190
+Node: Assignment Options330101
+Node: Conversion331975
+Node: Strings And Numbers332499
+Ref: Strings And Numbers-Footnote-1335563
+Node: Locale influences conversions335672
+Ref: table-locale-affects338430
+Node: All Operators339048
+Node: Arithmetic Ops339677
+Node: Concatenation342183
+Ref: Concatenation-Footnote-1345030
+Node: Assignment Ops345137
+Ref: table-assign-ops350129
+Node: Increment Ops351442
+Node: Truth Values and Conditions354902
+Node: Truth Values355976
+Node: Typing and Comparison357024
+Node: Variable Typing357844
+Node: Comparison Operators361468
+Ref: table-relational-ops361887
+Node: POSIX String Comparison365382
+Ref: POSIX String Comparison-Footnote-1366456
+Node: Boolean Ops366595
+Ref: Boolean Ops-Footnote-1371077
+Node: Conditional Exp371169
+Node: Function Calls372905
+Node: Precedence376785
+Node: Locales380444
+Node: Expressions Summary382076
+Node: Patterns and Actions384649
+Node: Pattern Overview385769
+Node: Regexp Patterns387446
+Node: Expression Patterns387988
+Node: Ranges391769
+Node: BEGIN/END394877
+Node: Using BEGIN/END395638
+Ref: Using BEGIN/END-Footnote-1398375
+Node: I/O And BEGIN/END398481
+Node: BEGINFILE/ENDFILE400797
+Node: Empty403704
+Node: Using Shell Variables404021
+Node: Action Overview406295
+Node: Statements408620
+Node: If Statement410468
+Node: While Statement411963
+Node: Do Statement413991
+Node: For Statement415139
+Node: Switch Statement418298
+Node: Break Statement420684
+Node: Continue Statement422776
+Node: Next Statement424603
+Node: Nextfile Statement426986
+Node: Exit Statement429638
+Node: Built-in Variables432043
+Node: User-modified433176
+Ref: User-modified-Footnote-1440803
+Node: Auto-set440865
+Ref: Auto-set-Footnote-1453959
+Ref: Auto-set-Footnote-2454165
+Node: ARGC and ARGV454221
+Node: Pattern Action Summary458440
+Node: Arrays460870
+Node: Array Basics462199
+Node: Array Intro463043
+Ref: figure-array-elements465018
+Ref: Array Intro-Footnote-1467722
+Node: Reference to Elements467850
+Node: Assigning Elements470314
+Node: Array Example470805
+Node: Scanning an Array472564
+Node: Controlling Scanning475588
+Ref: Controlling Scanning-Footnote-1480987
+Node: Numeric Array Subscripts481303
+Node: Uninitialized Subscripts483487
+Node: Delete485106
+Ref: Delete-Footnote-1487858
+Node: Multidimensional487915
+Node: Multiscanning491010
+Node: Arrays of Arrays492601
+Node: Arrays Summary497369
+Node: Functions499462
+Node: Built-in500500
+Node: Calling Built-in501578
+Node: Numeric Functions503574
+Ref: Numeric Functions-Footnote-1507602
+Ref: Numeric Functions-Footnote-2507959
+Ref: Numeric Functions-Footnote-3508007
+Node: String Functions508279
+Ref: String Functions-Footnote-1531787
+Ref: String Functions-Footnote-2531916
+Ref: String Functions-Footnote-3532164
+Node: Gory Details532251
+Ref: table-sub-escapes534042
+Ref: table-sub-proposed535561
+Ref: table-posix-sub536924
+Ref: table-gensub-escapes538465
+Ref: Gory Details-Footnote-1539288
+Node: I/O Functions539439
+Ref: I/O Functions-Footnote-1546660
+Node: Time Functions546808
+Ref: Time Functions-Footnote-1557313
+Ref: Time Functions-Footnote-2557381
+Ref: Time Functions-Footnote-3557539
+Ref: Time Functions-Footnote-4557650
+Ref: Time Functions-Footnote-5557762
+Ref: Time Functions-Footnote-6557989
+Node: Bitwise Functions558255
+Ref: table-bitwise-ops558849
+Ref: Bitwise Functions-Footnote-1563187
+Node: Type Functions563360
+Node: I18N Functions564516
+Node: User-defined566167
+Node: Definition Syntax566972
+Ref: Definition Syntax-Footnote-1572659
+Node: Function Example572730
+Ref: Function Example-Footnote-1575652
+Node: Function Caveats575674
+Node: Calling A Function576192
+Node: Variable Scope577150
+Node: Pass By Value/Reference580144
+Node: Return Statement583643
+Node: Dynamic Typing586622
+Node: Indirect Calls587552
+Ref: Indirect Calls-Footnote-1597803
+Node: Functions Summary597931
+Node: Library Functions600636
+Ref: Library Functions-Footnote-1604245
+Ref: Library Functions-Footnote-2604388
+Node: Library Names604559
+Ref: Library Names-Footnote-1608020
+Ref: Library Names-Footnote-2608243
+Node: General Functions608329
+Node: Strtonum Function609432
+Node: Assert Function612454
+Node: Round Function615780
+Node: Cliff Random Function617321
+Node: Ordinal Functions618337
+Ref: Ordinal Functions-Footnote-1621400
+Ref: Ordinal Functions-Footnote-2621652
+Node: Join Function621862
+Ref: Join Function-Footnote-1623632
+Node: Getlocaltime Function623832
+Node: Readfile Function627576
+Node: Shell Quoting629550
+Node: Data File Management630951
+Node: Filetrans Function631583
+Node: Rewind Function635680
+Node: File Checking637066
+Ref: File Checking-Footnote-1638400
+Node: Empty Files638601
+Node: Ignoring Assigns640580
+Node: Getopt Function642130
+Ref: Getopt Function-Footnote-1653600
+Node: Passwd Functions653800
+Ref: Passwd Functions-Footnote-1662641
+Node: Group Functions662729
+Ref: Group Functions-Footnote-1670628
+Node: Walking Arrays670835
+Node: Library Functions Summary673845
+Node: Library Exercises675251
+Node: Sample Programs675716
+Node: Running Examples676486
+Node: Clones677214
+Node: Cut Program678438
+Node: Egrep Program688159
+Ref: Egrep Program-Footnote-1695671
+Node: Id Program695781
+Node: Split Program699461
+Ref: Split Program-Footnote-1702920
+Node: Tee Program703049
+Node: Uniq Program705839
+Node: Wc Program713265
+Ref: Wc Program-Footnote-1717520
+Node: Miscellaneous Programs717614
+Node: Dupword Program718827
+Node: Alarm Program720857
+Node: Translate Program725712
+Ref: Translate Program-Footnote-1730277
+Node: Labels Program730547
+Ref: Labels Program-Footnote-1733898
+Node: Word Sorting733982
+Node: History Sorting738054
+Node: Extract Program739889
+Node: Simple Sed747418
+Node: Igawk Program750492
+Ref: Igawk Program-Footnote-1764823
+Ref: Igawk Program-Footnote-2765025
+Ref: Igawk Program-Footnote-3765147
+Node: Anagram Program765262
+Node: Signature Program768324
+Node: Programs Summary769571
+Node: Programs Exercises770786
+Ref: Programs Exercises-Footnote-1774915
+Node: Advanced Features775006
+Node: Nondecimal Data776996
+Node: Array Sorting778587
+Node: Controlling Array Traversal779287
+Ref: Controlling Array Traversal-Footnote-1787656
+Node: Array Sorting Functions787774
+Ref: Array Sorting Functions-Footnote-1792865
+Node: Two-way I/O793061
+Ref: Two-way I/O-Footnote-1798012
+Ref: Two-way I/O-Footnote-2798199
+Node: TCP/IP Networking798281
+Node: Profiling801399
+Node: Advanced Features Summary808938
+Node: Internationalization810874
+Node: I18N and L10N812354
+Node: Explaining gettext813041
+Ref: Explaining gettext-Footnote-1818064
+Ref: Explaining gettext-Footnote-2818249
+Node: Programmer i18n818414
+Ref: Programmer i18n-Footnote-1823270
+Node: Translator i18n823319
+Node: String Extraction824113
+Ref: String Extraction-Footnote-1825246
+Node: Printf Ordering825332
+Ref: Printf Ordering-Footnote-1828118
+Node: I18N Portability828182
+Ref: I18N Portability-Footnote-1830638
+Node: I18N Example830701
+Ref: I18N Example-Footnote-1833507
+Node: Gawk I18N833580
+Node: I18N Summary834225
+Node: Debugger835566
+Node: Debugging836588
+Node: Debugging Concepts837029
+Node: Debugging Terms838838
+Node: Awk Debugging841413
+Node: Sample Debugging Session842319
+Node: Debugger Invocation842853
+Node: Finding The Bug844239
+Node: List of Debugger Commands850717
+Node: Breakpoint Control852050
+Node: Debugger Execution Control855744
+Node: Viewing And Changing Data859106
+Node: Execution Stack862480
+Node: Debugger Info864117
+Node: Miscellaneous Debugger Commands868188
+Node: Readline Support873276
+Node: Limitations874172
+Node: Debugging Summary876281
+Node: Arbitrary Precision Arithmetic877454
+Node: Computer Arithmetic878870
+Ref: table-numeric-ranges882461
+Ref: Computer Arithmetic-Footnote-1883183
+Node: Math Definitions883240
+Ref: table-ieee-formats886554
+Ref: Math Definitions-Footnote-1887157
+Node: MPFR features887262
+Node: FP Math Caution888935
+Ref: FP Math Caution-Footnote-1890007
+Node: Inexactness of computations890376
+Node: Inexact representation891336
+Node: Comparing FP Values892696
+Node: Errors accumulate893778
+Node: Getting Accuracy895211
+Node: Try To Round897921
+Node: Setting precision898820
+Ref: table-predefined-precision-strings899517
+Node: Setting the rounding mode901347
+Ref: table-gawk-rounding-modes901721
+Ref: Setting the rounding mode-Footnote-1905129
+Node: Arbitrary Precision Integers905308
+Ref: Arbitrary Precision Integers-Footnote-1908292
+Node: POSIX Floating Point Problems908441
+Ref: POSIX Floating Point Problems-Footnote-1912323
+Node: Floating point summary912361
+Node: Dynamic Extensions914551
+Node: Extension Intro916104
+Node: Plugin License917370
+Node: Extension Mechanism Outline918167
+Ref: figure-load-extension918606
+Ref: figure-register-new-function920171
+Ref: figure-call-new-function921263
+Node: Extension API Description923326
+Node: Extension API Functions Introduction924774
+Node: General Data Types929586
+Ref: General Data Types-Footnote-1935541
+Node: Memory Allocation Functions935840
+Ref: Memory Allocation Functions-Footnote-1938685
+Node: Constructor Functions938784
+Node: Registration Functions940529
+Node: Extension Functions941214
+Node: Exit Callback Functions943513
+Node: Extension Version String944763
+Node: Input Parsers945426
+Node: Output Wrappers955311
+Node: Two-way processors959823
+Node: Printing Messages962087
+Ref: Printing Messages-Footnote-1963161
+Node: Updating ERRNO963314
+Node: Requesting Values964053
+Ref: table-value-types-returned964790
+Node: Accessing Parameters965673
+Node: Symbol Table Access966909
+Node: Symbol table by name967421
+Node: Symbol table by cookie969442
+Ref: Symbol table by cookie-Footnote-1973591
+Node: Cached values973655
+Ref: Cached values-Footnote-1977156
+Node: Array Manipulation977247
+Ref: Array Manipulation-Footnote-1978346
+Node: Array Data Types978383
+Ref: Array Data Types-Footnote-1981041
+Node: Array Functions981133
+Node: Flattening Arrays984992
+Node: Creating Arrays991900
+Node: Extension API Variables996672
+Node: Extension Versioning997308
+Node: Extension API Informational Variables999199
+Node: Extension API Boilerplate1000263
+Node: Finding Extensions1004077
+Node: Extension Example1004637
+Node: Internal File Description1005435
+Node: Internal File Ops1009515
+Ref: Internal File Ops-Footnote-11021277
+Node: Using Internal File Ops1021417
+Ref: Using Internal File Ops-Footnote-11023800
+Node: Extension Samples1024075
+Node: Extension Sample File Functions1025604
+Node: Extension Sample Fnmatch1033253
+Node: Extension Sample Fork1034740
+Node: Extension Sample Inplace1035958
+Node: Extension Sample Ord1039168
+Node: Extension Sample Readdir1040004
+Ref: table-readdir-file-types1040893
+Node: Extension Sample Revout1041698
+Node: Extension Sample Rev2way1042287
+Node: Extension Sample Read write array1043027
+Node: Extension Sample Readfile1044969
+Node: Extension Sample Time1046064
+Node: Extension Sample API Tests1047412
+Node: gawkextlib1047904
+Node: Extension summary1050328
+Node: Extension Exercises1054020
+Node: Language History1055517
+Node: V7/SVR3.11057173
+Node: SVR41059325
+Node: POSIX1060759
+Node: BTL1062139
+Node: POSIX/GNU1062869
+Node: Feature History1068390
+Node: Common Extensions1081719
+Node: Ranges and Locales1083002
+Ref: Ranges and Locales-Footnote-11087618
+Ref: Ranges and Locales-Footnote-21087645
+Ref: Ranges and Locales-Footnote-31087880
+Node: Contributors1088101
+Node: History summary1093670
+Node: Installation1095050
+Node: Gawk Distribution1095995
+Node: Getting1096479
+Node: Extracting1097440
+Node: Distribution contents1099078
+Node: Unix Installation1104831
+Node: Quick Installation1105447
+Node: Additional Configuration Options1107874
+Node: Configuration Philosophy1109678
+Node: Non-Unix Installation1112048
+Node: PC Installation1112506
+Node: PC Binary Installation1113826
+Node: PC Compiling1115678
+Ref: PC Compiling-Footnote-11118702
+Node: PC Testing1118811
+Node: PC Using1119991
+Node: Cygwin1124105
+Node: MSYS1124875
+Node: VMS Installation1125376
+Node: VMS Compilation1126167
+Ref: VMS Compilation-Footnote-11127397
+Node: VMS Dynamic Extensions1127455
+Node: VMS Installation Details1129140
+Node: VMS Running1131393
+Node: VMS GNV1134234
+Node: VMS Old Gawk1134969
+Node: Bugs1135440
+Node: Other Versions1139637
+Node: Installation summary1146223
+Node: Notes1147281
+Node: Compatibility Mode1148146
+Node: Additions1148928
+Node: Accessing The Source1149853
+Node: Adding Code1151289
+Node: New Ports1157508
+Node: Derived Files1161996
+Ref: Derived Files-Footnote-11167481
+Ref: Derived Files-Footnote-21167516
+Ref: Derived Files-Footnote-31168114
+Node: Future Extensions1168228
+Node: Implementation Limitations1168886
+Node: Extension Design1170069
+Node: Old Extension Problems1171223
+Ref: Old Extension Problems-Footnote-11172741
+Node: Extension New Mechanism Goals1172798
+Ref: Extension New Mechanism Goals-Footnote-11176162
+Node: Extension Other Design Decisions1176351
+Node: Extension Future Growth1178464
+Node: Old Extension Mechanism1179300
+Node: Notes summary1181063
+Node: Basic Concepts1182245
+Node: Basic High Level1182926
+Ref: figure-general-flow1183208
+Ref: figure-process-flow1183893
+Ref: Basic High Level-Footnote-11187194
+Node: Basic Data Typing1187379
+Node: Glossary1190707
+Node: Copying1222653
+Node: GNU Free Documentation License1260192
+Node: Index1285310

End Tag Table
diff --git a/doc/gawk.texi b/doc/gawk.texi
index 32602505..f38eff49 100644
--- a/doc/gawk.texi
+++ b/doc/gawk.texi
@@ -5774,6 +5774,10 @@ they do not recognize collating symbols or equivalence classes.
@end quotation
@c maybe one day ...
+Inside a bracket expression, an opening bracket (@samp{[}) that does
+not start a character class, collating element or equivalence class is
+taken literally. This is also true of @samp{.} and @samp{*}.
+
@node Leftmost Longest
@section How Much Text Matches?
diff --git a/doc/gawktexi.in b/doc/gawktexi.in
index deb212ed..ec715346 100644
--- a/doc/gawktexi.in
+++ b/doc/gawktexi.in
@@ -5602,6 +5602,10 @@ they do not recognize collating symbols or equivalence classes.
@end quotation
@c maybe one day ...
+Inside a bracket expression, an opening bracket (@samp{[}) that does
+not start a character class, collating element or equivalence class is
+taken literally. This is also true of @samp{.} and @samp{*}.
+
@node Leftmost Longest
@section How Much Text Matches?