aboutsummaryrefslogtreecommitdiffstats
path: root/doc/gawk.info
diff options
context:
space:
mode:
Diffstat (limited to 'doc/gawk.info')
-rw-r--r--doc/gawk.info1066
1 files changed, 554 insertions, 512 deletions
diff --git a/doc/gawk.info b/doc/gawk.info
index c339dcbb..99a3c693 100644
--- a/doc/gawk.info
+++ b/doc/gawk.info
@@ -637,6 +637,7 @@ texts being (a) (see below), and with the Back-Cover Texts being (b)
* Future Extensions:: New features that may be implemented
one day.
* Implementation Limitations:: Some limitations of the implementation.
+* Old Extension Mechansim:: Some compatibility for old extensions.
* Basic High Level:: The high level view.
* Basic Data Typing:: A very quick intro to data types.
@@ -26489,6 +26490,7 @@ and maintainers of `gawk'. Everything in it applies specifically to
* Additions:: Making Additions To `gawk'.
* Future Extensions:: New features that may be implemented one day.
* Implementation Limitations:: Some limitations of the implementation.
+* Old Extension Mechansim:: Some compatibility for old extensions.

File: gawk.info, Node: Compatibility Mode, Next: Additions, Up: Notes
@@ -26952,7 +26954,7 @@ Additions::, if you are interested in tackling any of the projects
listed there.

-File: gawk.info, Node: Implementation Limitations, Prev: Future Extensions, Up: Notes
+File: gawk.info, Node: Implementation Limitations, Next: Old Extension Mechansim, Prev: Future Extensions, Up: Notes
C.4 Some Limitations of the Implementation
==========================================
@@ -26983,6 +26985,45 @@ Size of a literal string `MAX_INT '
Size of a printf string `MAX_INT '

