summaryrefslogtreecommitdiff
path: root/doc
diff options
context:
space:
mode:
authorArnold D. Robbins <arnold@skeeve.com>2023-05-15 22:23:32 +0300
committerArnold D. Robbins <arnold@skeeve.com>2023-05-15 22:23:32 +0300
commita0b8fc149978d35beaf505ff6ab01b47fd321f04 (patch)
treeb97beee8abb97d6226f4265c65b89fe7b2e061ce /doc
parentd4eca8ab748b9ff38300f393fd7bf0ef5145e2ec (diff)
parenta9c370a24f51f9840f6aedd0c719dd3d49de6265 (diff)
downloadgawk-master.tar.gz
Merge branch 'gawk-5.2-stable'HEADmasterfeature/docit
Diffstat (limited to 'doc')
-rw-r--r--doc/ChangeLog18
-rw-r--r--doc/gawk.info997
-rw-r--r--doc/gawk.texi15
-rw-r--r--doc/gawktexi.in15
-rwxr-xr-xdoc/it/ChangeLog4
-rw-r--r--doc/wordlist5
6 files changed, 563 insertions, 491 deletions
diff --git a/doc/ChangeLog b/doc/ChangeLog
index 2b250328..95dd27ca 100644
--- a/doc/ChangeLog
+++ b/doc/ChangeLog
@@ -1,3 +1,21 @@
+2023-05-15 Arnold D. Robbins <arnold@skeeve.com>
+
+ * gawktexi.in (OFMT): Add note about conversion of
+ integral values.
+
+2023-05-07 Arnold D. Robbins <arnold@skeeve.com>
+
+ * 5.2.2: Release tar ball made.
+
+2023-05-07 Arnold D. Robbins <arnold@skeeve.com>
+
+ * gawktexi.in (Other Versions): Add a note about cppawk.
+ * wordlist: Updated.
+
+2023-05-04 Arnold D. Robbins <arnold@skeeve.com>
+
+ * wordlist: Add some more words.
+
2023-04-27 Arnold D. Robbins <arnold@skeeve.com>
* awkcard.in: Update copyright year, gawk version,
diff --git a/doc/gawk.info b/doc/gawk.info
index 368f1ea9..21bf2fd9 100644
--- a/doc/gawk.info
+++ b/doc/gawk.info
@@ -7053,6 +7053,11 @@ example:
> print 17.23, 17.54 }'
⊣ 17 18
+ More detail on how ‘awk’ converts numeric values into strings is
+provided in *note Strings And Numbers::. In particular, for ‘print’,
+‘awk’ uses the value of ‘OFMT’ instead of that of ‘CONVFMT’, but
+otherwise behaves exactly the same as described in that minor node.
+
According to the POSIX standard, ‘awk’’s behavior is undefined if ‘OFMT’
contains anything but a floating-point conversion specification. (d.c.)
@@ -32990,6 +32995,14 @@ QSE ‘awk’
The project may also be frozen; no new code changes have been made
since approximately 2014.
+‘cppawk’
+ Quoting from the web page, “‘cppawk’ is a tiny shell script that is
+ used like ‘awk’. It invokes the C preprocessor (GNU ‘cpp’) on the
+ Awk code and calls Awk on the result.” This program may be of use
+ if the way ‘gawk’’s ‘@include’ facility works doesn’t suit your
+ needs. For more information, see
+ <https://www.kylheku.com/cgit/cppawk/>.
+
Other versions
See also the “Versions and implementations” section of the
Wikipedia article
@@ -36985,6 +36998,7 @@ Index
* cos: Numeric Functions. (line 15)
* cosine: Numeric Functions. (line 15)
* counting words, lines, characters, and bytes: Wc Program. (line 6)
+* cppawk: Other Versions. (line 190)
* csh utility: Statements/Lines. (line 45)
* csh utility, POSIXLY_CORRECT environment variable: Options. (line 417)
* csh utility, |& operator, comparison with: Two-way I/O. (line 27)
@@ -37032,7 +37046,7 @@ Index
* dark corner, field separators: Full Line Fields. (line 22)
* dark corner, multiline records: Multiple Line. (line 35)
* dark corner, FILENAME variable: Getline Notes. (line 19)
-* dark corner, OFMT variable: OFMT. (line 27)
+* dark corner, OFMT variable: OFMT. (line 32)
* dark corner, format-control characters: Control Letters. (line 33)
* dark corner, format-control characters <1>: Control Letters.
(line 108)
@@ -38540,7 +38554,7 @@ Index
* octal numbers: Nondecimal-numbers. (line 6)
* octal values, enabling interpretation of: Options. (line 261)
* OFMT variable: OFMT. (line 15)
-* OFMT variable, POSIX awk and: OFMT. (line 27)
+* OFMT variable, POSIX awk and: OFMT. (line 32)
* OFMT variable <1>: Strings And Numbers. (line 56)
* OFMT variable <2>: User-modified. (line 107)
* OFS variable: Changing Fields. (line 64)
@@ -38736,7 +38750,7 @@ Index
* POSIX awk, field separators and: Full Line Fields. (line 16)
* POSIX awk, < operator and: Getline/File. (line 26)
* POSIX awk, | I/O operator and: Getline/Pipe. (line 56)
-* POSIX awk, OFMT variable and: OFMT. (line 27)
+* POSIX awk, OFMT variable and: OFMT. (line 32)
* POSIX awk, printf format strings and: Format Modifiers. (line 157)
* POSIX awk, OFMT variable and <1>: Strings And Numbers. (line 56)
* POSIX awk, arithmetic operators and: Arithmetic Ops. (line 30)
@@ -39270,6 +39284,7 @@ Index
* source code, awkcc: Other Versions. (line 167)
* source code, QSE awk: Other Versions. (line 174)
* source code, QuikTrim Awk: Other Versions. (line 178)
+* source code, cppawk: Other Versions. (line 190)
* source file, show in debugger: Debugger Info. (line 37)
* source files, search path for: Programs Exercises. (line 70)
* sparse arrays: Array Intro. (line 76)
@@ -39792,494 +39807,494 @@ Node: Print314977
Node: Print Examples316483
Node: Output Separators319336
Node: OFMT321447
-Node: Printf322870
-Node: Basic Printf323675
-Node: Control Letters325311
-Node: Format Modifiers330780
-Node: Printf Examples337066
-Node: Redirection339611
-Node: Special FD346685
-Ref: Special FD-Footnote-1349975
-Node: Special Files350061
-Node: Other Inherited Files350690
-Node: Special Network351755
-Node: Special Caveats352643
-Node: Close Files And Pipes353626
-Ref: Close Files And Pipes-Footnote-1359762
-Node: Close Return Value359918
-Ref: table-close-pipe-return-values361193
-Ref: Close Return Value-Footnote-1362027
-Node: Noflush362183
-Node: Nonfatal363695
-Node: Output Summary366112
-Node: Output Exercises367398
-Node: Expressions368089
-Node: Values369291
-Node: Constants369969
-Node: Scalar Constants370666
-Ref: Scalar Constants-Footnote-1373244
-Ref: Scalar Constants-Footnote-2373494
-Node: Nondecimal-numbers373574
-Node: Regexp Constants376695
-Node: Using Constant Regexps377241
-Node: Standard Regexp Constants377887
-Node: Strong Regexp Constants381187
-Node: Variables385038
-Node: Using Variables385703
-Node: Assignment Options387683
-Node: Conversion390245
-Node: Strings And Numbers390777
-Ref: Strings And Numbers-Footnote-1393996
-Node: Locale influences conversions394105
-Ref: table-locale-affects396955
-Node: All Operators397598
-Node: Arithmetic Ops398239
-Node: Concatenation401069
-Ref: Concatenation-Footnote-1404019
-Node: Assignment Ops404142
-Ref: table-assign-ops409281
-Node: Increment Ops410663
-Node: Truth Values and Conditions414262
-Node: Truth Values415388
-Node: Typing and Comparison416479
-Node: Variable Typing417315
-Ref: Variable Typing-Footnote-1423977
-Ref: Variable Typing-Footnote-2424057
-Node: Comparison Operators424140
-Ref: table-relational-ops424567
-Node: POSIX String Comparison428253
-Ref: POSIX String Comparison-Footnote-1430012
-Ref: POSIX String Comparison-Footnote-2430155
-Node: Boolean Ops430239
-Ref: Boolean Ops-Footnote-1434932
-Node: Conditional Exp435028
-Node: Function Calls436814
-Node: Precedence440764
-Node: Locales444641
-Node: Expressions Summary446323
-Node: Patterns and Actions448986
-Node: Pattern Overview450128
-Node: Regexp Patterns451854
-Node: Expression Patterns452400
-Node: Ranges456309
-Node: BEGIN/END459487
-Node: Using BEGIN/END460300
-Ref: Using BEGIN/END-Footnote-1463210
-Node: I/O And BEGIN/END463320
-Node: BEGINFILE/ENDFILE465801
-Node: Empty469242
-Node: Using Shell Variables469559
-Node: Action Overview471897
-Node: Statements474332
-Node: If Statement476230
-Node: While Statement477799
-Node: Do Statement479887
-Node: For Statement481073
-Node: Switch Statement484430
-Node: Break Statement486981
-Node: Continue Statement489173
-Node: Next Statement491105
-Node: Nextfile Statement493602
-Node: Exit Statement496463
-Node: Built-in Variables498996
-Node: User-modified500175
-Node: Auto-set508386
-Ref: Auto-set-Footnote-1526485
-Ref: Auto-set-Footnote-2526703
-Node: ARGC and ARGV526759
-Node: Pattern Action Summary531198
-Node: Arrays533814
-Node: Array Basics535191
-Node: Array Intro536041
-Ref: figure-array-elements538057
-Ref: Array Intro-Footnote-1540926
-Node: Reference to Elements541058
-Node: Assigning Elements543580
-Node: Array Example544075
-Node: Scanning an Array546044
-Node: Controlling Scanning549141
-Ref: Controlling Scanning-Footnote-1555787
-Node: Numeric Array Subscripts556111
-Node: Uninitialized Subscripts558385
-Node: Delete560064
-Ref: Delete-Footnote-1562878
-Node: Multidimensional562935
-Node: Multiscanning566140
-Node: Arrays of Arrays567812
-Node: Arrays Summary572712
-Node: Functions574901
-Node: Built-in575961
-Node: Calling Built-in577150
-Node: Boolean Functions579197
-Node: Numeric Functions579767
-Ref: Numeric Functions-Footnote-1583960
-Ref: Numeric Functions-Footnote-2584644
-Ref: Numeric Functions-Footnote-3584696
-Node: String Functions584972
-Ref: String Functions-Footnote-1611203
-Ref: String Functions-Footnote-2611337
-Ref: String Functions-Footnote-3611597
-Node: Gory Details611684
-Ref: table-sub-escapes613591
-Ref: table-sub-proposed615237
-Ref: table-posix-sub616747
-Ref: table-gensub-escapes618435
-Ref: Gory Details-Footnote-1619369
-Node: I/O Functions619523
-Ref: table-system-return-values626210
-Ref: I/O Functions-Footnote-1628381
-Ref: I/O Functions-Footnote-2628529
-Node: Time Functions628649
-Ref: Time Functions-Footnote-1639805
-Ref: Time Functions-Footnote-2639881
-Ref: Time Functions-Footnote-3640043
-Ref: Time Functions-Footnote-4640154
-Ref: Time Functions-Footnote-5640272
-Ref: Time Functions-Footnote-6640507
-Node: Bitwise Functions640789
-Ref: table-bitwise-ops641391
-Ref: Bitwise Functions-Footnote-1647645
-Ref: Bitwise Functions-Footnote-2647824
-Node: Type Functions648021
-Node: I18N Functions651614
-Node: User-defined653357
-Node: Definition Syntax654177
-Ref: Definition Syntax-Footnote-1660005
-Node: Function Example660082
-Ref: Function Example-Footnote-1663061
-Node: Function Calling663083
-Node: Calling A Function663677
-Node: Variable Scope664647
-Node: Pass By Value/Reference667701
-Node: Function Caveats670433
-Ref: Function Caveats-Footnote-1672528
-Node: Return Statement672652
-Node: Dynamic Typing675707
-Node: Indirect Calls678099
-Node: Functions Summary689258
-Node: Library Functions692035
-Ref: Library Functions-Footnote-1695583
-Ref: Library Functions-Footnote-2695726
-Node: Library Names695901
-Ref: Library Names-Footnote-1699695
-Ref: Library Names-Footnote-2699922
-Node: General Functions700018
-Node: Strtonum Function701288
-Node: Assert Function704370
-Node: Round Function707822
-Node: Cliff Random Function709400
-Node: Ordinal Functions710433
-Ref: Ordinal Functions-Footnote-1713542
-Ref: Ordinal Functions-Footnote-2713794
-Node: Join Function714008
-Ref: Join Function-Footnote-1715811
-Node: Getlocaltime Function716015
-Node: Readfile Function719789
-Node: Shell Quoting721818
-Node: Isnumeric Function723274
-Node: To CSV Function724710
-Node: Data File Management726786
-Node: Filetrans Function727418
-Node: Rewind Function731712
-Node: File Checking733691
-Ref: File Checking-Footnote-1735063
-Node: Empty Files735270
-Node: Ignoring Assigns737337
-Node: Getopt Function738911
-Ref: Getopt Function-Footnote-1754745
-Node: Passwd Functions754957
-Ref: Passwd Functions-Footnote-1764139
-Node: Group Functions764227
-Ref: Group Functions-Footnote-1772365
-Node: Walking Arrays772578
-Node: Library Functions Summary775626
-Node: Library Exercises777050
-Node: Sample Programs777537
-Node: Running Examples778319
-Node: Clones779071
-Node: Cut Program780343
-Node: Egrep Program790784
-Node: Id Program800101
-Node: Split Program810215
-Ref: Split Program-Footnote-1820450
-Node: Tee Program820637
-Node: Uniq Program823546
-Node: Wc Program831411
-Node: Bytes vs. Characters831806
-Node: Using extensions833408
-Node: wc program834188
-Node: Miscellaneous Programs839194
-Node: Dupword Program840423
-Node: Alarm Program842486
-Node: Translate Program847399
-Ref: Translate Program-Footnote-1852140
-Node: Labels Program852418
-Ref: Labels Program-Footnote-1855859
-Node: Word Sorting855951
-Node: History Sorting860145
-Node: Extract Program862420
-Node: Simple Sed870689
-Node: Igawk Program873905
-Ref: Igawk Program-Footnote-1889152
-Ref: Igawk Program-Footnote-2889358
-Ref: Igawk Program-Footnote-3889488
-Node: Anagram Program889615
-Node: Signature Program892711
-Node: Programs Summary893963
-Node: Programs Exercises895221
-Ref: Programs Exercises-Footnote-1899537
-Node: Advanced Features899623
-Node: Nondecimal Data902117
-Node: Boolean Typed Values903747
-Node: Array Sorting905722
-Node: Controlling Array Traversal906451
-Ref: Controlling Array Traversal-Footnote-1914958
-Node: Array Sorting Functions915080
-Ref: Array Sorting Functions-Footnote-1921199
-Node: Two-way I/O921407
-Ref: Two-way I/O-Footnote-1929402
-Ref: Two-way I/O-Footnote-2929593
-Node: TCP/IP Networking929675
-Node: Profiling932855
-Node: Persistent Memory942565
-Ref: Persistent Memory-Footnote-1952175
-Node: Extension Philosophy952306
-Node: Advanced Features Summary953841
-Node: Internationalization956111
-Node: I18N and L10N957817
-Node: Explaining gettext958512
-Ref: Explaining gettext-Footnote-1964665
-Ref: Explaining gettext-Footnote-2964860
-Node: Programmer i18n965025
-Ref: Programmer i18n-Footnote-1970138
-Node: Translator i18n970187
-Node: String Extraction971023
-Ref: String Extraction-Footnote-1972201
-Node: Printf Ordering972299
-Ref: Printf Ordering-Footnote-1975161
-Node: I18N Portability975229
-Ref: I18N Portability-Footnote-1977803
-Node: I18N Example977874
-Ref: I18N Example-Footnote-1981274
-Ref: I18N Example-Footnote-2981350
-Node: Gawk I18N981467
-Node: I18N Summary982123
-Node: Debugger983524
-Node: Debugging984548
-Node: Debugging Concepts984997
-Node: Debugging Terms986823
-Node: Awk Debugging989436
-Ref: Awk Debugging-Footnote-1990413
-Node: Sample Debugging Session990553
-Node: Debugger Invocation991105
-Node: Finding The Bug992734
-Node: List of Debugger Commands999420
-Node: Breakpoint Control1000797
-Node: Debugger Execution Control1004629
-Node: Viewing And Changing Data1008109
-Node: Execution Stack1011847
-Node: Debugger Info1013528
-Node: Miscellaneous Debugger Commands1017827
-Node: Readline Support1023080
-Node: Limitations1024026
-Node: Debugging Summary1026670
-Node: Namespaces1027973
-Node: Global Namespace1029100
-Node: Qualified Names1030545
-Node: Default Namespace1031580
-Node: Changing The Namespace1032355
-Node: Naming Rules1034049
-Node: Internal Name Management1035964
-Node: Namespace Example1037034
-Node: Namespace And Features1039617
-Node: Namespace Summary1041074
-Node: Arbitrary Precision Arithmetic1042587
-Node: Computer Arithmetic1044106
-Ref: table-numeric-ranges1047923
-Ref: table-floating-point-ranges1048421
-Ref: Computer Arithmetic-Footnote-11049080
-Node: Math Definitions1049139
-Ref: table-ieee-formats1052184
-Node: MPFR features1052758
-Node: MPFR On Parole1053211
-Ref: MPFR On Parole-Footnote-11054055
-Node: MPFR Intro1054214
-Node: FP Math Caution1055904
-Ref: FP Math Caution-Footnote-11056978
-Node: Inexactness of computations1057355
-Node: Inexact representation1058386
-Node: Comparing FP Values1059769
-Node: Errors accumulate1061027
-Node: Strange values1062494
-Ref: Strange values-Footnote-11065160
-Node: Getting Accuracy1065265
-Node: Try To Round1068002
-Node: Setting precision1068909
-Ref: table-predefined-precision-strings1069614
-Node: Setting the rounding mode1071499
-Ref: table-gawk-rounding-modes1071881
-Ref: Setting the rounding mode-Footnote-11075939
-Node: Arbitrary Precision Integers1076122
-Ref: Arbitrary Precision Integers-Footnote-11079334
-Node: Checking for MPFR1079490
-Node: POSIX Floating Point Problems1080980
-Ref: POSIX Floating Point Problems-Footnote-11085844
-Node: Floating point summary1085882
-Node: Dynamic Extensions1088146
-Node: Extension Intro1089745
-Node: Plugin License1091053
-Node: Extension Mechanism Outline1091866
-Ref: figure-load-extension1092317
-Ref: figure-register-new-function1093902
-Ref: figure-call-new-function1095012
-Node: Extension API Description1097136
-Node: Extension API Functions Introduction1098865
-Ref: table-api-std-headers1100763
-Node: General Data Types1105227
-Ref: General Data Types-Footnote-11114395
-Node: Memory Allocation Functions1114710
-Ref: Memory Allocation Functions-Footnote-11119435
-Node: Constructor Functions1119534
-Node: API Ownership of MPFR and GMP Values1123439
-Node: Registration Functions1125000
-Node: Extension Functions1125704
-Node: Exit Callback Functions1131280
-Node: Extension Version String1132599
-Node: Input Parsers1133294
-Node: Output Wrappers1147938
-Node: Two-way processors1152786
-Node: Printing Messages1155147
-Ref: Printing Messages-Footnote-11156361
-Node: Updating ERRNO1156516
-Node: Requesting Values1157315
-Ref: table-value-types-returned1158068
-Node: Accessing Parameters1159177
-Node: Symbol Table Access1160461
-Node: Symbol table by name1160977
-Ref: Symbol table by name-Footnote-11164188
-Node: Symbol table by cookie1164320
-Ref: Symbol table by cookie-Footnote-11168601
-Node: Cached values1168665
-Ref: Cached values-Footnote-11172309
-Node: Array Manipulation1172466
-Ref: Array Manipulation-Footnote-11173569
-Node: Array Data Types1173606
-Ref: Array Data Types-Footnote-11176428
-Node: Array Functions1176528
-Node: Flattening Arrays1181557
-Node: Creating Arrays1188609
-Node: Redirection API1193459
-Node: Extension API Variables1196480
-Node: Extension Versioning1197205
-Ref: gawk-api-version1197642
-Node: Extension GMP/MPFR Versioning1199430
-Node: Extension API Informational Variables1201136
-Node: Extension API Boilerplate1202297
-Node: Changes from API V11206433
-Node: Finding Extensions1208067
-Node: Extension Example1208642
-Node: Internal File Description1209466
-Node: Internal File Ops1213790
-Ref: Internal File Ops-Footnote-11225348
-Node: Using Internal File Ops1225496
-Ref: Using Internal File Ops-Footnote-11227927
-Node: Extension Samples1228205
-Node: Extension Sample File Functions1229774
-Node: Extension Sample Fnmatch1237912
-Node: Extension Sample Fork1239507
-Node: Extension Sample Inplace1240783
-Node: Extension Sample Ord1244455
-Node: Extension Sample Readdir1245331
-Ref: table-readdir-file-types1246228
-Node: Extension Sample Revout1247366
-Node: Extension Sample Rev2way1247963
-Node: Extension Sample Read write array1248715
-Node: Extension Sample Readfile1251989
-Node: Extension Sample Time1253120
-Node: Extension Sample API Tests1255410
-Node: gawkextlib1255918
-Node: Extension summary1258954
-Node: Extension Exercises1262812
-Node: Language History1264090
-Node: V7/SVR3.11265804
-Node: SVR41268154
-Node: POSIX1269686
-Node: BTL1271111
-Node: POSIX/GNU1271880
-Node: Feature History1278411
-Node: Common Extensions1297978
-Node: Ranges and Locales1299455
-Ref: Ranges and Locales-Footnote-11304256
-Ref: Ranges and Locales-Footnote-21304283
-Ref: Ranges and Locales-Footnote-31304522
-Node: Contributors1304745
-Node: History summary1310950
-Node: Installation1312396
-Node: Gawk Distribution1313360
-Node: Getting1313852
-Node: Extracting1314851
-Node: Distribution contents1316563
-Node: Unix Installation1324643
-Node: Quick Installation1325465
-Node: Compiling with MPFR1328011
-Node: Shell Startup Files1328717
-Node: Additional Configuration Options1329874
-Node: Configuration Philosophy1332261
-Node: Compiling from Git1334763
-Node: Building the Documentation1335322
-Node: Non-Unix Installation1336734
-Node: PC Installation1337210
-Node: PC Binary Installation1338083
-Node: PC Compiling1338988
-Node: PC Using1340166
-Node: Cygwin1343894
-Node: MSYS1345150
-Node: OpenVMS Installation1345782
-Node: OpenVMS Compilation1346463
-Ref: OpenVMS Compilation-Footnote-11347946
-Node: OpenVMS Dynamic Extensions1348008
-Node: OpenVMS Installation Details1349644
-Node: OpenVMS Running1352079
-Node: OpenVMS GNV1356216
-Node: Bugs1356971
-Node: Bug definition1357895
-Node: Bug address1361546
-Node: Usenet1365137
-Node: Performance bugs1366368
-Node: Asking for help1369386
-Node: Maintainers1371377
-Node: Other Versions1372404
-Node: Installation summary1381336
-Node: Notes1382720
-Node: Compatibility Mode1383530
-Node: Additions1384352
-Node: Accessing The Source1385297
-Node: Adding Code1386832
-Node: New Ports1393968
-Node: Derived Files1398478
-Ref: Derived Files-Footnote-11404325
-Ref: Derived Files-Footnote-21404360
-Ref: Derived Files-Footnote-31404977
-Node: Future Extensions1405091
-Node: Implementation Limitations1405763
-Node: Extension Design1407005
-Node: Old Extension Problems1408169
-Ref: Old Extension Problems-Footnote-11409745
-Node: Extension New Mechanism Goals1409806
-Ref: Extension New Mechanism Goals-Footnote-11413302
-Node: Extension Other Design Decisions1413503
-Node: Extension Future Growth1415702
-Node: Notes summary1416326
-Node: Basic Concepts1417539
-Node: Basic High Level1418224
-Ref: figure-general-flow1418506
-Ref: figure-process-flow1419213
-Ref: Basic High Level-Footnote-11422614
-Node: Basic Data Typing1422803
-Node: Glossary1426221
-Node: Copying1459343
-Node: GNU Free Documentation License1497104
-Node: Index1522427
+Node: Printf323162
+Node: Basic Printf323967
+Node: Control Letters325603
+Node: Format Modifiers331072
+Node: Printf Examples337358
+Node: Redirection339903
+Node: Special FD346977
+Ref: Special FD-Footnote-1350267
+Node: Special Files350353
+Node: Other Inherited Files350982
+Node: Special Network352047
+Node: Special Caveats352935
+Node: Close Files And Pipes353918
+Ref: Close Files And Pipes-Footnote-1360054
+Node: Close Return Value360210
+Ref: table-close-pipe-return-values361485
+Ref: Close Return Value-Footnote-1362319
+Node: Noflush362475
+Node: Nonfatal363987
+Node: Output Summary366404
+Node: Output Exercises367690
+Node: Expressions368381
+Node: Values369583
+Node: Constants370261
+Node: Scalar Constants370958
+Ref: Scalar Constants-Footnote-1373536
+Ref: Scalar Constants-Footnote-2373786
+Node: Nondecimal-numbers373866
+Node: Regexp Constants376987
+Node: Using Constant Regexps377533
+Node: Standard Regexp Constants378179
+Node: Strong Regexp Constants381479
+Node: Variables385330
+Node: Using Variables385995
+Node: Assignment Options387975
+Node: Conversion390537
+Node: Strings And Numbers391069
+Ref: Strings And Numbers-Footnote-1394288
+Node: Locale influences conversions394397
+Ref: table-locale-affects397247
+Node: All Operators397890
+Node: Arithmetic Ops398531
+Node: Concatenation401361
+Ref: Concatenation-Footnote-1404311
+Node: Assignment Ops404434
+Ref: table-assign-ops409573
+Node: Increment Ops410955
+Node: Truth Values and Conditions414554
+Node: Truth Values415680
+Node: Typing and Comparison416771
+Node: Variable Typing417607
+Ref: Variable Typing-Footnote-1424269
+Ref: Variable Typing-Footnote-2424349
+Node: Comparison Operators424432
+Ref: table-relational-ops424859
+Node: POSIX String Comparison428545
+Ref: POSIX String Comparison-Footnote-1430304
+Ref: POSIX String Comparison-Footnote-2430447
+Node: Boolean Ops430531
+Ref: Boolean Ops-Footnote-1435224
+Node: Conditional Exp435320
+Node: Function Calls437106
+Node: Precedence441056
+Node: Locales444933
+Node: Expressions Summary446615
+Node: Patterns and Actions449278
+Node: Pattern Overview450420
+Node: Regexp Patterns452146
+Node: Expression Patterns452692
+Node: Ranges456601
+Node: BEGIN/END459779
+Node: Using BEGIN/END460592
+Ref: Using BEGIN/END-Footnote-1463502
+Node: I/O And BEGIN/END463612
+Node: BEGINFILE/ENDFILE466093
+Node: Empty469534
+Node: Using Shell Variables469851
+Node: Action Overview472189
+Node: Statements474624
+Node: If Statement476522
+Node: While Statement478091
+Node: Do Statement480179
+Node: For Statement481365
+Node: Switch Statement484722
+Node: Break Statement487273
+Node: Continue Statement489465
+Node: Next Statement491397
+Node: Nextfile Statement493894
+Node: Exit Statement496755
+Node: Built-in Variables499288
+Node: User-modified500467
+Node: Auto-set508678
+Ref: Auto-set-Footnote-1526777
+Ref: Auto-set-Footnote-2526995
+Node: ARGC and ARGV527051
+Node: Pattern Action Summary531490
+Node: Arrays534106
+Node: Array Basics535483
+Node: Array Intro536333
+Ref: figure-array-elements538349
+Ref: Array Intro-Footnote-1541218
+Node: Reference to Elements541350
+Node: Assigning Elements543872
+Node: Array Example544367
+Node: Scanning an Array546336
+Node: Controlling Scanning549433
+Ref: Controlling Scanning-Footnote-1556079
+Node: Numeric Array Subscripts556403
+Node: Uninitialized Subscripts558677
+Node: Delete560356
+Ref: Delete-Footnote-1563170
+Node: Multidimensional563227
+Node: Multiscanning566432
+Node: Arrays of Arrays568104
+Node: Arrays Summary573004
+Node: Functions575193
+Node: Built-in576253
+Node: Calling Built-in577442
+Node: Boolean Functions579489
+Node: Numeric Functions580059
+Ref: Numeric Functions-Footnote-1584252
+Ref: Numeric Functions-Footnote-2584936
+Ref: Numeric Functions-Footnote-3584988
+Node: String Functions585264
+Ref: String Functions-Footnote-1611495
+Ref: String Functions-Footnote-2611629
+Ref: String Functions-Footnote-3611889
+Node: Gory Details611976
+Ref: table-sub-escapes613883
+Ref: table-sub-proposed615529
+Ref: table-posix-sub617039
+Ref: table-gensub-escapes618727
+Ref: Gory Details-Footnote-1619661
+Node: I/O Functions619815
+Ref: table-system-return-values626502
+Ref: I/O Functions-Footnote-1628673
+Ref: I/O Functions-Footnote-2628821
+Node: Time Functions628941
+Ref: Time Functions-Footnote-1640097
+Ref: Time Functions-Footnote-2640173
+Ref: Time Functions-Footnote-3640335
+Ref: Time Functions-Footnote-4640446
+Ref: Time Functions-Footnote-5640564
+Ref: Time Functions-Footnote-6640799
+Node: Bitwise Functions641081
+Ref: table-bitwise-ops641683
+Ref: Bitwise Functions-Footnote-1647937
+Ref: Bitwise Functions-Footnote-2648116
+Node: Type Functions648313
+Node: I18N Functions651906
+Node: User-defined653649
+Node: Definition Syntax654469
+Ref: Definition Syntax-Footnote-1660297
+Node: Function Example660374
+Ref: Function Example-Footnote-1663353
+Node: Function Calling663375
+Node: Calling A Function663969
+Node: Variable Scope664939
+Node: Pass By Value/Reference667993
+Node: Function Caveats670725
+Ref: Function Caveats-Footnote-1672820
+Node: Return Statement672944
+Node: Dynamic Typing675999
+Node: Indirect Calls678391
+Node: Functions Summary689550
+Node: Library Functions692327
+Ref: Library Functions-Footnote-1695875
+Ref: Library Functions-Footnote-2696018
+Node: Library Names696193
+Ref: Library Names-Footnote-1699987
+Ref: Library Names-Footnote-2700214
+Node: General Functions700310
+Node: Strtonum Function701580
+Node: Assert Function704662
+Node: Round Function708114
+Node: Cliff Random Function709692
+Node: Ordinal Functions710725
+Ref: Ordinal Functions-Footnote-1713834
+Ref: Ordinal Functions-Footnote-2714086
+Node: Join Function714300
+Ref: Join Function-Footnote-1716103
+Node: Getlocaltime Function716307
+Node: Readfile Function720081
+Node: Shell Quoting722110
+Node: Isnumeric Function723566
+Node: To CSV Function725002
+Node: Data File Management727078
+Node: Filetrans Function727710
+Node: Rewind Function732004
+Node: File Checking733983
+Ref: File Checking-Footnote-1735355
+Node: Empty Files735562
+Node: Ignoring Assigns737629
+Node: Getopt Function739203
+Ref: Getopt Function-Footnote-1755037
+Node: Passwd Functions755249
+Ref: Passwd Functions-Footnote-1764431
+Node: Group Functions764519
+Ref: Group Functions-Footnote-1772657
+Node: Walking Arrays772870
+Node: Library Functions Summary775918
+Node: Library Exercises777342
+Node: Sample Programs777829
+Node: Running Examples778611
+Node: Clones779363
+Node: Cut Program780635
+Node: Egrep Program791076
+Node: Id Program800393
+Node: Split Program810507
+Ref: Split Program-Footnote-1820742
+Node: Tee Program820929
+Node: Uniq Program823838
+Node: Wc Program831703
+Node: Bytes vs. Characters832098
+Node: Using extensions833700
+Node: wc program834480
+Node: Miscellaneous Programs839486
+Node: Dupword Program840715
+Node: Alarm Program842778
+Node: Translate Program847691
+Ref: Translate Program-Footnote-1852432
+Node: Labels Program852710
+Ref: Labels Program-Footnote-1856151
+Node: Word Sorting856243
+Node: History Sorting860437
+Node: Extract Program862712
+Node: Simple Sed870981
+Node: Igawk Program874197
+Ref: Igawk Program-Footnote-1889444
+Ref: Igawk Program-Footnote-2889650
+Ref: Igawk Program-Footnote-3889780
+Node: Anagram Program889907
+Node: Signature Program893003
+Node: Programs Summary894255
+Node: Programs Exercises895513
+Ref: Programs Exercises-Footnote-1899829
+Node: Advanced Features899915
+Node: Nondecimal Data902409
+Node: Boolean Typed Values904039
+Node: Array Sorting906014
+Node: Controlling Array Traversal906743
+Ref: Controlling Array Traversal-Footnote-1915250
+Node: Array Sorting Functions915372
+Ref: Array Sorting Functions-Footnote-1921491
+Node: Two-way I/O921699
+Ref: Two-way I/O-Footnote-1929694
+Ref: Two-way I/O-Footnote-2929885
+Node: TCP/IP Networking929967
+Node: Profiling933147
+Node: Persistent Memory942857
+Ref: Persistent Memory-Footnote-1952467
+Node: Extension Philosophy952598
+Node: Advanced Features Summary954133
+Node: Internationalization956403
+Node: I18N and L10N958109
+Node: Explaining gettext958804
+Ref: Explaining gettext-Footnote-1964957
+Ref: Explaining gettext-Footnote-2965152
+Node: Programmer i18n965317
+Ref: Programmer i18n-Footnote-1970430
+Node: Translator i18n970479
+Node: String Extraction971315
+Ref: String Extraction-Footnote-1972493
+Node: Printf Ordering972591
+Ref: Printf Ordering-Footnote-1975453
+Node: I18N Portability975521
+Ref: I18N Portability-Footnote-1978095
+Node: I18N Example978166
+Ref: I18N Example-Footnote-1981566
+Ref: I18N Example-Footnote-2981642
+Node: Gawk I18N981759
+Node: I18N Summary982415
+Node: Debugger983816
+Node: Debugging984840
+Node: Debugging Concepts985289
+Node: Debugging Terms987115
+Node: Awk Debugging989728
+Ref: Awk Debugging-Footnote-1990705
+Node: Sample Debugging Session990845
+Node: Debugger Invocation991397
+Node: Finding The Bug993026
+Node: List of Debugger Commands999712
+Node: Breakpoint Control1001089
+Node: Debugger Execution Control1004921
+Node: Viewing And Changing Data1008401
+Node: Execution Stack1012139
+Node: Debugger Info1013820
+Node: Miscellaneous Debugger Commands1018119
+Node: Readline Support1023372
+Node: Limitations1024318
+Node: Debugging Summary1026962
+Node: Namespaces1028265
+Node: Global Namespace1029392
+Node: Qualified Names1030837
+Node: Default Namespace1031872
+Node: Changing The Namespace1032647
+Node: Naming Rules1034341
+Node: Internal Name Management1036256
+Node: Namespace Example1037326
+Node: Namespace And Features1039909
+Node: Namespace Summary1041366
+Node: Arbitrary Precision Arithmetic1042879
+Node: Computer Arithmetic1044398
+Ref: table-numeric-ranges1048215
+Ref: table-floating-point-ranges1048713
+Ref: Computer Arithmetic-Footnote-11049372
+Node: Math Definitions1049431
+Ref: table-ieee-formats1052476
+Node: MPFR features1053050
+Node: MPFR On Parole1053503
+Ref: MPFR On Parole-Footnote-11054347
+Node: MPFR Intro1054506
+Node: FP Math Caution1056196
+Ref: FP Math Caution-Footnote-11057270
+Node: Inexactness of computations1057647
+Node: Inexact representation1058678
+Node: Comparing FP Values1060061
+Node: Errors accumulate1061319
+Node: Strange values1062786
+Ref: Strange values-Footnote-11065452
+Node: Getting Accuracy1065557
+Node: Try To Round1068294
+Node: Setting precision1069201
+Ref: table-predefined-precision-strings1069906
+Node: Setting the rounding mode1071791
+Ref: table-gawk-rounding-modes1072173
+Ref: Setting the rounding mode-Footnote-11076231
+Node: Arbitrary Precision Integers1076414
+Ref: Arbitrary Precision Integers-Footnote-11079626
+Node: Checking for MPFR1079782
+Node: POSIX Floating Point Problems1081272
+Ref: POSIX Floating Point Problems-Footnote-11086136
+Node: Floating point summary1086174
+Node: Dynamic Extensions1088438
+Node: Extension Intro1090037
+Node: Plugin License1091345
+Node: Extension Mechanism Outline1092158
+Ref: figure-load-extension1092609
+Ref: figure-register-new-function1094194
+Ref: figure-call-new-function1095304
+Node: Extension API Description1097428
+Node: Extension API Functions Introduction1099157
+Ref: table-api-std-headers1101055
+Node: General Data Types1105519
+Ref: General Data Types-Footnote-11114687
+Node: Memory Allocation Functions1115002
+Ref: Memory Allocation Functions-Footnote-11119727
+Node: Constructor Functions1119826
+Node: API Ownership of MPFR and GMP Values1123731
+Node: Registration Functions1125292
+Node: Extension Functions1125996
+Node: Exit Callback Functions1131572
+Node: Extension Version String1132891
+Node: Input Parsers1133586
+Node: Output Wrappers1148230
+Node: Two-way processors1153078
+Node: Printing Messages1155439
+Ref: Printing Messages-Footnote-11156653
+Node: Updating ERRNO1156808
+Node: Requesting Values1157607
+Ref: table-value-types-returned1158360
+Node: Accessing Parameters1159469
+Node: Symbol Table Access1160753
+Node: Symbol table by name1161269
+Ref: Symbol table by name-Footnote-11164480
+Node: Symbol table by cookie1164612
+Ref: Symbol table by cookie-Footnote-11168893
+Node: Cached values1168957
+Ref: Cached values-Footnote-11172601
+Node: Array Manipulation1172758
+Ref: Array Manipulation-Footnote-11173861
+Node: Array Data Types1173898
+Ref: Array Data Types-Footnote-11176720
+Node: Array Functions1176820
+Node: Flattening Arrays1181849
+Node: Creating Arrays1188901
+Node: Redirection API1193751
+Node: Extension API Variables1196772
+Node: Extension Versioning1197497
+Ref: gawk-api-version1197934
+Node: Extension GMP/MPFR Versioning1199722
+Node: Extension API Informational Variables1201428
+Node: Extension API Boilerplate1202589
+Node: Changes from API V11206725
+Node: Finding Extensions1208359
+Node: Extension Example1208934
+Node: Internal File Description1209758
+Node: Internal File Ops1214082
+Ref: Internal File Ops-Footnote-11225640
+Node: Using Internal File Ops1225788
+Ref: Using Internal File Ops-Footnote-11228219
+Node: Extension Samples1228497
+Node: Extension Sample File Functions1230066
+Node: Extension Sample Fnmatch1238204
+Node: Extension Sample Fork1239799
+Node: Extension Sample Inplace1241075
+Node: Extension Sample Ord1244747
+Node: Extension Sample Readdir1245623
+Ref: table-readdir-file-types1246520
+Node: Extension Sample Revout1247658
+Node: Extension Sample Rev2way1248255
+Node: Extension Sample Read write array1249007
+Node: Extension Sample Readfile1252281
+Node: Extension Sample Time1253412
+Node: Extension Sample API Tests1255702
+Node: gawkextlib1256210
+Node: Extension summary1259246
+Node: Extension Exercises1263104
+Node: Language History1264382
+Node: V7/SVR3.11266096
+Node: SVR41268446
+Node: POSIX1269978
+Node: BTL1271403
+Node: POSIX/GNU1272172
+Node: Feature History1278703
+Node: Common Extensions1298270
+Node: Ranges and Locales1299747
+Ref: Ranges and Locales-Footnote-11304548
+Ref: Ranges and Locales-Footnote-21304575
+Ref: Ranges and Locales-Footnote-31304814
+Node: Contributors1305037
+Node: History summary1311242
+Node: Installation1312688
+Node: Gawk Distribution1313652
+Node: Getting1314144
+Node: Extracting1315143
+Node: Distribution contents1316855
+Node: Unix Installation1324935
+Node: Quick Installation1325757
+Node: Compiling with MPFR1328303
+Node: Shell Startup Files1329009
+Node: Additional Configuration Options1330166
+Node: Configuration Philosophy1332553
+Node: Compiling from Git1335055
+Node: Building the Documentation1335614
+Node: Non-Unix Installation1337026
+Node: PC Installation1337502
+Node: PC Binary Installation1338375
+Node: PC Compiling1339280
+Node: PC Using1340458
+Node: Cygwin1344186
+Node: MSYS1345442
+Node: OpenVMS Installation1346074
+Node: OpenVMS Compilation1346755
+Ref: OpenVMS Compilation-Footnote-11348238
+Node: OpenVMS Dynamic Extensions1348300
+Node: OpenVMS Installation Details1349936
+Node: OpenVMS Running1352371
+Node: OpenVMS GNV1356508
+Node: Bugs1357263
+Node: Bug definition1358187
+Node: Bug address1361838
+Node: Usenet1365429
+Node: Performance bugs1366660
+Node: Asking for help1369678
+Node: Maintainers1371669
+Node: Other Versions1372696
+Node: Installation summary1382039
+Node: Notes1383423
+Node: Compatibility Mode1384233
+Node: Additions1385055
+Node: Accessing The Source1386000
+Node: Adding Code1387535
+Node: New Ports1394671
+Node: Derived Files1399181
+Ref: Derived Files-Footnote-11405028
+Ref: Derived Files-Footnote-21405063
+Ref: Derived Files-Footnote-31405680
+Node: Future Extensions1405794
+Node: Implementation Limitations1406466
+Node: Extension Design1407708
+Node: Old Extension Problems1408872
+Ref: Old Extension Problems-Footnote-11410448
+Node: Extension New Mechanism Goals1410509
+Ref: Extension New Mechanism Goals-Footnote-11414005
+Node: Extension Other Design Decisions1414206
+Node: Extension Future Growth1416405
+Node: Notes summary1417029
+Node: Basic Concepts1418242
+Node: Basic High Level1418927
+Ref: figure-general-flow1419209
+Ref: figure-process-flow1419916
+Ref: Basic High Level-Footnote-11423317
+Node: Basic Data Typing1423506
+Node: Glossary1426924
+Node: Copying1460046
+Node: GNU Free Documentation License1497807
+Node: Index1523130

