aboutsummaryrefslogtreecommitdiffstats
path: root/doc
diff options
context:
space:
mode:
Diffstat (limited to 'doc')
-rw-r--r--doc/ChangeLog10
-rw-r--r--doc/gawk.info478
-rw-r--r--doc/gawk.texi13
-rw-r--r--doc/gawktexi.in13
4 files changed, 261 insertions, 253 deletions
diff --git a/doc/ChangeLog b/doc/ChangeLog
index 45871893..c5b59fed 100644
--- a/doc/ChangeLog
+++ b/doc/ChangeLog
@@ -3,6 +3,10 @@
* gawktexi.in): Small typo fixes. Thanks to Antonio
Giovanni Colombo for pointing them out.
+2018-11-01 Arnold D. Robbins <arnold@skeeve.com>
+
+ * gawktexi.in (Profiling): Review and update.
+
2018-10-30 Arnold D. Robbins <arnold@skeeve.com>
* gawktexi.in (Arrays of Arrays): Typo fix in code. Thanks to Alto Tom
@@ -20,6 +24,12 @@
Communications Guidelines, with URL.
* texinfo.tex: Updated from GNULIB.
+2018-10-17 Arnold D. Robbins <arnold@skeeve.com>
+
+ * gawktexi.in (Profiling): Revise example for pattern without
+ action and note that the profiler distinguishes `print' and
+ `print $0'.
+
2018-09-23 Arnold D. Robbins <arnold@skeeve.com>
* gawktexi.in (Extracting): Note that patch levels above
diff --git a/doc/gawk.info b/doc/gawk.info
index 58c11978..01f7376f 100644
--- a/doc/gawk.info
+++ b/doc/gawk.info
@@ -20759,7 +20759,8 @@ output. They are as follows:
structure of the program and the precedence rules. For example,
'(3 + 5) * 4' means add three and five, then multiply the total by
four. However, '3 + 5 * 4' has no parentheses, and means '3 + (5 *
- 4)'.
+ 4)'. However, explicit parentheses in the source program are
+ retained.
* Parentheses are used around the arguments to 'print' and 'printf'
only when the 'print' or 'printf' statement is followed by a
@@ -20781,10 +20782,11 @@ representation. Also, things such as:
come out as:
/foo/ {
- print $0
+ print
}
-which is correct, but possibly unexpected.
+which is correct, but possibly unexpected. (If a program uses both
+'print $0' and plain 'print', that distinction is retained.)
Besides creating profiles when a program has completed, 'gawk' can
produce a profile while it is running. This is useful if your 'awk'
@@ -20840,7 +20842,10 @@ without any execution counts.
profiling, and that created when pretty-printing. Pretty-printed output
preserves the original comments that were in the program, although their
placement may not correspond exactly to their original locations in the
-source code.(1)
+source code. However, no comments should be lost. Also, 'gawk' does
+the best it can to preserve the distinction between comments at the end
+of a statement and comments on lines by themselves. This isn't always
+perfect, though.
However, as a deliberate design decision, profiling output _omits_
the original program's comments. This allows you to focus on the
@@ -20860,14 +20865,6 @@ disable 'gawk''s default optimizations.
constants; if you used an octal or hexadecimal value in your source
code, it will appear that way in the output.
- ---------- Footnotes ----------
-
- (1) 'gawk' does the best it can to preserve the distinction between
-comments at the end of a statement and comments on lines by themselves.
-Due to implementation constraints, it does not always do so correctly,
-particularly for 'switch' statements. The 'gawk' maintainers hope to
-improve this in a subsequent release.
-