+File: gawk.info, Node: Old Extension Mechansim, Prev: Implementation Limitations, Up: Notes
+
+C.5 Compatibility For Old Extensions
+====================================
+
+*note Dynamic Extensions::, describes the supported API and mechanisms
+for writing extensions for `gawk'. This API was introduced in *FIXME:
+VERSION*. However, for many years `gawk' provided an extension
+mechanism that required knowledge of `gawk' internals and that was not
+as well designed.
+
+ In order to provide a transition period, `gawk' version *FIXME:
+VERSION* continues to support the original extension mechanism. This
+will be true for the life of exactly one major release. This support
+will be withdrawn, and removed from the source code, at the next major
+release.
+
+ Briefly, original-style extensions should be compiled by including
+the `awk.h' header file in the extension source code. Additionally, you
+must define the identifier `GAWK' when building (use `-DGAWK' with
+Unix-style compilers). Otherwise, the definitions in `gawkapi.h' will
+cause conflicts with those in `awk.h' and your extension will not
+compile.
+
+ Just as in previous versions, you load an old-style extension with
+the `extension()' built-in function (which is not otherwise documented).
+This function in turn finds and loads the shared object file containing
+the extension and calls its `dl_load()' C routine.
+
+ Because original-style and new-style extensions use different
+initialiation routines (`dl_load()' versus `dlload()'), they may safely
+be installed in the same directory (to be found by `AWKLIBPATH')
+without conflict.
+
+ The `gawk' development team strongly recommends that you convert any
+old extensions that you may have to use the new API described in *note
+Dynamic Extensions::.
+
+
File: gawk.info, Node: Basic Concepts, Next: Glossary, Prev: Notes, Up: Top
Appendix D Basic Programming Concepts
@@ -31773,516 +31814,517 @@ Index

Tag Table:
Node: Top1352
-Node: Foreword40138
-Node: Preface44483
-Ref: Preface-Footnote-147536
-Ref: Preface-Footnote-247642
-Node: History47874
-Node: Names50265
-Ref: Names-Footnote-151742
-Node: This Manual51814
-Ref: This Manual-Footnote-157720
-Node: Conventions57820
-Node: Manual History59954
-Ref: Manual History-Footnote-163224
-Ref: Manual History-Footnote-263265
-Node: How To Contribute63339
-Node: Acknowledgments64483
-Node: Getting Started68979
-Node: Running gawk71358
-Node: One-shot72544
-Node: Read Terminal73769
-Ref: Read Terminal-Footnote-175419
-Ref: Read Terminal-Footnote-275695
-Node: Long75866
-Node: Executable Scripts77242
-Ref: Executable Scripts-Footnote-179111
-Ref: Executable Scripts-Footnote-279213
-Node: Comments79760
-Node: Quoting82227
-Node: DOS Quoting86850
-Node: Sample Data Files87525
-Node: Very Simple90557
-Node: Two Rules95156
-Node: More Complex97303
-Ref: More Complex-Footnote-1100233
-Node: Statements/Lines100318
-Ref: Statements/Lines-Footnote-1104780
-Node: Other Features105045
-Node: When105973
-Node: Invoking Gawk108120
-Node: Command Line109581
-Node: Options110364
-Ref: Options-Footnote-1125762
-Node: Other Arguments125787
-Node: Naming Standard Input128445
-Node: Environment Variables129539
-Node: AWKPATH Variable130097
-Ref: AWKPATH Variable-Footnote-1132855
-Node: AWKLIBPATH Variable133115
-Node: Other Environment Variables133712
-Node: Exit Status136207
-Node: Include Files136882
-Node: Loading Shared Libraries140451
-Node: Obsolete141676
-Node: Undocumented142373
-Node: Regexp142616
-Node: Regexp Usage144005
-Node: Escape Sequences146031
-Node: Regexp Operators151794
-Ref: Regexp Operators-Footnote-1159174
-Ref: Regexp Operators-Footnote-2159321
-Node: Bracket Expressions159419
-Ref: table-char-classes161309
-Node: GNU Regexp Operators163832
-Node: Case-sensitivity167555
-Ref: Case-sensitivity-Footnote-1170523
-Ref: Case-sensitivity-Footnote-2170758
-Node: Leftmost Longest170866
-Node: Computed Regexps172067
-Node: Reading Files175477
-Node: Records177480
-Ref: Records-Footnote-1186404
-Node: Fields186441
-Ref: Fields-Footnote-1189474
-Node: Nonconstant Fields189560
-Node: Changing Fields191762
-Node: Field Separators197743
-Node: Default Field Splitting200372
-Node: Regexp Field Splitting201489
-Node: Single Character Fields204831
-Node: Command Line Field Separator205890
-Node: Field Splitting Summary209331
-Ref: Field Splitting Summary-Footnote-1212523
-Node: Constant Size212624
-Node: Splitting By Content217208
-Ref: Splitting By Content-Footnote-1220934
-Node: Multiple Line220974
-Ref: Multiple Line-Footnote-1226821
-Node: Getline227000
-Node: Plain Getline229216
-Node: Getline/Variable231305
-Node: Getline/File232446
-Node: Getline/Variable/File233768
-Ref: Getline/Variable/File-Footnote-1235367
-Node: Getline/Pipe235454
-Node: Getline/Variable/Pipe238014
-Node: Getline/Coprocess239121
-Node: Getline/Variable/Coprocess240364
-Node: Getline Notes241078
-Node: Getline Summary243865
-Ref: table-getline-variants244273
-Node: Read Timeout245131
-Ref: Read Timeout-Footnote-1248876
-Node: Command line directories248933
-Node: Printing249563
-Node: Print251194
-Node: Print Examples252531
-Node: Output Separators255315
-Node: OFMT257075
-Node: Printf258433
-Node: Basic Printf259339
-Node: Control Letters260878
-Node: Format Modifiers264690
-Node: Printf Examples270699
-Node: Redirection273414
-Node: Special Files280398
-Node: Special FD280931
-Ref: Special FD-Footnote-1284556
-Node: Special Network284630
-Node: Special Caveats285480
-Node: Close Files And Pipes286276
-Ref: Close Files And Pipes-Footnote-1293299
-Ref: Close Files And Pipes-Footnote-2293447
-Node: Expressions293597
-Node: Values294729
-Node: Constants295405
-Node: Scalar Constants296085
-Ref: Scalar Constants-Footnote-1296944
-Node: Nondecimal-numbers297126
-Node: Regexp Constants300185
-Node: Using Constant Regexps300660
-Node: Variables303715
-Node: Using Variables304370
-Node: Assignment Options306094
-Node: Conversion307966
-Ref: table-locale-affects313342
-Ref: Conversion-Footnote-1313966
-Node: All Operators314075
-Node: Arithmetic Ops314705
-Node: Concatenation317210
-Ref: Concatenation-Footnote-1320003
-Node: Assignment Ops320123
-Ref: table-assign-ops325111
-Node: Increment Ops326519
-Node: Truth Values and Conditions329989
-Node: Truth Values331072
-Node: Typing and Comparison332121
-Node: Variable Typing332910
-Ref: Variable Typing-Footnote-1336807
-Node: Comparison Operators336929
-Ref: table-relational-ops337339
-Node: POSIX String Comparison340888
-Ref: POSIX String Comparison-Footnote-1341844
-Node: Boolean Ops341982
-Ref: Boolean Ops-Footnote-1346060
-Node: Conditional Exp346151
-Node: Function Calls347883
-Node: Precedence351477
-Node: Locales355146
-Node: Patterns and Actions356235
-Node: Pattern Overview357289
-Node: Regexp Patterns358958
-Node: Expression Patterns359501
-Node: Ranges363186
-Node: BEGIN/END366152
-Node: Using BEGIN/END366914
-Ref: Using BEGIN/END-Footnote-1369645
-Node: I/O And BEGIN/END369751
-Node: BEGINFILE/ENDFILE372033
-Node: Empty374937
-Node: Using Shell Variables375253
-Node: Action Overview377538
-Node: Statements379895
-Node: If Statement381749
-Node: While Statement383248
-Node: Do Statement385292
-Node: For Statement386448
-Node: Switch Statement389600
-Node: Break Statement391697
-Node: Continue Statement393687
-Node: Next Statement395480
-Node: Nextfile Statement397870
-Node: Exit Statement400511
-Node: Built-in Variables402927
-Node: User-modified404022
-Ref: User-modified-Footnote-1412377
-Node: Auto-set412439
-Ref: Auto-set-Footnote-1424790
-Ref: Auto-set-Footnote-2424995
-Node: ARGC and ARGV425051
-Node: Arrays428902
-Node: Array Basics430407
-Node: Array Intro431233
-Node: Reference to Elements435551
-Node: Assigning Elements437821
-Node: Array Example438312
-Node: Scanning an Array440044
-Node: Controlling Scanning442358
-Ref: Controlling Scanning-Footnote-1447291
-Node: Delete447607
-Ref: Delete-Footnote-1450372
-Node: Numeric Array Subscripts450429
-Node: Uninitialized Subscripts452612
-Node: Multi-dimensional454240
-Node: Multi-scanning457334
-Node: Arrays of Arrays458925
-Node: Functions463570
-Node: Built-in464389
-Node: Calling Built-in465467
-Node: Numeric Functions467455
-Ref: Numeric Functions-Footnote-1471287
-Ref: Numeric Functions-Footnote-2471644
-Ref: Numeric Functions-Footnote-3471692
-Node: String Functions471961
-Ref: String Functions-Footnote-1495458
-Ref: String Functions-Footnote-2495587
-Ref: String Functions-Footnote-3495835
-Node: Gory Details495922
-Ref: table-sub-escapes497601
-Ref: table-sub-posix-92498955
-Ref: table-sub-proposed500306
-Ref: table-posix-sub501660
-Ref: table-gensub-escapes503205
-Ref: Gory Details-Footnote-1504412
-Ref: Gory Details-Footnote-2504463
-Node: I/O Functions504614
-Ref: I/O Functions-Footnote-1511638
-Node: Time Functions511785
-Ref: Time Functions-Footnote-1522677
-Ref: Time Functions-Footnote-2522745
-Ref: Time Functions-Footnote-3522903
-Ref: Time Functions-Footnote-4523014
-Ref: Time Functions-Footnote-5523126
-Ref: Time Functions-Footnote-6523353
-Node: Bitwise Functions523619
-Ref: table-bitwise-ops524177
-Ref: Bitwise Functions-Footnote-1528398
-Node: Type Functions528582
-Node: I18N Functions529052
-Node: User-defined530679
-Node: Definition Syntax531483
-Ref: Definition Syntax-Footnote-1536393
-Node: Function Example536462
-Node: Function Caveats539056
-Node: Calling A Function539477
-Node: Variable Scope540592
-Node: Pass By Value/Reference543555
-Node: Return Statement546995
-Node: Dynamic Typing549976
-Node: Indirect Calls550711
-Node: Library Functions560396
-Ref: Library Functions-Footnote-1563395
-Node: Library Names563566
-Ref: Library Names-Footnote-1567037
-Ref: Library Names-Footnote-2567257
-Node: General Functions567343
-Node: Strtonum Function568296
-Node: Assert Function571226
-Node: Round Function574552
-Node: Cliff Random Function576095
-Node: Ordinal Functions577111
-Ref: Ordinal Functions-Footnote-1580181
-Ref: Ordinal Functions-Footnote-2580433
-Node: Join Function580642
-Ref: Join Function-Footnote-1582413
-Node: Getlocaltime Function582613
-Node: Data File Management586328
-Node: Filetrans Function586960
-Node: Rewind Function591099
-Node: File Checking592486
-Node: Empty Files593580
-Node: Ignoring Assigns595810
-Node: Getopt Function597363
-Ref: Getopt Function-Footnote-1608667
-Node: Passwd Functions608870
-Ref: Passwd Functions-Footnote-1617845
-Node: Group Functions617933
-Node: Walking Arrays626017
-Node: Sample Programs627586
-Node: Running Examples628263
-Node: Clones628991
-Node: Cut Program630215
-Node: Egrep Program640060
-Ref: Egrep Program-Footnote-1647833
-Node: Id Program647943
-Node: Split Program651559
-Ref: Split Program-Footnote-1655078
-Node: Tee Program655206
-Node: Uniq Program658009
-Node: Wc Program665438
-Ref: Wc Program-Footnote-1669704
-Ref: Wc Program-Footnote-2669904
-Node: Miscellaneous Programs669996
-Node: Dupword Program671184
-Node: Alarm Program673215
-Node: Translate Program677964
-Ref: Translate Program-Footnote-1682351
-Ref: Translate Program-Footnote-2682579
-Node: Labels Program682713
-Ref: Labels Program-Footnote-1686084
-Node: Word Sorting686168
-Node: History Sorting690052
-Node: Extract Program691891
-Ref: Extract Program-Footnote-1699374
-Node: Simple Sed699502
-Node: Igawk Program702564
-Ref: Igawk Program-Footnote-1717721
-Ref: Igawk Program-Footnote-2717922
-Node: Anagram Program718060
-Node: Signature Program721128
-Node: Internationalization722228
-Node: I18N and L10N723660
-Node: Explaining gettext724346
-Ref: Explaining gettext-Footnote-1729412
-Ref: Explaining gettext-Footnote-2729596
-Node: Programmer i18n729761
-Node: Translator i18n733961
-Node: String Extraction734754
-Ref: String Extraction-Footnote-1735715
-Node: Printf Ordering735801
-Ref: Printf Ordering-Footnote-1738585
-Node: I18N Portability738649
-Ref: I18N Portability-Footnote-1741098
-Node: I18N Example741161
-Ref: I18N Example-Footnote-1743796
-Node: Gawk I18N743868
-Node: Advanced Features744485
-Node: Nondecimal Data745989
-Node: Array Sorting747572
-Node: Controlling Array Traversal748269
-Node: Array Sorting Functions756507
-Ref: Array Sorting Functions-Footnote-1760181
-Ref: Array Sorting Functions-Footnote-2760274
-Node: Two-way I/O760468
-Ref: Two-way I/O-Footnote-1765900
-Node: TCP/IP Networking765970
-Node: Profiling768814
-Node: Debugger776268
-Node: Debugging777236
-Node: Debugging Concepts777669
-Node: Debugging Terms779525
-Node: Awk Debugging782122
-Node: Sample Debugging Session783014
-Node: Debugger Invocation783534
-Node: Finding The Bug784863
-Node: List of Debugger Commands791351
-Node: Breakpoint Control792685
-Node: Debugger Execution Control796349
-Node: Viewing And Changing Data799709
-Node: Execution Stack803065
-Node: Debugger Info804532
-Node: Miscellaneous Debugger Commands808513
-Node: Readline Support813958
-Node: Limitations814789
-Node: Arbitrary Precision Arithmetic817041
-Ref: Arbitrary Precision Arithmetic-Footnote-1818683
-Node: General Arithmetic818831
-Node: Floating Point Issues820551
-Node: String Conversion Precision821432
-Ref: String Conversion Precision-Footnote-1823138
-Node: Unexpected Results823247
-Node: POSIX Floating Point Problems825400
-Ref: POSIX Floating Point Problems-Footnote-1829225
-Node: Integer Programming829263
-Node: Floating-point Programming831016
-Ref: Floating-point Programming-Footnote-1837325
-Node: Floating-point Representation837589
-Node: Floating-point Context838754
-Ref: table-ieee-formats839596
-Node: Rounding Mode840980
-Ref: table-rounding-modes841459
-Ref: Rounding Mode-Footnote-1844463
-Node: Gawk and MPFR844644
-Node: Arbitrary Precision Floats845886
-Ref: Arbitrary Precision Floats-Footnote-1848315
-Node: Setting Precision848626
-Node: Setting Rounding Mode851359
-Ref: table-gawk-rounding-modes851763
-Node: Floating-point Constants852943
-Node: Changing Precision854367
-Ref: Changing Precision-Footnote-1855767
-Node: Exact Arithmetic855941
-Node: Arbitrary Precision Integers859049
-Ref: Arbitrary Precision Integers-Footnote-1862049
-Node: Dynamic Extensions862196
-Node: Extension Intro863582
-Node: Plugin License864790
-Node: Extension Design865464
-Node: Old Extension Problems866535
-Ref: Old Extension Problems-Footnote-1868045
-Node: Extension New Mechanism Goals868102
-Ref: Extension New Mechanism Goals-Footnote-1870814
-Node: Extension Other Design Decisions871000
-Node: Extension Mechanism Outline873112
-Ref: load-extension874137
-Ref: load-new-function875615
-Ref: call-new-function876596
-Node: Extension Future Growth878590
-Node: Extension API Description879408
-Node: Extension API Functions Introduction880736
-Node: General Data Types885436
-Ref: General Data Types-Footnote-1891038
-Node: Requesting Values891337
-Ref: table-value-types-returned892068
-Node: Constructor Functions893022
-Node: Registration Functions896018
-Node: Extension Functions896703
-Node: Exit Callback Functions898535
-Node: Extension Version String899778
-Node: Input Parsers900428
-Node: Output Wrappers909015
-Node: Two-way processors913431
-Node: Printing Messages915561
-Ref: Printing Messages-Footnote-1916638
-Node: Updating `ERRNO'916790
-Node: Accessing Parameters917529
-Node: Symbol Table Access918759
-Node: Symbol table by name919271
-Ref: Symbol table by name-Footnote-1921441
-Node: Symbol table by cookie921521
-Ref: Symbol table by cookie-Footnote-1925650
-Node: Cached values925713
-Ref: Cached values-Footnote-1929156
-Node: Array Manipulation929247
-Ref: Array Manipulation-Footnote-1930345
-Node: Array Data Types930384
-Ref: Array Data Types-Footnote-1933087
-Node: Array Functions933179
-Node: Flattening Arrays936945
-Node: Creating Arrays943778
-Node: Extension API Variables948573
-Node: Extension Versioning949209
-Node: Extension API Informational Variables951110
-Node: Extension API Boilerplate952196
-Node: Finding Extensions956027
-Node: Extension Example956574
-Node: Internal File Description957312
-Node: Internal File Ops961000
-Ref: Internal File Ops-Footnote-1972447
-Node: Using Internal File Ops972587
-Ref: Using Internal File Ops-Footnote-1974940
-Node: Extension Samples975206
-Node: Extension Sample File Functions976649
-Node: Extension Sample Fnmatch985122
-Node: Extension Sample Fork986848
-Node: Extension Sample Ord988062
-Node: Extension Sample Readdir988838
-Node: Extension Sample Revout990342
-Node: Extension Sample Rev2way990935
-Node: Extension Sample Read write array991625
-Node: Extension Sample Readfile993508
-Node: Extension Sample API Tests994263
-Node: Extension Sample Time994788
-Node: gawkextlib996095
-Node: Language History998476
-Node: V7/SVR3.1999998
-Node: SVR41002319
-Node: POSIX1003761
-Node: BTL1004769
-Node: POSIX/GNU1005503
-Node: Common Extensions1011038
-Node: Ranges and Locales1012145
-Ref: Ranges and Locales-Footnote-11016763
-Ref: Ranges and Locales-Footnote-21016790
-Ref: Ranges and Locales-Footnote-31017050
-Node: Contributors1017271
-Node: Installation1021567
-Node: Gawk Distribution1022461
-Node: Getting1022945
-Node: Extracting1023771
-Node: Distribution contents1025463
-Node: Unix Installation1030685
-Node: Quick Installation1031302
-Node: Additional Configuration Options1033264
-Node: Configuration Philosophy1034741
-Node: Non-Unix Installation1037083
-Node: PC Installation1037541
-Node: PC Binary Installation1038840
-Node: PC Compiling1040688
-Node: PC Testing1043632
-Node: PC Using1044808
-Node: Cygwin1048993
-Node: MSYS1049993
-Node: VMS Installation1050507
-Node: VMS Compilation1051110
-Ref: VMS Compilation-Footnote-11052117
-Node: VMS Installation Details1052175
-Node: VMS Running1053810
-Node: VMS Old Gawk1055417
-Node: Bugs1055891
-Node: Other Versions1059743
-Node: Notes1065058
-Node: Compatibility Mode1065717
-Node: Additions1066500
-Node: Accessing The Source1067427
-Node: Adding Code1069030
-Node: New Ports1075072
-Node: Derived Files1079207
-Ref: Derived Files-Footnote-11084515
-Ref: Derived Files-Footnote-21084549
-Ref: Derived Files-Footnote-31085149
-Node: Future Extensions1085247
-Node: Implementation Limitations1085828
-Node: Basic Concepts1087055
-Node: Basic High Level1087736
-Ref: figure-general-flow1088007
-Ref: figure-process-flow1088606
-Ref: Basic High Level-Footnote-11091835
-Node: Basic Data Typing1092020
-Node: Glossary1095375
-Node: Copying1120686
-Node: GNU Free Documentation License1158243
-Node: Index1183380
+Node: Foreword40217
+Node: Preface44562
+Ref: Preface-Footnote-147615
+Ref: Preface-Footnote-247721
+Node: History47953
+Node: Names50344
+Ref: Names-Footnote-151821
+Node: This Manual51893
+Ref: This Manual-Footnote-157799
+Node: Conventions57899
+Node: Manual History60033
+Ref: Manual History-Footnote-163303
+Ref: Manual History-Footnote-263344
+Node: How To Contribute63418
+Node: Acknowledgments64562
+Node: Getting Started69058
+Node: Running gawk71437
+Node: One-shot72623
+Node: Read Terminal73848
+Ref: Read Terminal-Footnote-175498
+Ref: Read Terminal-Footnote-275774
+Node: Long75945
+Node: Executable Scripts77321
+Ref: Executable Scripts-Footnote-179190
+Ref: Executable Scripts-Footnote-279292
+Node: Comments79839
+Node: Quoting82306
+Node: DOS Quoting86929
+Node: Sample Data Files87604
+Node: Very Simple90636
+Node: Two Rules95235
+Node: More Complex97382
+Ref: More Complex-Footnote-1100312
+Node: Statements/Lines100397
+Ref: Statements/Lines-Footnote-1104859
+Node: Other Features105124
+Node: When106052
+Node: Invoking Gawk108199
+Node: Command Line109660
+Node: Options110443
+Ref: Options-Footnote-1125841
+Node: Other Arguments125866
+Node: Naming Standard Input128524
+Node: Environment Variables129618
+Node: AWKPATH Variable130176
+Ref: AWKPATH Variable-Footnote-1132934
+Node: AWKLIBPATH Variable133194
+Node: Other Environment Variables133791
+Node: Exit Status136286
+Node: Include Files136961
+Node: Loading Shared Libraries140530
+Node: Obsolete141755
+Node: Undocumented142452
+Node: Regexp142695
+Node: Regexp Usage144084
+Node: Escape Sequences146110
+Node: Regexp Operators151873
+Ref: Regexp Operators-Footnote-1159253
+Ref: Regexp Operators-Footnote-2159400
+Node: Bracket Expressions159498
+Ref: table-char-classes161388
+Node: GNU Regexp Operators163911
+Node: Case-sensitivity167634
+Ref: Case-sensitivity-Footnote-1170602
+Ref: Case-sensitivity-Footnote-2170837
+Node: Leftmost Longest170945
+Node: Computed Regexps172146
+Node: Reading Files175556
+Node: Records177559
+Ref: Records-Footnote-1186483
+Node: Fields186520
+Ref: Fields-Footnote-1189553
+Node: Nonconstant Fields189639
+Node: Changing Fields191841
+Node: Field Separators197822
+Node: Default Field Splitting200451
+Node: Regexp Field Splitting201568
+Node: Single Character Fields204910
+Node: Command Line Field Separator205969
+Node: Field Splitting Summary209410
+Ref: Field Splitting Summary-Footnote-1212602
+Node: Constant Size212703
+Node: Splitting By Content217287
+Ref: Splitting By Content-Footnote-1221013
+Node: Multiple Line221053
+Ref: Multiple Line-Footnote-1226900
+Node: Getline227079
+Node: Plain Getline229295
+Node: Getline/Variable231384
+Node: Getline/File232525
+Node: Getline/Variable/File233847
+Ref: Getline/Variable/File-Footnote-1235446
+Node: Getline/Pipe235533
+Node: Getline/Variable/Pipe238093
+Node: Getline/Coprocess239200
+Node: Getline/Variable/Coprocess240443
+Node: Getline Notes241157
+Node: Getline Summary243944
+Ref: table-getline-variants244352
+Node: Read Timeout245210
+Ref: Read Timeout-Footnote-1248955
+Node: Command line directories249012
+Node: Printing249642
+Node: Print251273
+Node: Print Examples252610
+Node: Output Separators255394
+Node: OFMT257154
+Node: Printf258512
+Node: Basic Printf259418
+Node: Control Letters260957
+Node: Format Modifiers264769
+Node: Printf Examples270778
+Node: Redirection273493
+Node: Special Files280477
+Node: Special FD281010
+Ref: Special FD-Footnote-1284635
+Node: Special Network284709
+Node: Special Caveats285559
+Node: Close Files And Pipes286355
+Ref: Close Files And Pipes-Footnote-1293378
+Ref: Close Files And Pipes-Footnote-2293526
+Node: Expressions293676
+Node: Values294808
+Node: Constants295484
+Node: Scalar Constants296164
+Ref: Scalar Constants-Footnote-1297023
+Node: Nondecimal-numbers297205
+Node: Regexp Constants300264
+Node: Using Constant Regexps300739
+Node: Variables303794
+Node: Using Variables304449
+Node: Assignment Options306173
+Node: Conversion308045
+Ref: table-locale-affects313421
+Ref: Conversion-Footnote-1314045
+Node: All Operators314154
+Node: Arithmetic Ops314784
+Node: Concatenation317289
+Ref: Concatenation-Footnote-1320082
+Node: Assignment Ops320202
+Ref: table-assign-ops325190
+Node: Increment Ops326598
+Node: Truth Values and Conditions330068
+Node: Truth Values331151
+Node: Typing and Comparison332200
+Node: Variable Typing332989
+Ref: Variable Typing-Footnote-1336886
+Node: Comparison Operators337008
+Ref: table-relational-ops337418
+Node: POSIX String Comparison340967
+Ref: POSIX String Comparison-Footnote-1341923
+Node: Boolean Ops342061
+Ref: Boolean Ops-Footnote-1346139
+Node: Conditional Exp346230
+Node: Function Calls347962
+Node: Precedence351556
+Node: Locales355225
+Node: Patterns and Actions356314
+Node: Pattern Overview357368
+Node: Regexp Patterns359037
+Node: Expression Patterns359580
+Node: Ranges363265
+Node: BEGIN/END366231
+Node: Using BEGIN/END366993
+Ref: Using BEGIN/END-Footnote-1369724
+Node: I/O And BEGIN/END369830
+Node: BEGINFILE/ENDFILE372112
+Node: Empty375016
+Node: Using Shell Variables375332
+Node: Action Overview377617
+Node: Statements379974
+Node: If Statement381828
+Node: While Statement383327
+Node: Do Statement385371
+Node: For Statement386527
+Node: Switch Statement389679
+Node: Break Statement391776
+Node: Continue Statement393766
+Node: Next Statement395559
+Node: Nextfile Statement397949
+Node: Exit Statement400590
+Node: Built-in Variables403006
+Node: User-modified404101
+Ref: User-modified-Footnote-1412456
+Node: Auto-set412518
+Ref: Auto-set-Footnote-1424869
+Ref: Auto-set-Footnote-2425074
+Node: ARGC and ARGV425130
+Node: Arrays428981
+Node: Array Basics430486
+Node: Array Intro431312
+Node: Reference to Elements435630
+Node: Assigning Elements437900
+Node: Array Example438391
+Node: Scanning an Array440123
+Node: Controlling Scanning442437
+Ref: Controlling Scanning-Footnote-1447370
+Node: Delete447686
+Ref: Delete-Footnote-1450451
+Node: Numeric Array Subscripts450508
+Node: Uninitialized Subscripts452691
+Node: Multi-dimensional454319
+Node: Multi-scanning457413
+Node: Arrays of Arrays459004
+Node: Functions463649
+Node: Built-in464468
+Node: Calling Built-in465546
+Node: Numeric Functions467534
+Ref: Numeric Functions-Footnote-1471366
+Ref: Numeric Functions-Footnote-2471723
+Ref: Numeric Functions-Footnote-3471771
+Node: String Functions472040
+Ref: String Functions-Footnote-1495537
+Ref: String Functions-Footnote-2495666
+Ref: String Functions-Footnote-3495914
+Node: Gory Details496001
+Ref: table-sub-escapes497680
+Ref: table-sub-posix-92499034
+Ref: table-sub-proposed500385
+Ref: table-posix-sub501739
+Ref: table-gensub-escapes503284
+Ref: Gory Details-Footnote-1504491
+Ref: Gory Details-Footnote-2504542
+Node: I/O Functions504693
+Ref: I/O Functions-Footnote-1511717
+Node: Time Functions511864
+Ref: Time Functions-Footnote-1522756
+Ref: Time Functions-Footnote-2522824
+Ref: Time Functions-Footnote-3522982
+Ref: Time Functions-Footnote-4523093
+Ref: Time Functions-Footnote-5523205
+Ref: Time Functions-Footnote-6523432
+Node: Bitwise Functions523698
+Ref: table-bitwise-ops524256
+Ref: Bitwise Functions-Footnote-1528477
+Node: Type Functions528661
+Node: I18N Functions529131
+Node: User-defined530758
+Node: Definition Syntax531562
+Ref: Definition Syntax-Footnote-1536472
+Node: Function Example536541
+Node: Function Caveats539135
+Node: Calling A Function539556
+Node: Variable Scope540671
+Node: Pass By Value/Reference543634
+Node: Return Statement547074
+Node: Dynamic Typing550055
+Node: Indirect Calls550790
+Node: Library Functions560475
+Ref: Library Functions-Footnote-1563474
+Node: Library Names563645
+Ref: Library Names-Footnote-1567116
+Ref: Library Names-Footnote-2567336
+Node: General Functions567422
+Node: Strtonum Function568375
+Node: Assert Function571305
+Node: Round Function574631
+Node: Cliff Random Function576174
+Node: Ordinal Functions577190
+Ref: Ordinal Functions-Footnote-1580260
+Ref: Ordinal Functions-Footnote-2580512
+Node: Join Function580721
+Ref: Join Function-Footnote-1582492
+Node: Getlocaltime Function582692
+Node: Data File Management586407
+Node: Filetrans Function587039
+Node: Rewind Function591178
+Node: File Checking592565
+Node: Empty Files593659
+Node: Ignoring Assigns595889
+Node: Getopt Function597442
+Ref: Getopt Function-Footnote-1608746
+Node: Passwd Functions608949
+Ref: Passwd Functions-Footnote-1617924
+Node: Group Functions618012
+Node: Walking Arrays626096
+Node: Sample Programs627665
+Node: Running Examples628342
+Node: Clones629070
+Node: Cut Program630294
+Node: Egrep Program640139
+Ref: Egrep Program-Footnote-1647912
+Node: Id Program648022
+Node: Split Program651638
+Ref: Split Program-Footnote-1655157
+Node: Tee Program655285
+Node: Uniq Program658088
+Node: Wc Program665517
+Ref: Wc Program-Footnote-1669783
+Ref: Wc Program-Footnote-2669983
+Node: Miscellaneous Programs670075
+Node: Dupword Program671263
+Node: Alarm Program673294
+Node: Translate Program678043
+Ref: Translate Program-Footnote-1682430
+Ref: Translate Program-Footnote-2682658
+Node: Labels Program682792
+Ref: Labels Program-Footnote-1686163
+Node: Word Sorting686247
+Node: History Sorting690131
+Node: Extract Program691970
+Ref: Extract Program-Footnote-1699453
+Node: Simple Sed699581
+Node: Igawk Program702643
+Ref: Igawk Program-Footnote-1717800
+Ref: Igawk Program-Footnote-2718001
+Node: Anagram Program718139
+Node: Signature Program721207
+Node: Internationalization722307
+Node: I18N and L10N723739
+Node: Explaining gettext724425
+Ref: Explaining gettext-Footnote-1729491
+Ref: Explaining gettext-Footnote-2729675
+Node: Programmer i18n729840
+Node: Translator i18n734040
+Node: String Extraction734833
+Ref: String Extraction-Footnote-1735794
+Node: Printf Ordering735880
+Ref: Printf Ordering-Footnote-1738664
+Node: I18N Portability738728
+Ref: I18N Portability-Footnote-1741177
+Node: I18N Example741240
+Ref: I18N Example-Footnote-1743875
+Node: Gawk I18N743947
+Node: Advanced Features744564
+Node: Nondecimal Data746068
+Node: Array Sorting747651
+Node: Controlling Array Traversal748348
+Node: Array Sorting Functions756586
+Ref: Array Sorting Functions-Footnote-1760260
+Ref: Array Sorting Functions-Footnote-2760353
+Node: Two-way I/O760547
+Ref: Two-way I/O-Footnote-1765979
+Node: TCP/IP Networking766049
+Node: Profiling768893
+Node: Debugger776347
+Node: Debugging777315
+Node: Debugging Concepts777748
+Node: Debugging Terms779604
+Node: Awk Debugging782201
+Node: Sample Debugging Session783093
+Node: Debugger Invocation783613
+Node: Finding The Bug784942
+Node: List of Debugger Commands791430
+Node: Breakpoint Control792764
+Node: Debugger Execution Control796428
+Node: Viewing And Changing Data799788
+Node: Execution Stack803144
+Node: Debugger Info804611
+Node: Miscellaneous Debugger Commands808592
+Node: Readline Support814037
+Node: Limitations814868
+Node: Arbitrary Precision Arithmetic817120
+Ref: Arbitrary Precision Arithmetic-Footnote-1818762
+Node: General Arithmetic818910
+Node: Floating Point Issues820630
+Node: String Conversion Precision821511
+Ref: String Conversion Precision-Footnote-1823217
+Node: Unexpected Results823326
+Node: POSIX Floating Point Problems825479
+Ref: POSIX Floating Point Problems-Footnote-1829304
+Node: Integer Programming829342
+Node: Floating-point Programming831095
+Ref: Floating-point Programming-Footnote-1837404
+Node: Floating-point Representation837668
+Node: Floating-point Context838833
+Ref: table-ieee-formats839675
+Node: Rounding Mode841059
+Ref: table-rounding-modes841538
+Ref: Rounding Mode-Footnote-1844542
+Node: Gawk and MPFR844723
+Node: Arbitrary Precision Floats845965
+Ref: Arbitrary Precision Floats-Footnote-1848394
+Node: Setting Precision848705
+Node: Setting Rounding Mode851438
+Ref: table-gawk-rounding-modes851842
+Node: Floating-point Constants853022
+Node: Changing Precision854446
+Ref: Changing Precision-Footnote-1855846
+Node: Exact Arithmetic856020
+Node: Arbitrary Precision Integers859128
+Ref: Arbitrary Precision Integers-Footnote-1862128
+Node: Dynamic Extensions862275
+Node: Extension Intro863661
+Node: Plugin License864869
+Node: Extension Design865543
+Node: Old Extension Problems866614
+Ref: Old Extension Problems-Footnote-1868124
+Node: Extension New Mechanism Goals868181
+Ref: Extension New Mechanism Goals-Footnote-1870893
+Node: Extension Other Design Decisions871079
+Node: Extension Mechanism Outline873191
+Ref: load-extension874216
+Ref: load-new-function875694
+Ref: call-new-function876675
+Node: Extension Future Growth878669
+Node: Extension API Description879487
+Node: Extension API Functions Introduction880815
+Node: General Data Types885515
+Ref: General Data Types-Footnote-1891117
+Node: Requesting Values891416
+Ref: table-value-types-returned892147
+Node: Constructor Functions893101
+Node: Registration Functions896097
+Node: Extension Functions896782
+Node: Exit Callback Functions898614
+Node: Extension Version String899857
+Node: Input Parsers900507
+Node: Output Wrappers909094
+Node: Two-way processors913510
+Node: Printing Messages915640
+Ref: Printing Messages-Footnote-1916717
+Node: Updating `ERRNO'916869
+Node: Accessing Parameters917608
+Node: Symbol Table Access918838
+Node: Symbol table by name919350
+Ref: Symbol table by name-Footnote-1921520
+Node: Symbol table by cookie921600
+Ref: Symbol table by cookie-Footnote-1925729
+Node: Cached values925792
+Ref: Cached values-Footnote-1929235
+Node: Array Manipulation929326
+Ref: Array Manipulation-Footnote-1930424
+Node: Array Data Types930463
+Ref: Array Data Types-Footnote-1933166
+Node: Array Functions933258
+Node: Flattening Arrays937024
+Node: Creating Arrays943857
+Node: Extension API Variables948652
+Node: Extension Versioning949288
+Node: Extension API Informational Variables951189
+Node: Extension API Boilerplate952275
+Node: Finding Extensions956106
+Node: Extension Example956653
+Node: Internal File Description957391
+Node: Internal File Ops961079
+Ref: Internal File Ops-Footnote-1972526
+Node: Using Internal File Ops972666
+Ref: Using Internal File Ops-Footnote-1975019
+Node: Extension Samples975285
+Node: Extension Sample File Functions976728
+Node: Extension Sample Fnmatch985201
+Node: Extension Sample Fork986927
+Node: Extension Sample Ord988141
+Node: Extension Sample Readdir988917
+Node: Extension Sample Revout990421
+Node: Extension Sample Rev2way991014
+Node: Extension Sample Read write array991704
+Node: Extension Sample Readfile993587
+Node: Extension Sample API Tests994342
+Node: Extension Sample Time994867
+Node: gawkextlib996174
+Node: Language History998555
+Node: V7/SVR3.11000077
+Node: SVR41002398
+Node: POSIX1003840
+Node: BTL1004848
+Node: POSIX/GNU1005582
+Node: Common Extensions1011117
+Node: Ranges and Locales1012224
+Ref: Ranges and Locales-Footnote-11016842
+Ref: Ranges and Locales-Footnote-21016869
+Ref: Ranges and Locales-Footnote-31017129
+Node: Contributors1017350
+Node: Installation1021646
+Node: Gawk Distribution1022540
+Node: Getting1023024
+Node: Extracting1023850
+Node: Distribution contents1025542
+Node: Unix Installation1030764
+Node: Quick Installation1031381
+Node: Additional Configuration Options1033343
+Node: Configuration Philosophy1034820
+Node: Non-Unix Installation1037162
+Node: PC Installation1037620
+Node: PC Binary Installation1038919
+Node: PC Compiling1040767
+Node: PC Testing1043711
+Node: PC Using1044887
+Node: Cygwin1049072
+Node: MSYS1050072
+Node: VMS Installation1050586
+Node: VMS Compilation1051189
+Ref: VMS Compilation-Footnote-11052196
+Node: VMS Installation Details1052254
+Node: VMS Running1053889
+Node: VMS Old Gawk1055496
+Node: Bugs1055970
+Node: Other Versions1059822
+Node: Notes1065137
+Node: Compatibility Mode1065867
+Node: Additions1066650
+Node: Accessing The Source1067577
+Node: Adding Code1069180
+Node: New Ports1075222
+Node: Derived Files1079357
+Ref: Derived Files-Footnote-11084665
+Ref: Derived Files-Footnote-21084699
+Ref: Derived Files-Footnote-31085299
+Node: Future Extensions1085397
+Node: Implementation Limitations1085978
+Node: Old Extension Mechansim1087237
+Node: Basic Concepts1089004
+Node: Basic High Level1089685
+Ref: figure-general-flow1089956
+Ref: figure-process-flow1090555
+Ref: Basic High Level-Footnote-11093784
+Node: Basic Data Typing1093969
+Node: Glossary1097324
+Node: Copying1122635
+Node: GNU Free Documentation License1160192
+Node: Index1185329

End Tag Table