End Tag Table
diff --git a/doc/gawk.texi b/doc/gawk.texi
index 97fe5567..a23a2c23 100644
--- a/doc/gawk.texi
+++ b/doc/gawk.texi
@@ -10399,6 +10399,12 @@ $ @kbd{awk 'BEGIN @{}
@print{} 17 18
@end example
+More detail on how @command{awk} converts numeric values into
+strings is provided in @ref{Strings And Numbers}. In particular, for
+@code{print}, @command{awk} uses the value of @code{OFMT} instead of
+that of @code{CONVFMT}, but otherwise behaves exactly the same
+as described in that @value{SECTION}.
+
@noindent
@cindex dark corner @subentry @code{OFMT} variable
@cindex POSIX @command{awk} @subentry @code{OFMT} variable and
@@ -45020,6 +45026,15 @@ download link.
The project may also be frozen; no new code changes have been made
since approximately 2014.
+@item @command{cppawk}
+@cindex @command{cppawk}
+@cindex source code @subentry @command{cppawk}
+Quoting from the web page, ``@command{cppawk} is a tiny shell script that is
+used like @command{awk}. It invokes the C preprocessor (GNU @command{cpp}) on the Awk
+code and calls Awk on the result.'' This program may be of use if
+the way @command{gawk}'s @code{@@include} facility works doesn't suit
+your needs. For more information, see @uref{https://www.kylheku.com/cgit/cppawk/}.
+
@item Other versions
See also the ``Versions and implementations'' section of the
@uref{https://en.wikipedia.org/wiki/Awk_language#Versions_and_implementations,
diff --git a/doc/gawktexi.in b/doc/gawktexi.in
index 2802bccf..25c19bb1 100644
--- a/doc/gawktexi.in
+++ b/doc/gawktexi.in
@@ -9832,6 +9832,12 @@ $ @kbd{awk 'BEGIN @{}
@print{} 17 18
@end example
+More detail on how @command{awk} converts numeric values into
+strings is provided in @ref{Strings And Numbers}. In particular, for
+@code{print}, @command{awk} uses the value of @code{OFMT} instead of
+that of @code{CONVFMT}, but otherwise behaves exactly the same
+as described in that @value{SECTION}.
+
@noindent
@cindex dark corner @subentry @code{OFMT} variable
@cindex POSIX @command{awk} @subentry @code{OFMT} variable and
@@ -43872,6 +43878,15 @@ download link.
The project may also be frozen; no new code changes have been made
since approximately 2014.
+@item @command{cppawk}
+@cindex @command{cppawk}
+@cindex source code @subentry @command{cppawk}
+Quoting from the web page, ``@command{cppawk} is a tiny shell script that is
+used like @command{awk}. It invokes the C preprocessor (GNU @command{cpp}) on the Awk
+code and calls Awk on the result.'' This program may be of use if
+the way @command{gawk}'s @code{@@include} facility works doesn't suit
+your needs. For more information, see @uref{https://www.kylheku.com/cgit/cppawk/}.
+
@item Other versions
See also the ``Versions and implementations'' section of the
@uref{https://en.wikipedia.org/wiki/Awk_language#Versions_and_implementations,
diff --git a/doc/it/ChangeLog b/doc/it/ChangeLog
index 9b23743b..1230af6e 100755
--- a/doc/it/ChangeLog
+++ b/doc/it/ChangeLog
@@ -1,3 +1,7 @@
+2023-05-07 Arnold D. Robbins <arnold@skeeve.com>
+
+ * 5.2.2: Release tar ball made.
+
2023-04-16 Antonio Giovanni Colombo <azc100@gmail.com>
* texinfo.tex: Updated.
diff --git a/doc/wordlist b/doc/wordlist
index 8deb26ab..fa1865c0 100644
--- a/doc/wordlist
+++ b/doc/wordlist
@@ -817,6 +817,8 @@ cos
cosmogen
cp
cplusplus
+cpp
+cppawk
cr
csh
cssun
@@ -884,6 +886,7 @@ dportein
dps
dresdnerbank
drwxr
+du
dumparray
duncan
dup
@@ -1212,6 +1215,7 @@ kilgrona
kmem
kpilot
ksh
+kylheku
labadie
lan
lanceolis
@@ -1507,6 +1511,7 @@ pkgdatadir
pkgextensiondir
pm
pma
+pmafile
pmode
png
po