File: gawk.info, Node: Advanced Features Summary, Prev: Profiling, Up: Advanced Features
@@ -34143,7 +34140,7 @@ Index
* dump debugger command: Miscellaneous Debugger Commands.
(line 9)
* dupword.awk program: Dupword Program. (line 31)
-* dynamic profiling: Profiling. (line 177)
+* dynamic profiling: Profiling. (line 179)
* dynamically loaded extensions: Dynamic Extensions. (line 6)
* e debugger command (alias for enable): Breakpoint Control. (line 73)
* EBCDIC: Ordinal Functions. (line 45)
@@ -34532,7 +34529,7 @@ Index
* G., Daniel Richard: Acknowledgments. (line 60)
* G., Daniel Richard <1>: Maintainers. (line 14)
* Garfinkle, Scott: Contributors. (line 35)
-* gawk program, dynamic profiling: Profiling. (line 177)
+* gawk program, dynamic profiling: Profiling. (line 179)
* gawk version: Auto-set. (line 241)
* gawk, ARGIND variable in: Other Arguments. (line 15)
* gawk, awk and: Preface. (line 21)
@@ -34737,7 +34734,7 @@ Index
* history expansion, in debugger: Readline Support. (line 6)
* histsort.awk program: History Sorting. (line 25)
* Hughes, Phil: Acknowledgments. (line 43)
-* HUP signal, for dynamic profiling: Profiling. (line 209)
+* HUP signal, for dynamic profiling: Profiling. (line 211)
* hyphen (-), - operator: Precedence. (line 51)
* hyphen (-), - operator <1>: Precedence. (line 57)
* hyphen (-), -- operator: Increment Ops. (line 48)
@@ -34819,7 +34816,7 @@ Index
* installing gawk: Installation. (line 6)
* instruction tracing, in debugger: Debugger Info. (line 90)
* int: Numeric Functions. (line 24)
-* INT signal (MS-Windows): Profiling. (line 212)
+* INT signal (MS-Windows): Profiling. (line 214)
* integer array indices: Numeric Array Subscripts.
(line 31)
* integers, arbitrary precision: Arbitrary Precision Integers.
@@ -34875,7 +34872,7 @@ Index
* Kernighan, Brian <8>: Other Versions. (line 13)
* Kernighan, Brian <9>: Basic Data Typing. (line 54)
* Kernighan, Brian <10>: Glossary. (line 204)
-* kill command, dynamic profiling: Profiling. (line 186)
+* kill command, dynamic profiling: Profiling. (line 188)
* Knights, jedi: Undocumented. (line 6)
* Kwok, Conrad: Contributors. (line 35)
* l debugger command (alias for list): Miscellaneous Debugger Commands.
@@ -35389,7 +35386,7 @@ Index
* PROCINFO, values of sorted_in: Controlling Scanning.
(line 26)
* profiling awk programs: Profiling. (line 6)
-* profiling awk programs, dynamically: Profiling. (line 177)
+* profiling awk programs, dynamically: Profiling. (line 179)
* program identifiers: Auto-set. (line 193)
* program, definition of: Getting Started. (line 21)
* programming conventions, --non-decimal-data option: Nondecimal Data.
@@ -35426,7 +35423,7 @@ Index
* QuikTrim Awk: Other Versions. (line 135)
* quit debugger command: Miscellaneous Debugger Commands.
(line 100)
-* QUIT signal (MS-Windows): Profiling. (line 212)
+* QUIT signal (MS-Windows): Profiling. (line 214)
* quoting in gawk command lines: Long. (line 26)
* quoting in gawk command lines, tricks for: Quoting. (line 91)
* quoting, for small awk programs: Comments. (line 27)
@@ -35716,15 +35713,15 @@ Index
(line 130)
* sidebar, Using \n in Bracket Expressions of Dynamic Regexps: Computed Regexps.
(line 58)
-* SIGHUP signal, for dynamic profiling: Profiling. (line 209)
-* SIGINT signal (MS-Windows): Profiling. (line 212)
-* signals, HUP/SIGHUP, for profiling: Profiling. (line 209)
-* signals, INT/SIGINT (MS-Windows): Profiling. (line 212)
-* signals, QUIT/SIGQUIT (MS-Windows): Profiling. (line 212)
-* signals, USR1/SIGUSR1, for profiling: Profiling. (line 186)
+* SIGHUP signal, for dynamic profiling: Profiling. (line 211)
+* SIGINT signal (MS-Windows): Profiling. (line 214)
+* signals, HUP/SIGHUP, for profiling: Profiling. (line 211)
+* signals, INT/SIGINT (MS-Windows): Profiling. (line 214)
+* signals, QUIT/SIGQUIT (MS-Windows): Profiling. (line 214)
+* signals, USR1/SIGUSR1, for profiling: Profiling. (line 188)
* signature program: Signature Program. (line 6)
-* SIGQUIT signal (MS-Windows): Profiling. (line 212)
-* SIGUSR1 signal, for dynamic profiling: Profiling. (line 186)
+* SIGQUIT signal (MS-Windows): Profiling. (line 214)
+* SIGUSR1 signal, for dynamic profiling: Profiling. (line 188)
* silent debugger command: Debugger Execution Control.
(line 10)
* sin: Numeric Functions. (line 75)
@@ -36004,7 +36001,7 @@ Index
* user-modifiable variables: User-modified. (line 6)
* users, information about, printing: Id Program. (line 6)
* users, information about, retrieving: Passwd Functions. (line 16)
-* USR1 signal, for dynamic profiling: Profiling. (line 186)
+* USR1 signal, for dynamic profiling: Profiling. (line 188)
* values, numeric: Basic Data Typing. (line 13)
* values, string: Basic Data Typing. (line 13)
* variable assignments and input files: Other Arguments. (line 26)
@@ -36472,218 +36469,217 @@ Ref: Two-way I/O-Footnote-1835053
Ref: Two-way I/O-Footnote-2835240
Node: TCP/IP Networking835322
Node: Profiling838440
-Ref: Profiling-Footnote-1847112
-Node: Advanced Features Summary847435
-Node: Internationalization849279
-Node: I18N and L10N850759
-Node: Explaining gettext851446
-Ref: Explaining gettext-Footnote-1857338
-Ref: Explaining gettext-Footnote-2857523
-Node: Programmer i18n857688
-Ref: Programmer i18n-Footnote-1862637
-Node: Translator i18n862686
-Node: String Extraction863480
-Ref: String Extraction-Footnote-1864612
-Node: Printf Ordering864698
-Ref: Printf Ordering-Footnote-1867484
-Node: I18N Portability867548
-Ref: I18N Portability-Footnote-1870004
-Node: I18N Example870067
-Ref: I18N Example-Footnote-1872873
-Node: Gawk I18N872946
-Node: I18N Summary873591
-Node: Debugger874932
-Node: Debugging875955
-Node: Debugging Concepts876396
-Node: Debugging Terms878205
-Node: Awk Debugging880780
-Node: Sample Debugging Session881686
-Node: Debugger Invocation882220
-Node: Finding The Bug883606
-Node: List of Debugger Commands890084
-Node: Breakpoint Control891417
-Node: Debugger Execution Control895111
-Node: Viewing And Changing Data898473
-Node: Execution Stack901847
-Node: Debugger Info903484
-Node: Miscellaneous Debugger Commands907555
-Node: Readline Support912617
-Node: Limitations913513
-Node: Debugging Summary915622
-Node: Arbitrary Precision Arithmetic916901
-Node: Computer Arithmetic918386
-Ref: table-numeric-ranges922152
-Ref: table-floating-point-ranges922645
-Ref: Computer Arithmetic-Footnote-1923303
-Node: Math Definitions923360
-Ref: table-ieee-formats926676
-Ref: Math Definitions-Footnote-1927279
-Node: MPFR features927384
-Node: FP Math Caution929102
-Ref: FP Math Caution-Footnote-1930174
-Node: Inexactness of computations930543
-Node: Inexact representation931503
-Node: Comparing FP Values932863
-Node: Errors accumulate934104
-Node: Getting Accuracy935537
-Node: Try To Round938247
-Node: Setting precision939146
-Ref: table-predefined-precision-strings939843
-Node: Setting the rounding mode941673
-Ref: table-gawk-rounding-modes942047
-Ref: Setting the rounding mode-Footnote-1945978
-Node: Arbitrary Precision Integers946157
-Ref: Arbitrary Precision Integers-Footnote-1949332
-Node: Checking for MPFR949481
-Node: POSIX Floating Point Problems950955
-Ref: POSIX Floating Point Problems-Footnote-1955240
-Node: Floating point summary955278
-Node: Dynamic Extensions957468
-Node: Extension Intro959021
-Node: Plugin License960287
-Node: Extension Mechanism Outline961084
-Ref: figure-load-extension961523
-Ref: figure-register-new-function963088
-Ref: figure-call-new-function964180
-Node: Extension API Description966242
-Node: Extension API Functions Introduction967884
-Node: General Data Types973424
-Ref: General Data Types-Footnote-1981785
-Node: Memory Allocation Functions982084
-Ref: Memory Allocation Functions-Footnote-1986294
-Node: Constructor Functions986393
-Node: Registration Functions989979
-Node: Extension Functions990664
-Node: Exit Callback Functions995879
-Node: Extension Version String997129
-Node: Input Parsers997792
-Node: Output Wrappers1010513
-Node: Two-way processors1015025
-Node: Printing Messages1017290
-Ref: Printing Messages-Footnote-11018461
-Node: Updating ERRNO1018614
-Node: Requesting Values1019353
-Ref: table-value-types-returned1020090
-Node: Accessing Parameters1021026
-Node: Symbol Table Access1022261
-Node: Symbol table by name1022773
-Node: Symbol table by cookie1024562
-Ref: Symbol table by cookie-Footnote-11028747
-Node: Cached values1028811
-Ref: Cached values-Footnote-11032347
-Node: Array Manipulation1032500
-Ref: Array Manipulation-Footnote-11033591
-Node: Array Data Types1033628
-Ref: Array Data Types-Footnote-11036286
-Node: Array Functions1036378
-Node: Flattening Arrays1040876
-Node: Creating Arrays1047852
-Node: Redirection API1052619
-Node: Extension API Variables1055452
-Node: Extension Versioning1056163
-Ref: gawk-api-version1056592
-Node: Extension GMP/MPFR Versioning1058323
-Node: Extension API Informational Variables1059951
-Node: Extension API Boilerplate1061024
-Node: Changes from API V11064998
-Node: Finding Extensions1066570
-Node: Extension Example1067129
-Node: Internal File Description1067927
-Node: Internal File Ops1072007
-Ref: Internal File Ops-Footnote-11083357
-Node: Using Internal File Ops1083497
-Ref: Using Internal File Ops-Footnote-11085880
-Node: Extension Samples1086154
-Node: Extension Sample File Functions1087683
-Node: Extension Sample Fnmatch1095332
-Node: Extension Sample Fork1096819
-Node: Extension Sample Inplace1098037
-Node: Extension Sample Ord1101254
-Node: Extension Sample Readdir1102090
-Ref: table-readdir-file-types1102979
-Node: Extension Sample Revout1103784
-Node: Extension Sample Rev2way1104373
-Node: Extension Sample Read write array1105113
-Node: Extension Sample Readfile1107055
-Node: Extension Sample Time1108150
-Node: Extension Sample API Tests1109498
-Node: gawkextlib1109990
-Node: Extension summary1112908
-Node: Extension Exercises1116610
-Node: Language History1118108
-Node: V7/SVR3.11119764
-Node: SVR41121916
-Node: POSIX1123350
-Node: BTL1124730
-Node: POSIX/GNU1125459
-Node: Feature History1131237
-Node: Common Extensions1147096
-Node: Ranges and Locales1148379
-Ref: Ranges and Locales-Footnote-11152995
-Ref: Ranges and Locales-Footnote-21153022
-Ref: Ranges and Locales-Footnote-31153257
-Node: Contributors1153478
-Node: History summary1159423
-Node: Installation1160803
-Node: Gawk Distribution1161747
-Node: Getting1162231
-Node: Extracting1163194
-Node: Distribution contents1164832
-Node: Unix Installation1171312
-Node: Quick Installation1171994
-Node: Shell Startup Files1174408
-Node: Additional Configuration Options1175497
-Node: Configuration Philosophy1177662
-Node: Non-Unix Installation1180031
-Node: PC Installation1180491
-Node: PC Binary Installation1181329
-Node: PC Compiling1181764
-Node: PC Using1182881
-Node: Cygwin1186096
-Node: MSYS1187195
-Node: VMS Installation1187696
-Node: VMS Compilation1188487
-Ref: VMS Compilation-Footnote-11189716
-Node: VMS Dynamic Extensions1189774
-Node: VMS Installation Details1191459
-Node: VMS Running1193712
-Node: VMS GNV1197991
-Node: VMS Old Gawk1198726
-Node: Bugs1199197
-Node: Bug address1199860
-Node: Usenet1202842
-Node: Maintainers1203846
-Node: Other Versions1205107
-Node: Installation summary1211665
-Node: Notes1212867
-Node: Compatibility Mode1213661
-Node: Additions1214443
-Node: Accessing The Source1215368
-Node: Adding Code1216805
-Node: New Ports1223024
-Node: Derived Files1227512
-Ref: Derived Files-Footnote-11233158
-Ref: Derived Files-Footnote-21233193
-Ref: Derived Files-Footnote-31233791
-Node: Future Extensions1233905
-Node: Implementation Limitations1234563
-Node: Extension Design1235746
-Node: Old Extension Problems1236890
-Ref: Old Extension Problems-Footnote-11238408
-Node: Extension New Mechanism Goals1238465
-Ref: Extension New Mechanism Goals-Footnote-11241829
-Node: Extension Other Design Decisions1242018
-Node: Extension Future Growth1244131
-Node: Notes summary1244967
-Node: Basic Concepts1246142
-Node: Basic High Level1246823
-Ref: figure-general-flow1247105
-Ref: figure-process-flow1247790
-Ref: Basic High Level-Footnote-11251091
-Node: Basic Data Typing1251276
-Node: Glossary1254604
-Node: Copying1286442
-Node: GNU Free Documentation License1323985
-Node: Index1349105
+Node: Advanced Features Summary847445
+Node: Internationalization849289
+Node: I18N and L10N850769
+Node: Explaining gettext851456
+Ref: Explaining gettext-Footnote-1857348
+Ref: Explaining gettext-Footnote-2857533
+Node: Programmer i18n857698
+Ref: Programmer i18n-Footnote-1862647
+Node: Translator i18n862696
+Node: String Extraction863490
+Ref: String Extraction-Footnote-1864622
+Node: Printf Ordering864708
+Ref: Printf Ordering-Footnote-1867494
+Node: I18N Portability867558
+Ref: I18N Portability-Footnote-1870014
+Node: I18N Example870077
+Ref: I18N Example-Footnote-1872883
+Node: Gawk I18N872956
+Node: I18N Summary873601
+Node: Debugger874942
+Node: Debugging875965
+Node: Debugging Concepts876406
+Node: Debugging Terms878215
+Node: Awk Debugging880790
+Node: Sample Debugging Session881696
+Node: Debugger Invocation882230
+Node: Finding The Bug883616
+Node: List of Debugger Commands890094
+Node: Breakpoint Control891427
+Node: Debugger Execution Control895121
+Node: Viewing And Changing Data898483
+Node: Execution Stack901857
+Node: Debugger Info903494
+Node: Miscellaneous Debugger Commands907565
+Node: Readline Support912627
+Node: Limitations913523
+Node: Debugging Summary915632
+Node: Arbitrary Precision Arithmetic916911
+Node: Computer Arithmetic918396
+Ref: table-numeric-ranges922162
+Ref: table-floating-point-ranges922655
+Ref: Computer Arithmetic-Footnote-1923313
+Node: Math Definitions923370
+Ref: table-ieee-formats926686
+Ref: Math Definitions-Footnote-1927289
+Node: MPFR features927394
+Node: FP Math Caution929112
+Ref: FP Math Caution-Footnote-1930184
+Node: Inexactness of computations930553
+Node: Inexact representation931513
+Node: Comparing FP Values932873
+Node: Errors accumulate934114
+Node: Getting Accuracy935547
+Node: Try To Round938257
+Node: Setting precision939156
+Ref: table-predefined-precision-strings939853
+Node: Setting the rounding mode941683
+Ref: table-gawk-rounding-modes942057
+Ref: Setting the rounding mode-Footnote-1945988
+Node: Arbitrary Precision Integers946167
+Ref: Arbitrary Precision Integers-Footnote-1949342
+Node: Checking for MPFR949491
+Node: POSIX Floating Point Problems950965
+Ref: POSIX Floating Point Problems-Footnote-1955250
+Node: Floating point summary955288
+Node: Dynamic Extensions957478
+Node: Extension Intro959031
+Node: Plugin License960297
+Node: Extension Mechanism Outline961094
+Ref: figure-load-extension961533
+Ref: figure-register-new-function963098
+Ref: figure-call-new-function964190
+Node: Extension API Description966252
+Node: Extension API Functions Introduction967894
+Node: General Data Types973434
+Ref: General Data Types-Footnote-1981795
+Node: Memory Allocation Functions982094
+Ref: Memory Allocation Functions-Footnote-1986304
+Node: Constructor Functions986403
+Node: Registration Functions989989
+Node: Extension Functions990674
+Node: Exit Callback Functions995889
+Node: Extension Version String997139
+Node: Input Parsers997802
+Node: Output Wrappers1010523
+Node: Two-way processors1015035
+Node: Printing Messages1017300
+Ref: Printing Messages-Footnote-11018471
+Node: Updating ERRNO1018624
+Node: Requesting Values1019363
+Ref: table-value-types-returned1020100
+Node: Accessing Parameters1021036
+Node: Symbol Table Access1022271
+Node: Symbol table by name1022783
+Node: Symbol table by cookie1024572
+Ref: Symbol table by cookie-Footnote-11028757
+Node: Cached values1028821
+Ref: Cached values-Footnote-11032357
+Node: Array Manipulation1032510
+Ref: Array Manipulation-Footnote-11033601
+Node: Array Data Types1033638
+Ref: Array Data Types-Footnote-11036296
+Node: Array Functions1036388
+Node: Flattening Arrays1040886
+Node: Creating Arrays1047862
+Node: Redirection API1052629
+Node: Extension API Variables1055462
+Node: Extension Versioning1056173
+Ref: gawk-api-version1056602
+Node: Extension GMP/MPFR Versioning1058333
+Node: Extension API Informational Variables1059961
+Node: Extension API Boilerplate1061034
+Node: Changes from API V11065008
+Node: Finding Extensions1066580
+Node: Extension Example1067139
+Node: Internal File Description1067937
+Node: Internal File Ops1072017
+Ref: Internal File Ops-Footnote-11083367
+Node: Using Internal File Ops1083507
+Ref: Using Internal File Ops-Footnote-11085890
+Node: Extension Samples1086164
+Node: Extension Sample File Functions1087693
+Node: Extension Sample Fnmatch1095342
+Node: Extension Sample Fork1096829
+Node: Extension Sample Inplace1098047
+Node: Extension Sample Ord1101264
+Node: Extension Sample Readdir1102100
+Ref: table-readdir-file-types1102989
+Node: Extension Sample Revout1103794
+Node: Extension Sample Rev2way1104383
+Node: Extension Sample Read write array1105123
+Node: Extension Sample Readfile1107065
+Node: Extension Sample Time1108160
+Node: Extension Sample API Tests1109508
+Node: gawkextlib1110000
+Node: Extension summary1112918
+Node: Extension Exercises1116620
+Node: Language History1118118
+Node: V7/SVR3.11119774
+Node: SVR41121926
+Node: POSIX1123360
+Node: BTL1124740
+Node: POSIX/GNU1125469
+Node: Feature History1131247
+Node: Common Extensions1147106
+Node: Ranges and Locales1148389
+Ref: Ranges and Locales-Footnote-11153005
+Ref: Ranges and Locales-Footnote-21153032
+Ref: Ranges and Locales-Footnote-31153267
+Node: Contributors1153488
+Node: History summary1159433
+Node: Installation1160813
+Node: Gawk Distribution1161757
+Node: Getting1162241
+Node: Extracting1163204
+Node: Distribution contents1164842
+Node: Unix Installation1171322
+Node: Quick Installation1172004
+Node: Shell Startup Files1174418
+Node: Additional Configuration Options1175507
+Node: Configuration Philosophy1177672
+Node: Non-Unix Installation1180041
+Node: PC Installation1180501
+Node: PC Binary Installation1181339
+Node: PC Compiling1181774
+Node: PC Using1182891
+Node: Cygwin1186106
+Node: MSYS1187205
+Node: VMS Installation1187706
+Node: VMS Compilation1188497
+Ref: VMS Compilation-Footnote-11189726
+Node: VMS Dynamic Extensions1189784
+Node: VMS Installation Details1191469
+Node: VMS Running1193722
+Node: VMS GNV1198001
+Node: VMS Old Gawk1198736
+Node: Bugs1199207
+Node: Bug address1199870
+Node: Usenet1202852
+Node: Maintainers1203856
+Node: Other Versions1205117
+Node: Installation summary1211675
+Node: Notes1212877
+Node: Compatibility Mode1213671
+Node: Additions1214453
+Node: Accessing The Source1215378
+Node: Adding Code1216815
+Node: New Ports1223034
+Node: Derived Files1227522
+Ref: Derived Files-Footnote-11233168
+Ref: Derived Files-Footnote-21233203
+Ref: Derived Files-Footnote-31233801
+Node: Future Extensions1233915
+Node: Implementation Limitations1234573
+Node: Extension Design1235756
+Node: Old Extension Problems1236900
+Ref: Old Extension Problems-Footnote-11238418
+Node: Extension New Mechanism Goals1238475
+Ref: Extension New Mechanism Goals-Footnote-11241839
+Node: Extension Other Design Decisions1242028
+Node: Extension Future Growth1244141
+Node: Notes summary1244977
+Node: Basic Concepts1246152
+Node: Basic High Level1246833
+Ref: figure-general-flow1247115
+Ref: figure-process-flow1247800
+Ref: Basic High Level-Footnote-11251101
+Node: Basic Data Typing1251286
+Node: Glossary1254614
+Node: Copying1286452
+Node: GNU Free Documentation License1323995
+Node: Index1349115

End Tag Table
diff --git a/doc/gawk.texi b/doc/gawk.texi
index 6ccd0f31..68a03042 100644
--- a/doc/gawk.texi
+++ b/doc/gawk.texi
@@ -29081,6 +29081,7 @@ of the program and the precedence rules.
For example, @samp{(3 + 5) * 4} means add three and five, then multiply
the total by four. However, @samp{3 + 5 * 4} has no parentheses, and
means @samp{3 + (5 * 4)}.
+However, explicit parentheses in the source program are retained.
@ignore
@item
@@ -29119,12 +29120,14 @@ come out as:
@example
/foo/ @{
- print $0
+ print
@}
@end example
@noindent
which is correct, but possibly unexpected.
+(If a program uses both @samp{print $0} and plain
+@samp{print}, that distinction is retained.)
@cindex profiling @command{awk} programs, dynamically
@cindex @command{gawk} program, dynamic profiling
@@ -29209,12 +29212,10 @@ There is a significant difference between the output created when
profiling, and that created when pretty-printing. Pretty-printed output
preserves the original comments that were in the program, although their
placement may not correspond exactly to their original locations in the
-source code.@footnote{@command{gawk} does the best it can to preserve
+source code. However, no comments should be lost.
+Also, @command{gawk} does the best it can to preserve
the distinction between comments at the end of a statement and comments
-on lines by themselves. Due to implementation constraints, it does not
-always do so correctly, particularly for @code{switch} statements. The
-@command{gawk} maintainers hope to improve this in a subsequent
-release.}
+on lines by themselves. This isn't always perfect, though.
However, as a deliberate design decision, profiling output @emph{omits}
the original program's comments. This allows you to focus on the
diff --git a/doc/gawktexi.in b/doc/gawktexi.in
index bcfec2b7..df86a60b 100644
--- a/doc/gawktexi.in
+++ b/doc/gawktexi.in
@@ -28094,6 +28094,7 @@ of the program and the precedence rules.
For example, @samp{(3 + 5) * 4} means add three and five, then multiply
the total by four. However, @samp{3 + 5 * 4} has no parentheses, and
means @samp{3 + (5 * 4)}.
+However, explicit parentheses in the source program are retained.
@ignore
@item
@@ -28132,12 +28133,14 @@ come out as:
@example
/foo/ @{
- print $0
+ print
@}
@end example
@noindent
which is correct, but possibly unexpected.
+(If a program uses both @samp{print $0} and plain
+@samp{print}, that distinction is retained.)
@cindex profiling @command{awk} programs, dynamically
@cindex @command{gawk} program, dynamic profiling
@@ -28222,12 +28225,10 @@ There is a significant difference between the output created when
profiling, and that created when pretty-printing. Pretty-printed output
preserves the original comments that were in the program, although their
placement may not correspond exactly to their original locations in the
-source code.@footnote{@command{gawk} does the best it can to preserve
+source code. However, no comments should be lost.
+Also, @command{gawk} does the best it can to preserve
the distinction between comments at the end of a statement and comments
-on lines by themselves. Due to implementation constraints, it does not
-always do so correctly, particularly for @code{switch} statements. The
-@command{gawk} maintainers hope to improve this in a subsequent
-release.}
+on lines by themselves. This isn't always perfect, though.
However, as a deliberate design decision, profiling output @emph{omits}
the original program's comments. This allows you to focus on the