[Top][All Lists]

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

[gawk-diffs] [SCM] gawk branch, feature/api-mpfr, updated. gawk-4.1.0-26

From: Arnold Robbins
Subject: [gawk-diffs] [SCM] gawk branch, feature/api-mpfr, updated. gawk-4.1.0-2634-g5fc8c25
Date: Sun, 28 May 2017 22:59:39 -0400 (EDT)

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

The branch, feature/api-mpfr has been updated
       via  5fc8c257478f9c503a905c27163b038843bc591c (commit)
       via  c73879ace26ad81ee05db907001b7989d0b11af3 (commit)
      from  1356d0371b7e79481a3f8f9bb38a3afed7ba8ca3 (commit)

Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.

- Log -----------------------------------------------------------------

commit 5fc8c257478f9c503a905c27163b038843bc591c
Merge: 1356d03 c73879a
Author: Arnold D. Robbins <address@hidden>
Date:   Mon May 29 05:59:30 2017 +0300

    Merge branch 'master' into feature/api-mpfr

diff --cc doc/
index b57abbd,2ed1c73..b7b6b48
--- a/doc/
+++ b/doc/
@@@ -35603,579 -35721,580 +35644,580 @@@ Inde
  Tag Table:
  Node: Top1200
- Node: Foreword343204
- Node: Foreword447646
- Node: Preface49178
- Ref: Preface-Footnote-152037
- Ref: Preface-Footnote-252144
- Ref: Preface-Footnote-352378
- Node: History52520
- Node: Names54872
- Ref: Names-Footnote-155966
- Node: This Manual56113
- Ref: This Manual-Footnote-162598
- Node: Conventions62698
- Node: Manual History65052
- Ref: Manual History-Footnote-168047
- Ref: Manual History-Footnote-268088
- Node: How To Contribute68162
- Node: Acknowledgments68813
- Node: Getting Started73699
- Node: Running gawk76138
- Node: One-shot77328
- Node: Read Terminal78591
- Node: Long80584
- Node: Executable Scripts82097
- Ref: Executable Scripts-Footnote-184892
- Node: Comments84995
- Node: Quoting87479
- Node: DOS Quoting92996
- Node: Sample Data Files95051
- Node: Very Simple97646
- Node: Two Rules102548
- Node: More Complex104433
- Node: Statements/Lines107299
- Ref: Statements/Lines-Footnote-1111758
- Node: Other Features112023
- Node: When112959
- Ref: When-Footnote-1114713
- Node: Intro Summary114778
- Node: Invoking Gawk115662
- Node: Command Line117176
- Node: Options117974
- Ref: Options-Footnote-1134593
- Ref: Options-Footnote-2134823
- Node: Other Arguments134848
- Node: Naming Standard Input137795
- Node: Environment Variables138888
- Node: AWKPATH Variable139446
- Ref: AWKPATH Variable-Footnote-1142857
- Ref: AWKPATH Variable-Footnote-2142891
- Node: AWKLIBPATH Variable143152
- Node: Other Environment Variables144409
- Node: Exit Status148230
- Node: Include Files148907
- Node: Loading Shared Libraries152502
- Node: Obsolete153930
- Node: Undocumented154622
- Node: Invoking Summary154919
- Node: Regexp156579
- Node: Regexp Usage158033
- Node: Escape Sequences160070
- Node: Regexp Operators166302
- Ref: Regexp Operators-Footnote-1173718
- Ref: Regexp Operators-Footnote-2173865
- Node: Bracket Expressions173963
- Ref: table-char-classes176439
- Node: Leftmost Longest179576
- Node: Computed Regexps180879
- Node: GNU Regexp Operators184306
- Node: Case-sensitivity187985
- Ref: Case-sensitivity-Footnote-1190872
- Ref: Case-sensitivity-Footnote-2191107
- Node: Regexp Summary191215
- Node: Reading Files192681
- Node: Records194950
- Node: awk split records195683
- Node: gawk split records200614
- Ref: gawk split records-Footnote-1205154
- Node: Fields205191
- Node: Nonconstant Fields207932
- Ref: Nonconstant Fields-Footnote-1210168
- Node: Changing Fields210372
- Node: Field Separators216300
- Node: Default Field Splitting218998
- Node: Regexp Field Splitting220116
- Node: Single Character Fields223469
- Node: Command Line Field Separator224529
- Node: Full Line Fields227747
- Ref: Full Line Fields-Footnote-1229269
- Ref: Full Line Fields-Footnote-2229315
- Node: Field Splitting Summary229416
- Node: Constant Size231490
- Node: Fixed width data232222
- Node: Skipping intervening235689
- Node: Allowing trailing data236487
- Node: Fields with fixed data237524
- Node: Splitting By Content239042
- Ref: Splitting By Content-Footnote-1242692
- Node: Testing field creation242855
- Node: Multiple Line244476
- Ref: Multiple Line-Footnote-1250360
- Node: Getline250539
- Node: Plain Getline253008
- Node: Getline/Variable255649
- Node: Getline/File256800
- Node: Getline/Variable/File258188
- Ref: Getline/Variable/File-Footnote-1259793
- Node: Getline/Pipe259881
- Node: Getline/Variable/Pipe262588
- Node: Getline/Coprocess263723
- Node: Getline/Variable/Coprocess264990
- Node: Getline Notes265732
- Node: Getline Summary268529
- Ref: table-getline-variants268953
- Node: Read Timeout269701
- Ref: Read Timeout-Footnote-1273607
- Node: Retrying Input273665
- Node: Command-line directories274864
- Node: Input Summary275770
- Node: Input Exercises278942
- Node: Printing279670
- Node: Print281504
- Node: Print Examples282961
- Node: Output Separators285741
- Node: OFMT287758
- Node: Printf289114
- Node: Basic Printf289899
- Node: Control Letters291473
- Node: Format Modifiers295461
- Node: Printf Examples301476
- Node: Redirection303962
- Node: Special FD310803
- Ref: Special FD-Footnote-1313971
- Node: Special Files314045
- Node: Other Inherited Files314662
- Node: Special Network315663
- Node: Special Caveats316523
- Node: Close Files And Pipes317472
- Ref: table-close-pipe-return-values324379
- Ref: Close Files And Pipes-Footnote-1325162
- Ref: Close Files And Pipes-Footnote-2325310
- Node: Nonfatal325462
- Node: Output Summary327787
- Node: Output Exercises329009
- Node: Expressions329688
- Node: Values330876
- Node: Constants331554
- Node: Scalar Constants332245
- Ref: Scalar Constants-Footnote-1333109
- Node: Nondecimal-numbers333359
- Node: Regexp Constants336360
- Node: Using Constant Regexps336886
- Node: Standard Regexp Constants337508
- Node: Strong Regexp Constants340696
- Node: Variables343654
- Node: Using Variables344311
- Node: Assignment Options346221
- Node: Conversion348094
- Node: Strings And Numbers348618
- Ref: Strings And Numbers-Footnote-1351681
- Node: Locale influences conversions351790
- Ref: table-locale-affects354548
- Node: All Operators355166
- Node: Arithmetic Ops355795
- Node: Concatenation358301
- Ref: Concatenation-Footnote-1361148
- Node: Assignment Ops361255
- Ref: table-assign-ops366246
- Node: Increment Ops367559
- Node: Truth Values and Conditions371019
- Node: Truth Values372093
- Node: Typing and Comparison373141
- Node: Variable Typing373961
- Ref: Variable Typing-Footnote-1380424
- Ref: Variable Typing-Footnote-2380496
- Node: Comparison Operators380573
- Ref: table-relational-ops380992
- Node: POSIX String Comparison384487
- Ref: POSIX String Comparison-Footnote-1386182
- Ref: POSIX String Comparison-Footnote-2386321
- Node: Boolean Ops386405
- Ref: Boolean Ops-Footnote-1390887
- Node: Conditional Exp390979
- Node: Function Calls392715
- Node: Precedence396592
- Node: Locales400251
- Node: Expressions Summary401883
- Node: Patterns and Actions404456
- Node: Pattern Overview405576
- Node: Regexp Patterns407253
- Node: Expression Patterns407795
- Node: Ranges411576
- Node: BEGIN/END414684
- Node: Using BEGIN/END415445
- Ref: Using BEGIN/END-Footnote-1418181
- Node: I/O And BEGIN/END418287
- Node: Empty423508
- Node: Using Shell Variables423825
- Node: Action Overview426099
- Node: Statements428424
- Node: If Statement430272
- Node: While Statement431767
- Node: Do Statement433795
- Node: For Statement434943
- Node: Switch Statement438101
- Node: Break Statement440487
- Node: Continue Statement442579
- Node: Next Statement444406
- Node: Nextfile Statement446789
- Node: Exit Statement449441
- Node: Built-in Variables451844
- Node: User-modified452977
- Node: Auto-set460744
- Ref: Auto-set-Footnote-1475472
- Ref: Auto-set-Footnote-2475678
- Node: ARGC and ARGV475734
- Node: Pattern Action Summary479947
- Node: Arrays482377
- Node: Array Basics483706
- Node: Array Intro484550
- Ref: figure-array-elements486525
- Ref: Array Intro-Footnote-1489229
- Node: Reference to Elements489357
- Node: Assigning Elements491821
- Node: Array Example492312
- Node: Scanning an Array494071
- Node: Controlling Scanning497093
- Ref: Controlling Scanning-Footnote-1502492
- Node: Numeric Array Subscripts502808
- Node: Uninitialized Subscripts504992
- Node: Delete506611
- Ref: Delete-Footnote-1509363
- Node: Multidimensional509420
- Node: Multiscanning512515
- Node: Arrays of Arrays514106
- Node: Arrays Summary518873
- Node: Functions520966
- Node: Built-in522004
- Node: Calling Built-in523085
- Node: Numeric Functions525081
- Ref: Numeric Functions-Footnote-1529109
- Ref: Numeric Functions-Footnote-2529466
- Ref: Numeric Functions-Footnote-3529514
- Node: String Functions529786
- Ref: String Functions-Footnote-1553444
- Ref: String Functions-Footnote-2553572
- Ref: String Functions-Footnote-3553820
- Node: Gory Details553907
- Ref: table-sub-escapes555698
- Ref: table-sub-proposed557217
- Ref: table-posix-sub558580
- Ref: table-gensub-escapes560121
- Ref: Gory Details-Footnote-1560944
- Node: I/O Functions561098
- Ref: table-system-return-values567680
- Ref: I/O Functions-Footnote-1569660
- Ref: I/O Functions-Footnote-2569808
- Node: Time Functions569928
- Ref: Time Functions-Footnote-1580595
- Ref: Time Functions-Footnote-2580663
- Ref: Time Functions-Footnote-3580821
- Ref: Time Functions-Footnote-4580932
- Ref: Time Functions-Footnote-5581044
- Ref: Time Functions-Footnote-6581271
- Node: Bitwise Functions581537
- Ref: table-bitwise-ops582131
- Ref: Bitwise Functions-Footnote-1588164
- Ref: Bitwise Functions-Footnote-2588337
- Node: Type Functions588528
- Node: I18N Functions591203
- Node: User-defined592854
- Node: Definition Syntax593659
- Ref: Definition Syntax-Footnote-1599346
- Node: Function Example599417
- Ref: Function Example-Footnote-1602339
- Node: Function Caveats602361
- Node: Calling A Function602879
- Node: Variable Scope603837
- Node: Pass By Value/Reference606831
- Node: Return Statement610330
- Node: Dynamic Typing613309
- Node: Indirect Calls614239
- Ref: Indirect Calls-Footnote-1624490
- Node: Functions Summary624618
- Node: Library Functions627323
- Ref: Library Functions-Footnote-1630930
- Ref: Library Functions-Footnote-2631073
- Node: Library Names631244
- Ref: Library Names-Footnote-1634704
- Ref: Library Names-Footnote-2634927
- Node: General Functions635013
- Node: Strtonum Function636116
- Node: Assert Function639138
- Node: Round Function642464
- Node: Cliff Random Function644005
- Node: Ordinal Functions645021
- Ref: Ordinal Functions-Footnote-1648084
- Ref: Ordinal Functions-Footnote-2648336
- Node: Join Function648546
- Ref: Join Function-Footnote-1650316
- Node: Getlocaltime Function650516
- Node: Readfile Function654258
- Node: Shell Quoting656230
- Node: Data File Management657631
- Node: Filetrans Function658263
- Node: Rewind Function662359
- Node: File Checking664265
- Ref: File Checking-Footnote-1665599
- Node: Empty Files665800
- Node: Ignoring Assigns667779
- Node: Getopt Function669329
- Ref: Getopt Function-Footnote-1680798
- Node: Passwd Functions680998
- Ref: Passwd Functions-Footnote-1689837
- Node: Group Functions689925
- Ref: Group Functions-Footnote-1697823
- Node: Walking Arrays698030
- Node: Library Functions Summary701038
- Node: Library Exercises702444
- Node: Sample Programs702909
- Node: Running Examples703679
- Node: Clones704407
- Node: Cut Program705631
- Node: Egrep Program715560
- Ref: Egrep Program-Footnote-1723072
- Node: Id Program723182
- Node: Split Program726862
- Ref: Split Program-Footnote-1730321
- Node: Tee Program730450
- Node: Uniq Program733240
- Node: Wc Program740666
- Ref: Wc Program-Footnote-1744921
- Node: Miscellaneous Programs745015
- Node: Dupword Program746228
- Node: Alarm Program748258
- Node: Translate Program753113
- Ref: Translate Program-Footnote-1757678
- Node: Labels Program757948
- Ref: Labels Program-Footnote-1761299
- Node: Word Sorting761383
- Node: History Sorting765455
- Node: Extract Program767290
- Node: Simple Sed774819
- Node: Igawk Program777893
- Ref: Igawk Program-Footnote-1792224
- Ref: Igawk Program-Footnote-2792426
- Ref: Igawk Program-Footnote-3792548
- Node: Anagram Program792663
- Node: Signature Program795725
- Node: Programs Summary796972
- Node: Programs Exercises798186
- Ref: Programs Exercises-Footnote-1802315
- Node: Advanced Features802406
- Node: Nondecimal Data804396
- Node: Array Sorting805987
- Node: Controlling Array Traversal806687
- Ref: Controlling Array Traversal-Footnote-1815054
- Node: Array Sorting Functions815172
- Ref: Array Sorting Functions-Footnote-1820263
- Node: Two-way I/O820459
- Ref: Two-way I/O-Footnote-1827010
- Ref: Two-way I/O-Footnote-2827197
- Node: TCP/IP Networking827279
- Node: Profiling830397
- Ref: Profiling-Footnote-1839069
- Node: Advanced Features Summary839392
- Node: Internationalization841236
- Node: I18N and L10N842716
- Node: Explaining gettext843403
- Ref: Explaining gettext-Footnote-1849295
- Ref: Explaining gettext-Footnote-2849480
- Node: Programmer i18n849645
- Ref: Programmer i18n-Footnote-1854594
- Node: Translator i18n854643
- Node: String Extraction855437
- Ref: String Extraction-Footnote-1856569
- Node: Printf Ordering856655
- Ref: Printf Ordering-Footnote-1859441
- Node: I18N Portability859505
- Ref: I18N Portability-Footnote-1861961
- Node: I18N Example862024
- Ref: I18N Example-Footnote-1864830
- Node: Gawk I18N864903
- Node: I18N Summary865548
- Node: Debugger866889
- Node: Debugging867911
- Node: Debugging Concepts868352
- Node: Debugging Terms870161
- Node: Awk Debugging872736
- Node: Sample Debugging Session873642
- Node: Debugger Invocation874176
- Node: Finding The Bug875562
- Node: List of Debugger Commands882040
- Node: Breakpoint Control883373
- Node: Debugger Execution Control887067
- Node: Viewing And Changing Data890429
- Node: Execution Stack893803
- Node: Debugger Info895440
- Node: Miscellaneous Debugger Commands899511
- Node: Readline Support904599
- Node: Limitations905495
- Node: Debugging Summary907604
- Node: Arbitrary Precision Arithmetic908883
- Node: Computer Arithmetic910299
- Ref: table-numeric-ranges913890
- Ref: Computer Arithmetic-Footnote-1914612
- Node: Math Definitions914669
- Ref: table-ieee-formats917983
- Ref: Math Definitions-Footnote-1918586
- Node: MPFR features918691
- Node: FP Math Caution920408
- Ref: FP Math Caution-Footnote-1921480
- Node: Inexactness of computations921849
- Node: Inexact representation922809
- Node: Comparing FP Values924169
- Node: Errors accumulate925251
- Node: Getting Accuracy926684
- Node: Try To Round929394
- Node: Setting precision930293
- Ref: table-predefined-precision-strings930990
- Node: Setting the rounding mode932820
- Ref: table-gawk-rounding-modes933194
- Ref: Setting the rounding mode-Footnote-1936602
- Node: Arbitrary Precision Integers936781
- Ref: Arbitrary Precision Integers-Footnote-1939968
- Node: POSIX Floating Point Problems940117
- Ref: POSIX Floating Point Problems-Footnote-1943999
- Node: Floating point summary944037
- Node: Dynamic Extensions946227
- Node: Extension Intro947780
- Node: Plugin License949046
- Node: Extension Mechanism Outline949843
- Ref: figure-load-extension950282
- Ref: figure-register-new-function951847
- Ref: figure-call-new-function952939
- Node: Extension API Description955001
- Node: Extension API Functions Introduction956643
- Node: General Data Types961977
- Ref: General Data Types-Footnote-1969182
- Node: Memory Allocation Functions969481
- Ref: Memory Allocation Functions-Footnote-1972326
- Node: Constructor Functions972425
- Node: Registration Functions975424
- Node: Extension Functions976109
- Node: Exit Callback Functions981322
- Node: Extension Version String982572
- Node: Input Parsers983235
- Node: Output Wrappers995942
- Node: Two-way processors1000454
- Node: Printing Messages1002719
- Ref: Printing Messages-Footnote-11003890
- Node: Updating ERRNO1004043
- Node: Requesting Values1004782
- Ref: table-value-types-returned1005519
- Node: Accessing Parameters1006455
- Node: Symbol Table Access1007690
- Node: Symbol table by name1008202
- Node: Symbol table by cookie1009991
- Ref: Symbol table by cookie-Footnote-11014176
- Node: Cached values1014240
- Ref: Cached values-Footnote-11017776
- Node: Array Manipulation1017867
- Ref: Array Manipulation-Footnote-11018958
- Node: Array Data Types1018995
- Ref: Array Data Types-Footnote-11021653
- Node: Array Functions1021745
- Node: Flattening Arrays1026144
- Node: Creating Arrays1033085
- Node: Redirection API1037854
- Node: Extension API Variables1040696
- Node: Extension Versioning1041329
- Ref: gawk-api-version1041766
- Node: Extension API Informational Variables1043494
- Node: Extension API Boilerplate1044558
- Node: Changes from API V11048420
- Node: Finding Extensions1049080
- Node: Extension Example1049639
- Node: Internal File Description1050437
- Node: Internal File Ops1054517
- Ref: Internal File Ops-Footnote-11065917
- Node: Using Internal File Ops1066057
- Ref: Using Internal File Ops-Footnote-11068440
- Node: Extension Samples1068714
- Node: Extension Sample File Functions1070243
- Node: Extension Sample Fnmatch1077892
- Node: Extension Sample Fork1079379
- Node: Extension Sample Inplace1080597
- Node: Extension Sample Ord1083807
- Node: Extension Sample Readdir1084643
- Ref: table-readdir-file-types1085532
- Node: Extension Sample Revout1086337
- Node: Extension Sample Rev2way1086926
- Node: Extension Sample Read write array1087666
- Node: Extension Sample Readfile1089608
- Node: Extension Sample Time1090703
- Node: Extension Sample API Tests1092051
- Node: gawkextlib1092543
- Node: Extension summary1094990
- Node: Extension Exercises1098692
- Node: Language History1100190
- Node: V7/SVR3.11101846
- Node: SVR41103998
- Node: POSIX1105432
- Node: BTL1106811
- Node: POSIX/GNU1107540
- Node: Feature History1113318
- Node: Common Extensions1127629
- Node: Ranges and Locales1128912
- Ref: Ranges and Locales-Footnote-11133528
- Ref: Ranges and Locales-Footnote-21133555
- Ref: Ranges and Locales-Footnote-31133790
- Node: Contributors1134011
- Node: History summary1139571
- Node: Installation1140951
- Node: Gawk Distribution1141895
- Node: Getting1142379
- Node: Extracting1143340
- Node: Distribution contents1144978
- Node: Unix Installation1151320
- Node: Quick Installation1152002
- Node: Shell Startup Files1154416
- Node: Additional Configuration Options1155505
- Node: Configuration Philosophy1157494
- Node: Non-Unix Installation1159863
- Node: PC Installation1160323
- Node: PC Binary Installation1161161
- Node: PC Compiling1161596
- Node: PC Using1162713
- Node: Cygwin1165758
- Node: MSYS1166528
- Node: VMS Installation1167029
- Node: VMS Compilation1167820
- Ref: VMS Compilation-Footnote-11169049
- Node: VMS Dynamic Extensions1169107
- Node: VMS Installation Details1170792
- Node: VMS Running1173045
- Node: VMS GNV1177324
- Node: VMS Old Gawk1178059
- Node: Bugs1178530
- Node: Bug address1179193
- Node: Usenet1181590
- Node: Maintainers1182367
- Node: Other Versions1183743
- Node: Installation summary1190327
- Node: Notes1191362
- Node: Compatibility Mode1192227
- Node: Additions1193009
- Node: Accessing The Source1193934
- Node: Adding Code1195369
- Node: New Ports1201587
- Node: Derived Files1206075
- Ref: Derived Files-Footnote-11211560
- Ref: Derived Files-Footnote-21211595
- Ref: Derived Files-Footnote-31212193
- Node: Future Extensions1212307
- Node: Implementation Limitations1212965
- Node: Extension Design1214148
- Node: Old Extension Problems1215302
- Ref: Old Extension Problems-Footnote-11216820
- Node: Extension New Mechanism Goals1216877
- Ref: Extension New Mechanism Goals-Footnote-11220241
- Node: Extension Other Design Decisions1220430
- Node: Extension Future Growth1222543
- Node: Old Extension Mechanism1223379
- Node: Notes summary1225142
- Node: Basic Concepts1226324
- Node: Basic High Level1227005
- Ref: figure-general-flow1227287
- Ref: figure-process-flow1227972
- Ref: Basic High Level-Footnote-11231273
- Node: Basic Data Typing1231458
- Node: Glossary1234786
- Node: Copying1266733
- Node: GNU Free Documentation License1304272
- Node: Index1329390
+ Node: Foreword343279
+ Node: Foreword447721
+ Node: Preface49253
+ Ref: Preface-Footnote-152112
+ Ref: Preface-Footnote-252219
+ Ref: Preface-Footnote-352453
+ Node: History52595
+ Node: Names54947
+ Ref: Names-Footnote-156041
+ Node: This Manual56188
+ Ref: This Manual-Footnote-162673
+ Node: Conventions62773
+ Node: Manual History65127
+ Ref: Manual History-Footnote-168122
+ Ref: Manual History-Footnote-268163
+ Node: How To Contribute68237
+ Node: Acknowledgments68888
+ Node: Getting Started73774
+ Node: Running gawk76213
+ Node: One-shot77403
+ Node: Read Terminal78666
+ Node: Long80659
+ Node: Executable Scripts82172
+ Ref: Executable Scripts-Footnote-184967
+ Node: Comments85070
+ Node: Quoting87554
+ Node: DOS Quoting93071
+ Node: Sample Data Files95126
+ Node: Very Simple97721
+ Node: Two Rules102623
+ Node: More Complex104508
+ Node: Statements/Lines107374
+ Ref: Statements/Lines-Footnote-1111833
+ Node: Other Features112098
+ Node: When113034
+ Ref: When-Footnote-1114788
+ Node: Intro Summary114853
+ Node: Invoking Gawk115737
+ Node: Command Line117251
+ Node: Options118049
+ Ref: Options-Footnote-1134668
+ Ref: Options-Footnote-2134898
+ Node: Other Arguments134923
+ Node: Naming Standard Input137870
+ Node: Environment Variables138963
+ Node: AWKPATH Variable139521
+ Ref: AWKPATH Variable-Footnote-1142932
+ Ref: AWKPATH Variable-Footnote-2142966
+ Node: AWKLIBPATH Variable143227
+ Node: Other Environment Variables144484
+ Node: Exit Status148305
+ Node: Include Files148982
+ Node: Loading Shared Libraries152577
+ Node: Obsolete154005
+ Node: Undocumented154697
+ Node: Invoking Summary154994
+ Node: Regexp156654
+ Node: Regexp Usage158108
+ Node: Escape Sequences160145
+ Node: Regexp Operators166377
+ Ref: Regexp Operators-Footnote-1173793
+ Ref: Regexp Operators-Footnote-2173940
+ Node: Bracket Expressions174038
+ Ref: table-char-classes176514
+ Node: Leftmost Longest179651
+ Node: Computed Regexps180954
+ Node: GNU Regexp Operators184381
+ Node: Case-sensitivity188060
+ Ref: Case-sensitivity-Footnote-1190947
+ Ref: Case-sensitivity-Footnote-2191182
+ Node: Regexp Summary191290
+ Node: Reading Files192756
+ Node: Records195025
+ Node: awk split records195758
+ Node: gawk split records200689
+ Ref: gawk split records-Footnote-1205229
+ Node: Fields205266
+ Node: Nonconstant Fields208007
+ Ref: Nonconstant Fields-Footnote-1210243
+ Node: Changing Fields210447
+ Node: Field Separators216375
+ Node: Default Field Splitting219073
+ Node: Regexp Field Splitting220191
+ Node: Single Character Fields223544
+ Node: Command Line Field Separator224604
+ Node: Full Line Fields227822
+ Ref: Full Line Fields-Footnote-1229344
+ Ref: Full Line Fields-Footnote-2229390
+ Node: Field Splitting Summary229491
+ Node: Constant Size231565
+ Node: Fixed width data232297
+ Node: Skipping intervening235764
+ Node: Allowing trailing data236562
+ Node: Fields with fixed data237599
+ Node: Splitting By Content239117
+ Ref: Splitting By Content-Footnote-1242767
+ Node: Testing field creation242930
+ Node: Multiple Line244551
+ Ref: Multiple Line-Footnote-1250435
+ Node: Getline250614
+ Node: Plain Getline253083
+ Node: Getline/Variable255724
+ Node: Getline/File256875
+ Node: Getline/Variable/File258263
+ Ref: Getline/Variable/File-Footnote-1259868
+ Node: Getline/Pipe259956
+ Node: Getline/Variable/Pipe262663
+ Node: Getline/Coprocess263798
+ Node: Getline/Variable/Coprocess265065
+ Node: Getline Notes265807
+ Node: Getline Summary268604
+ Ref: table-getline-variants269028
+ Node: Read Timeout269776
+ Ref: Read Timeout-Footnote-1273682
+ Node: Retrying Input273740
+ Node: Command-line directories274939
+ Node: Input Summary275845
+ Node: Input Exercises279017
+ Node: Printing279745
+ Node: Print281579
+ Node: Print Examples283036
+ Node: Output Separators285816
+ Node: OFMT287833
+ Node: Printf289189
+ Node: Basic Printf289974
+ Node: Control Letters291548
+ Node: Format Modifiers295536
+ Node: Printf Examples301551
+ Node: Redirection304037
+ Node: Special FD310878
+ Ref: Special FD-Footnote-1314046
+ Node: Special Files314120
+ Node: Other Inherited Files314737
+ Node: Special Network315738
+ Node: Special Caveats316598
+ Node: Close Files And Pipes317547
+ Ref: table-close-pipe-return-values324454
+ Ref: Close Files And Pipes-Footnote-1325237
+ Ref: Close Files And Pipes-Footnote-2325385
+ Node: Nonfatal325537
+ Node: Output Summary327862
+ Node: Output Exercises329084
+ Node: Expressions329763
+ Node: Values330951
+ Node: Constants331629
+ Node: Scalar Constants332320
+ Ref: Scalar Constants-Footnote-1333184
+ Node: Nondecimal-numbers333434
+ Node: Regexp Constants336435
+ Node: Using Constant Regexps336961
+ Node: Standard Regexp Constants337583
+ Node: Strong Regexp Constants340771
+ Node: Variables343729
+ Node: Using Variables344386
+ Node: Assignment Options346296
+ Node: Conversion348169
+ Node: Strings And Numbers348693
+ Ref: Strings And Numbers-Footnote-1351756
+ Node: Locale influences conversions351865
+ Ref: table-locale-affects354623
+ Node: All Operators355241
+ Node: Arithmetic Ops355870
+ Node: Concatenation358376
+ Ref: Concatenation-Footnote-1361223
+ Node: Assignment Ops361330
+ Ref: table-assign-ops366321
+ Node: Increment Ops367634
+ Node: Truth Values and Conditions371094
+ Node: Truth Values372168
+ Node: Typing and Comparison373216
+ Node: Variable Typing374036
+ Ref: Variable Typing-Footnote-1380499
+ Ref: Variable Typing-Footnote-2380571
+ Node: Comparison Operators380648
+ Ref: table-relational-ops381067
+ Node: POSIX String Comparison384562
+ Ref: POSIX String Comparison-Footnote-1386257
+ Ref: POSIX String Comparison-Footnote-2386396
+ Node: Boolean Ops386480
+ Ref: Boolean Ops-Footnote-1390962
+ Node: Conditional Exp391054
+ Node: Function Calls392790
+ Node: Precedence396667
+ Node: Locales400326
+ Node: Expressions Summary401958
+ Node: Patterns and Actions404531
+ Node: Pattern Overview405651
+ Node: Regexp Patterns407328
+ Node: Expression Patterns407870
+ Node: Ranges411651
+ Node: BEGIN/END414759
+ Node: Using BEGIN/END415520
+ Ref: Using BEGIN/END-Footnote-1418256
+ Node: I/O And BEGIN/END418362
+ Node: Empty423583
+ Node: Using Shell Variables423900
+ Node: Action Overview426174
+ Node: Statements428499
+ Node: If Statement430347
+ Node: While Statement431842
+ Node: Do Statement433870
+ Node: For Statement435018
+ Node: Switch Statement438176
+ Node: Break Statement440562
+ Node: Continue Statement442654
+ Node: Next Statement444481
+ Node: Nextfile Statement446864
+ Node: Exit Statement449516
+ Node: Built-in Variables451919
+ Node: User-modified453052
+ Node: Auto-set460819
+ Ref: Auto-set-Footnote-1475547
+ Ref: Auto-set-Footnote-2475753
+ Node: ARGC and ARGV475809
+ Node: Pattern Action Summary480022
+ Node: Arrays482452
+ Node: Array Basics483781
+ Node: Array Intro484625
+ Ref: figure-array-elements486600
+ Ref: Array Intro-Footnote-1489304
+ Node: Reference to Elements489432
+ Node: Assigning Elements491896
+ Node: Array Example492387
+ Node: Scanning an Array494146
+ Node: Controlling Scanning497168
+ Ref: Controlling Scanning-Footnote-1502567
+ Node: Numeric Array Subscripts502883
+ Node: Uninitialized Subscripts505067
+ Node: Delete506686
+ Ref: Delete-Footnote-1509438
+ Node: Multidimensional509495
+ Node: Multiscanning512590
+ Node: Arrays of Arrays514181
+ Node: Arrays Summary518948
+ Node: Functions521041
+ Node: Built-in522079
+ Node: Calling Built-in523160
+ Node: Numeric Functions525156
 -Ref: Numeric Functions-Footnote-1530101
 -Ref: Numeric Functions-Footnote-2530458
 -Ref: Numeric Functions-Footnote-3530506
 -Node: String Functions530778
 -Ref: String Functions-Footnote-1554436
 -Ref: String Functions-Footnote-2554564
 -Ref: String Functions-Footnote-3554812
 -Node: Gory Details554899
 -Ref: table-sub-escapes556690
 -Ref: table-sub-proposed558209
 -Ref: table-posix-sub559572
 -Ref: table-gensub-escapes561113
 -Ref: Gory Details-Footnote-1561936
 -Node: I/O Functions562090
 -Ref: table-system-return-values568672
 -Ref: I/O Functions-Footnote-1570652
 -Ref: I/O Functions-Footnote-2570800
 -Node: Time Functions570920
 -Ref: Time Functions-Footnote-1581587
 -Ref: Time Functions-Footnote-2581655
 -Ref: Time Functions-Footnote-3581813
 -Ref: Time Functions-Footnote-4581924
 -Ref: Time Functions-Footnote-5582036
 -Ref: Time Functions-Footnote-6582263
 -Node: Bitwise Functions582529
 -Ref: table-bitwise-ops583123
 -Ref: Bitwise Functions-Footnote-1589156
 -Ref: Bitwise Functions-Footnote-2589329
 -Node: Type Functions589520
 -Node: I18N Functions592195
 -Node: User-defined593846
 -Node: Definition Syntax594651
 -Ref: Definition Syntax-Footnote-1600338
 -Node: Function Example600409
 -Ref: Function Example-Footnote-1603331
 -Node: Function Caveats603353
 -Node: Calling A Function603871
 -Node: Variable Scope604829
 -Node: Pass By Value/Reference607823
 -Node: Return Statement611322
 -Node: Dynamic Typing614301
 -Node: Indirect Calls615231
 -Ref: Indirect Calls-Footnote-1625482
 -Node: Functions Summary625610
 -Node: Library Functions628315
 -Ref: Library Functions-Footnote-1631922
 -Ref: Library Functions-Footnote-2632065
 -Node: Library Names632236
 -Ref: Library Names-Footnote-1635696
 -Ref: Library Names-Footnote-2635919
 -Node: General Functions636005
 -Node: Strtonum Function637108
 -Node: Assert Function640130
 -Node: Round Function643456
 -Node: Cliff Random Function644997
 -Node: Ordinal Functions646013
 -Ref: Ordinal Functions-Footnote-1649076
 -Ref: Ordinal Functions-Footnote-2649328
 -Node: Join Function649538
 -Ref: Join Function-Footnote-1651308
 -Node: Getlocaltime Function651508
 -Node: Readfile Function655250
 -Node: Shell Quoting657222
 -Node: Data File Management658623
 -Node: Filetrans Function659255
 -Node: Rewind Function663351
 -Node: File Checking665257
 -Ref: File Checking-Footnote-1666591
 -Node: Empty Files666792
 -Node: Ignoring Assigns668771
 -Node: Getopt Function670321
 -Ref: Getopt Function-Footnote-1681790
 -Node: Passwd Functions681990
 -Ref: Passwd Functions-Footnote-1690829
 -Node: Group Functions690917
 -Ref: Group Functions-Footnote-1698815
 -Node: Walking Arrays699022
 -Node: Library Functions Summary702030
 -Node: Library Exercises703436
 -Node: Sample Programs703901
 -Node: Running Examples704671
 -Node: Clones705399
 -Node: Cut Program706623
 -Node: Egrep Program716552
 -Ref: Egrep Program-Footnote-1724064
 -Node: Id Program724174
 -Node: Split Program727854
 -Ref: Split Program-Footnote-1731313
 -Node: Tee Program731442
 -Node: Uniq Program734232
 -Node: Wc Program741658
 -Ref: Wc Program-Footnote-1745913
 -Node: Miscellaneous Programs746007
 -Node: Dupword Program747220
 -Node: Alarm Program749250
 -Node: Translate Program754105
 -Ref: Translate Program-Footnote-1758670
 -Node: Labels Program758940
 -Ref: Labels Program-Footnote-1762291
 -Node: Word Sorting762375
 -Node: History Sorting766447
 -Node: Extract Program768282
 -Node: Simple Sed775811
 -Node: Igawk Program778885
 -Ref: Igawk Program-Footnote-1793216
 -Ref: Igawk Program-Footnote-2793418
 -Ref: Igawk Program-Footnote-3793540
 -Node: Anagram Program793655
 -Node: Signature Program796717
 -Node: Programs Summary797964
 -Node: Programs Exercises799178
 -Ref: Programs Exercises-Footnote-1803307
 -Node: Advanced Features803398
 -Node: Nondecimal Data805388
 -Node: Array Sorting806979
 -Node: Controlling Array Traversal807679
 -Ref: Controlling Array Traversal-Footnote-1816046
 -Node: Array Sorting Functions816164
 -Ref: Array Sorting Functions-Footnote-1821255
 -Node: Two-way I/O821451
 -Ref: Two-way I/O-Footnote-1828002
 -Ref: Two-way I/O-Footnote-2828189
 -Node: TCP/IP Networking828271
 -Node: Profiling831389
 -Ref: Profiling-Footnote-1840061
 -Node: Advanced Features Summary840384
 -Node: Internationalization842228
 -Node: I18N and L10N843708
 -Node: Explaining gettext844395
 -Ref: Explaining gettext-Footnote-1850287
 -Ref: Explaining gettext-Footnote-2850472
 -Node: Programmer i18n850637
 -Ref: Programmer i18n-Footnote-1855586
 -Node: Translator i18n855635
 -Node: String Extraction856429
 -Ref: String Extraction-Footnote-1857561
 -Node: Printf Ordering857647
 -Ref: Printf Ordering-Footnote-1860433
 -Node: I18N Portability860497
 -Ref: I18N Portability-Footnote-1862953
 -Node: I18N Example863016
 -Ref: I18N Example-Footnote-1865822
 -Node: Gawk I18N865895
 -Node: I18N Summary866540
 -Node: Debugger867881
 -Node: Debugging868903
 -Node: Debugging Concepts869344
 -Node: Debugging Terms871153
 -Node: Awk Debugging873728
 -Node: Sample Debugging Session874634
 -Node: Debugger Invocation875168
 -Node: Finding The Bug876554
 -Node: List of Debugger Commands883032
 -Node: Breakpoint Control884365
 -Node: Debugger Execution Control888059
 -Node: Viewing And Changing Data891421
 -Node: Execution Stack894795
 -Node: Debugger Info896432
 -Node: Miscellaneous Debugger Commands900503
 -Node: Readline Support905591
 -Node: Limitations906487
 -Node: Debugging Summary908596
 -Node: Arbitrary Precision Arithmetic909875
 -Node: Computer Arithmetic911360
 -Ref: table-numeric-ranges914951
 -Ref: Computer Arithmetic-Footnote-1915673
 -Node: Math Definitions915730
 -Ref: table-ieee-formats919044
 -Ref: Math Definitions-Footnote-1919647
 -Node: MPFR features919752
 -Node: FP Math Caution921469
 -Ref: FP Math Caution-Footnote-1922541
 -Node: Inexactness of computations922910
 -Node: Inexact representation923870
 -Node: Comparing FP Values925230
 -Node: Errors accumulate926312
 -Node: Getting Accuracy927745
 -Node: Try To Round930455
 -Node: Setting precision931354
 -Ref: table-predefined-precision-strings932051
 -Node: Setting the rounding mode933881
 -Ref: table-gawk-rounding-modes934255
 -Ref: Setting the rounding mode-Footnote-1937663
 -Node: Arbitrary Precision Integers937842
 -Ref: Arbitrary Precision Integers-Footnote-1942747
 -Node: Checking for MPFR942896
 -Node: POSIX Floating Point Problems944193
 -Ref: POSIX Floating Point Problems-Footnote-1948064
 -Node: Floating point summary948102
 -Node: Dynamic Extensions950292
 -Node: Extension Intro951845
 -Node: Plugin License953111
 -Node: Extension Mechanism Outline953908
 -Ref: figure-load-extension954347
 -Ref: figure-register-new-function955912
 -Ref: figure-call-new-function957004
 -Node: Extension API Description959066
 -Node: Extension API Functions Introduction960708
 -Node: General Data Types966042
 -Ref: General Data Types-Footnote-1973247
 -Node: Memory Allocation Functions973546
 -Ref: Memory Allocation Functions-Footnote-1976391
 -Node: Constructor Functions976490
 -Node: Registration Functions979489
 -Node: Extension Functions980174
 -Node: Exit Callback Functions985387
 -Node: Extension Version String986637
 -Node: Input Parsers987300
 -Node: Output Wrappers1000007
 -Node: Two-way processors1004519
 -Node: Printing Messages1006784
 -Ref: Printing Messages-Footnote-11007955
 -Node: Updating ERRNO1008108
 -Node: Requesting Values1008847
 -Ref: table-value-types-returned1009584
 -Node: Accessing Parameters1010520
 -Node: Symbol Table Access1011755
 -Node: Symbol table by name1012267
 -Node: Symbol table by cookie1014056
 -Ref: Symbol table by cookie-Footnote-11018241
 -Node: Cached values1018305
 -Ref: Cached values-Footnote-11021841
 -Node: Array Manipulation1021932
 -Ref: Array Manipulation-Footnote-11023023
 -Node: Array Data Types1023060
 -Ref: Array Data Types-Footnote-11025718
 -Node: Array Functions1025810
 -Node: Flattening Arrays1030209
 -Node: Creating Arrays1037150
 -Node: Redirection API1041919
 -Node: Extension API Variables1044761
 -Node: Extension Versioning1045394
 -Ref: gawk-api-version1045831
 -Node: Extension API Informational Variables1047559
 -Node: Extension API Boilerplate1048623
 -Node: Changes from API V11052485
 -Node: Finding Extensions1053145
 -Node: Extension Example1053704
 -Node: Internal File Description1054502
 -Node: Internal File Ops1058582
 -Ref: Internal File Ops-Footnote-11069982
 -Node: Using Internal File Ops1070122
 -Ref: Using Internal File Ops-Footnote-11072505
 -Node: Extension Samples1072779
 -Node: Extension Sample File Functions1074308
 -Node: Extension Sample Fnmatch1081957
 -Node: Extension Sample Fork1083444
 -Node: Extension Sample Inplace1084662
 -Node: Extension Sample Ord1087872
 -Node: Extension Sample Readdir1088708
 -Ref: table-readdir-file-types1089597
 -Node: Extension Sample Revout1090402
 -Node: Extension Sample Rev2way1090991
 -Node: Extension Sample Read write array1091731
 -Node: Extension Sample Readfile1093673
 -Node: Extension Sample Time1094768
 -Node: Extension Sample API Tests1096116
 -Node: gawkextlib1096608
 -Node: Extension summary1099055
 -Node: Extension Exercises1102757
 -Node: Language History1104255
 -Node: V7/SVR3.11105911
 -Node: SVR41108063
 -Node: POSIX1109497
 -Node: BTL1110876
 -Node: POSIX/GNU1111605
 -Node: Feature History1117497
 -Node: Common Extensions1131867
 -Node: Ranges and Locales1133150
 -Ref: Ranges and Locales-Footnote-11137766
 -Ref: Ranges and Locales-Footnote-21137793
 -Ref: Ranges and Locales-Footnote-31138028
 -Node: Contributors1138249
 -Node: History summary1143809
 -Node: Installation1145189
 -Node: Gawk Distribution1146133
 -Node: Getting1146617
 -Node: Extracting1147578
 -Node: Distribution contents1149216
 -Node: Unix Installation1155558
 -Node: Quick Installation1156240
 -Node: Shell Startup Files1158654
 -Node: Additional Configuration Options1159743
 -Node: Configuration Philosophy1161732
 -Node: Non-Unix Installation1164101
 -Node: PC Installation1164561
 -Node: PC Binary Installation1165399
 -Node: PC Compiling1165834
 -Node: PC Using1166951
 -Node: Cygwin1169996
 -Node: MSYS1170766
 -Node: VMS Installation1171267
 -Node: VMS Compilation1172058
 -Ref: VMS Compilation-Footnote-11173287
 -Node: VMS Dynamic Extensions1173345
 -Node: VMS Installation Details1175030
 -Node: VMS Running1177283
 -Node: VMS GNV1181562
 -Node: VMS Old Gawk1182297
 -Node: Bugs1182768
 -Node: Bug address1183431
 -Node: Usenet1185828
 -Node: Maintainers1186605
 -Node: Other Versions1187981
 -Node: Installation summary1194565
 -Node: Notes1195600
 -Node: Compatibility Mode1196465
 -Node: Additions1197247
 -Node: Accessing The Source1198172
 -Node: Adding Code1199607
 -Node: New Ports1205825
 -Node: Derived Files1210313
 -Ref: Derived Files-Footnote-11215798
 -Ref: Derived Files-Footnote-21215833
 -Ref: Derived Files-Footnote-31216431
 -Node: Future Extensions1216545
 -Node: Implementation Limitations1217203
 -Node: Extension Design1218386
 -Node: Old Extension Problems1219540
 -Ref: Old Extension Problems-Footnote-11221058
 -Node: Extension New Mechanism Goals1221115
 -Ref: Extension New Mechanism Goals-Footnote-11224479
 -Node: Extension Other Design Decisions1224668
 -Node: Extension Future Growth1226781
 -Node: Old Extension Mechanism1227617
 -Node: Notes summary1229380
 -Node: Basic Concepts1230562
 -Node: Basic High Level1231243
 -Ref: figure-general-flow1231525
 -Ref: figure-process-flow1232210
 -Ref: Basic High Level-Footnote-11235511
 -Node: Basic Data Typing1235696
 -Node: Glossary1239024
 -Node: Copying1270971
 -Node: GNU Free Documentation License1308510
 -Node: Index1333628
++Ref: Numeric Functions-Footnote-1529184
++Ref: Numeric Functions-Footnote-2529541
++Ref: Numeric Functions-Footnote-3529589
++Node: String Functions529861
++Ref: String Functions-Footnote-1553519
++Ref: String Functions-Footnote-2553647
++Ref: String Functions-Footnote-3553895
++Node: Gory Details553982
++Ref: table-sub-escapes555773
++Ref: table-sub-proposed557292
++Ref: table-posix-sub558655
++Ref: table-gensub-escapes560196
++Ref: Gory Details-Footnote-1561019
++Node: I/O Functions561173
++Ref: table-system-return-values567755
++Ref: I/O Functions-Footnote-1569735
++Ref: I/O Functions-Footnote-2569883
++Node: Time Functions570003
++Ref: Time Functions-Footnote-1580670
++Ref: Time Functions-Footnote-2580738
++Ref: Time Functions-Footnote-3580896
++Ref: Time Functions-Footnote-4581007
++Ref: Time Functions-Footnote-5581119
++Ref: Time Functions-Footnote-6581346
++Node: Bitwise Functions581612
++Ref: table-bitwise-ops582206
++Ref: Bitwise Functions-Footnote-1588239
++Ref: Bitwise Functions-Footnote-2588412
++Node: Type Functions588603
++Node: I18N Functions591278
++Node: User-defined592929
++Node: Definition Syntax593734
++Ref: Definition Syntax-Footnote-1599421
++Node: Function Example599492
++Ref: Function Example-Footnote-1602414
++Node: Function Caveats602436
++Node: Calling A Function602954
++Node: Variable Scope603912
++Node: Pass By Value/Reference606906
++Node: Return Statement610405
++Node: Dynamic Typing613384
++Node: Indirect Calls614314
++Ref: Indirect Calls-Footnote-1624565
++Node: Functions Summary624693
++Node: Library Functions627398
++Ref: Library Functions-Footnote-1631005
++Ref: Library Functions-Footnote-2631148
++Node: Library Names631319
++Ref: Library Names-Footnote-1634779
++Ref: Library Names-Footnote-2635002
++Node: General Functions635088
++Node: Strtonum Function636191
++Node: Assert Function639213
++Node: Round Function642539
++Node: Cliff Random Function644080
++Node: Ordinal Functions645096
++Ref: Ordinal Functions-Footnote-1648159
++Ref: Ordinal Functions-Footnote-2648411
++Node: Join Function648621
++Ref: Join Function-Footnote-1650391
++Node: Getlocaltime Function650591
++Node: Readfile Function654333
++Node: Shell Quoting656305
++Node: Data File Management657706
++Node: Filetrans Function658338
++Node: Rewind Function662434
++Node: File Checking664340
++Ref: File Checking-Footnote-1665674
++Node: Empty Files665875
++Node: Ignoring Assigns667854
++Node: Getopt Function669404
++Ref: Getopt Function-Footnote-1680873
++Node: Passwd Functions681073
++Ref: Passwd Functions-Footnote-1689912
++Node: Group Functions690000
++Ref: Group Functions-Footnote-1697898
++Node: Walking Arrays698105
++Node: Library Functions Summary701113
++Node: Library Exercises702519
++Node: Sample Programs702984
++Node: Running Examples703754
++Node: Clones704482
++Node: Cut Program705706
++Node: Egrep Program715635
++Ref: Egrep Program-Footnote-1723147
++Node: Id Program723257
++Node: Split Program726937
++Ref: Split Program-Footnote-1730396
++Node: Tee Program730525
++Node: Uniq Program733315
++Node: Wc Program740741
++Ref: Wc Program-Footnote-1744996
++Node: Miscellaneous Programs745090
++Node: Dupword Program746303
++Node: Alarm Program748333
++Node: Translate Program753188
++Ref: Translate Program-Footnote-1757753
++Node: Labels Program758023
++Ref: Labels Program-Footnote-1761374
++Node: Word Sorting761458
++Node: History Sorting765530
++Node: Extract Program767365
++Node: Simple Sed774894
++Node: Igawk Program777968
++Ref: Igawk Program-Footnote-1792299
++Ref: Igawk Program-Footnote-2792501
++Ref: Igawk Program-Footnote-3792623
++Node: Anagram Program792738
++Node: Signature Program795800
++Node: Programs Summary797047
++Node: Programs Exercises798261
++Ref: Programs Exercises-Footnote-1802390
++Node: Advanced Features802481
++Node: Nondecimal Data804471
++Node: Array Sorting806062
++Node: Controlling Array Traversal806762
++Ref: Controlling Array Traversal-Footnote-1815129
++Node: Array Sorting Functions815247
++Ref: Array Sorting Functions-Footnote-1820338
++Node: Two-way I/O820534
++Ref: Two-way I/O-Footnote-1827085
++Ref: Two-way I/O-Footnote-2827272
++Node: TCP/IP Networking827354
++Node: Profiling830472
++Ref: Profiling-Footnote-1839144
++Node: Advanced Features Summary839467
++Node: Internationalization841311
++Node: I18N and L10N842791
++Node: Explaining gettext843478
++Ref: Explaining gettext-Footnote-1849370
++Ref: Explaining gettext-Footnote-2849555
++Node: Programmer i18n849720
++Ref: Programmer i18n-Footnote-1854669
++Node: Translator i18n854718
++Node: String Extraction855512
++Ref: String Extraction-Footnote-1856644
++Node: Printf Ordering856730
++Ref: Printf Ordering-Footnote-1859516
++Node: I18N Portability859580
++Ref: I18N Portability-Footnote-1862036
++Node: I18N Example862099
++Ref: I18N Example-Footnote-1864905
++Node: Gawk I18N864978
++Node: I18N Summary865623
++Node: Debugger866964
++Node: Debugging867986
++Node: Debugging Concepts868427
++Node: Debugging Terms870236
++Node: Awk Debugging872811
++Node: Sample Debugging Session873717
++Node: Debugger Invocation874251
++Node: Finding The Bug875637
++Node: List of Debugger Commands882115
++Node: Breakpoint Control883448
++Node: Debugger Execution Control887142
++Node: Viewing And Changing Data890504
++Node: Execution Stack893878
++Node: Debugger Info895515
++Node: Miscellaneous Debugger Commands899586
++Node: Readline Support904674
++Node: Limitations905570
++Node: Debugging Summary907679
++Node: Arbitrary Precision Arithmetic908958
++Node: Computer Arithmetic910443
++Ref: table-numeric-ranges914034
++Ref: Computer Arithmetic-Footnote-1914756
++Node: Math Definitions914813
++Ref: table-ieee-formats918127
++Ref: Math Definitions-Footnote-1918730
++Node: MPFR features918835
++Node: FP Math Caution920552
++Ref: FP Math Caution-Footnote-1921624
++Node: Inexactness of computations921993
++Node: Inexact representation922953
++Node: Comparing FP Values924313
++Node: Errors accumulate925395
++Node: Getting Accuracy926828
++Node: Try To Round929538
++Node: Setting precision930437
++Ref: table-predefined-precision-strings931134
++Node: Setting the rounding mode932964
++Ref: table-gawk-rounding-modes933338
++Ref: Setting the rounding mode-Footnote-1936746
++Node: Arbitrary Precision Integers936925
++Ref: Arbitrary Precision Integers-Footnote-1940100
++Node: Checking for MPFR940249
++Node: POSIX Floating Point Problems941546
++Ref: POSIX Floating Point Problems-Footnote-1945417
++Node: Floating point summary945455
++Node: Dynamic Extensions947645
++Node: Extension Intro949198
++Node: Plugin License950464
++Node: Extension Mechanism Outline951261
++Ref: figure-load-extension951700
++Ref: figure-register-new-function953265
++Ref: figure-call-new-function954357
++Node: Extension API Description956419
++Node: Extension API Functions Introduction958061
++Node: General Data Types963395
++Ref: General Data Types-Footnote-1970600
++Node: Memory Allocation Functions970899
++Ref: Memory Allocation Functions-Footnote-1973744
++Node: Constructor Functions973843
++Node: Registration Functions976842
++Node: Extension Functions977527
++Node: Exit Callback Functions982740
++Node: Extension Version String983990
++Node: Input Parsers984653
++Node: Output Wrappers997360
++Node: Two-way processors1001872
++Node: Printing Messages1004137
++Ref: Printing Messages-Footnote-11005308
++Node: Updating ERRNO1005461
++Node: Requesting Values1006200
++Ref: table-value-types-returned1006937
++Node: Accessing Parameters1007873
++Node: Symbol Table Access1009108
++Node: Symbol table by name1009620
++Node: Symbol table by cookie1011409
++Ref: Symbol table by cookie-Footnote-11015594
++Node: Cached values1015658
++Ref: Cached values-Footnote-11019194
++Node: Array Manipulation1019285
++Ref: Array Manipulation-Footnote-11020376
++Node: Array Data Types1020413
++Ref: Array Data Types-Footnote-11023071
++Node: Array Functions1023163
++Node: Flattening Arrays1027562
++Node: Creating Arrays1034503
++Node: Redirection API1039272
++Node: Extension API Variables1042114
++Node: Extension Versioning1042747
++Ref: gawk-api-version1043184
++Node: Extension API Informational Variables1044912
++Node: Extension API Boilerplate1045976
++Node: Changes from API V11049838
++Node: Finding Extensions1050498
++Node: Extension Example1051057
++Node: Internal File Description1051855
++Node: Internal File Ops1055935
++Ref: Internal File Ops-Footnote-11067335
++Node: Using Internal File Ops1067475
++Ref: Using Internal File Ops-Footnote-11069858
++Node: Extension Samples1070132
++Node: Extension Sample File Functions1071661
++Node: Extension Sample Fnmatch1079310
++Node: Extension Sample Fork1080797
++Node: Extension Sample Inplace1082015
++Node: Extension Sample Ord1085225
++Node: Extension Sample Readdir1086061
++Ref: table-readdir-file-types1086950
++Node: Extension Sample Revout1087755
++Node: Extension Sample Rev2way1088344
++Node: Extension Sample Read write array1089084
++Node: Extension Sample Readfile1091026
++Node: Extension Sample Time1092121
++Node: Extension Sample API Tests1093469
++Node: gawkextlib1093961
++Node: Extension summary1096408
++Node: Extension Exercises1100110
++Node: Language History1101608
++Node: V7/SVR3.11103264
++Node: SVR41105416
++Node: POSIX1106850
++Node: BTL1108229
++Node: POSIX/GNU1108958
++Node: Feature History1114736
++Node: Common Extensions1129047
++Node: Ranges and Locales1130330
++Ref: Ranges and Locales-Footnote-11134946
++Ref: Ranges and Locales-Footnote-21134973
++Ref: Ranges and Locales-Footnote-31135208
++Node: Contributors1135429
++Node: History summary1140989
++Node: Installation1142369
++Node: Gawk Distribution1143313
++Node: Getting1143797
++Node: Extracting1144758
++Node: Distribution contents1146396
++Node: Unix Installation1152738
++Node: Quick Installation1153420
++Node: Shell Startup Files1155834
++Node: Additional Configuration Options1156923
++Node: Configuration Philosophy1158912
++Node: Non-Unix Installation1161281
++Node: PC Installation1161741
++Node: PC Binary Installation1162579
++Node: PC Compiling1163014
++Node: PC Using1164131
++Node: Cygwin1167176
++Node: MSYS1167946
++Node: VMS Installation1168447
++Node: VMS Compilation1169238
++Ref: VMS Compilation-Footnote-11170467
++Node: VMS Dynamic Extensions1170525
++Node: VMS Installation Details1172210
++Node: VMS Running1174463
++Node: VMS GNV1178742
++Node: VMS Old Gawk1179477
++Node: Bugs1179948
++Node: Bug address1180611
++Node: Usenet1183008
++Node: Maintainers1183785
++Node: Other Versions1185161
++Node: Installation summary1191745
++Node: Notes1192780
++Node: Compatibility Mode1193645
++Node: Additions1194427
++Node: Accessing The Source1195352
++Node: Adding Code1196787
++Node: New Ports1203005
++Node: Derived Files1207493
++Ref: Derived Files-Footnote-11212978
++Ref: Derived Files-Footnote-21213013
++Ref: Derived Files-Footnote-31213611
++Node: Future Extensions1213725
++Node: Implementation Limitations1214383
++Node: Extension Design1215566
++Node: Old Extension Problems1216720
++Ref: Old Extension Problems-Footnote-11218238
++Node: Extension New Mechanism Goals1218295
++Ref: Extension New Mechanism Goals-Footnote-11221659
++Node: Extension Other Design Decisions1221848
++Node: Extension Future Growth1223961
++Node: Old Extension Mechanism1224797
++Node: Notes summary1226560
++Node: Basic Concepts1227742
++Node: Basic High Level1228423
++Ref: figure-general-flow1228705
++Ref: figure-process-flow1229390
++Ref: Basic High Level-Footnote-11232691
++Node: Basic Data Typing1232876
++Node: Glossary1236204
++Node: Copying1268151
++Node: GNU Free Documentation License1305690
++Node: Index1330808
  End Tag Table
diff --cc doc/gawk.texi
index 6dd00c5,e7d7552..87e46a5
--- a/doc/gawk.texi
+++ b/doc/gawk.texi
@@@ -32131,8 -32126,59 +32133,60 @@@ because it's quite easy to modify for t
  word sizes. See
  @end quotation
 address@hidden ifset
+ @node Checking for MPFR
+ @section How To Check If MPFR Is Available
+ @cindex MPFR, checking availability of
+ @cindex checking for MPFR
+ Occasionally, you might like to be able to check if @command{gawk}
+ was invoked with the @option{-M} option, enabling aribtrary-precision
+ arithmetic.  You can do so with the following function, contributed
+ by Andrew Schorr:
+ @example
+ @c file eg/lib/have_mpfr.awk
+ # adequate_math_precision --- return true if we have enough bits
+ @c endfile
+ @ignore
+ @c file eg/lib/have_mpfr.awk
+ #
+ # Andrew Schorr,, Public Domain
+ # May 2017
+ @c endfile
+ @end ignore
+ @c file eg/lib/have_mpfr.awk
+ function adequate_math_precision(n)
+ @{
+     return (1 != (1+(1/(2^(n-1)))))
+ @}
+ @c endfile
+ @end example
+ Here is code that invokes the function in order to check
+ if arbitrary-precision arithmetic is available:
+ @example
+ BEGIN @{
+     # How many bits of mantissa precision are required
+     # for this program to function properly?
+     fpbits = 123
+     # We hope that we were invoked with MPFR enabled. If so, the
+     # following statement should configure calculations to our desired
+     # precision.
+     PREC = fpbits
+     if (! adequate_math_precision(fpbits)) @{
+         print("Error: insufficient computation precision available.\n" \
+               "Try again with the -M argument?") > "/dev/stderr"
+         exit 1
+     @}
+ @}
+ @end example
  @node POSIX Floating Point Problems
  @section Standards Versus Existing Practice
diff --cc doc/
index b913ab5,f95360d..402caed
--- a/doc/
+++ b/doc/
@@@ -31145,8 -31140,59 +31147,60 @@@ because it's quite easy to modify for t
  word sizes. See
  @end quotation
 address@hidden ifset
+ @node Checking for MPFR
+ @section How To Check If MPFR Is Available
+ @cindex MPFR, checking availability of
+ @cindex checking for MPFR
+ Occasionally, you might like to be able to check if @command{gawk}
+ was invoked with the @option{-M} option, enabling aribtrary-precision
+ arithmetic.  You can do so with the following function, contributed
+ by Andrew Schorr:
+ @example
+ @c file eg/lib/have_mpfr.awk
+ # adequate_math_precision --- return true if we have enough bits
+ @c endfile
+ @ignore
+ @c file eg/lib/have_mpfr.awk
+ #
+ # Andrew Schorr,, Public Domain
+ # May 2017
+ @c endfile
+ @end ignore
+ @c file eg/lib/have_mpfr.awk
+ function adequate_math_precision(n)
+ @{
+     return (1 != (1+(1/(2^(n-1)))))
+ @}
+ @c endfile
+ @end example
+ Here is code that invokes the function in order to check
+ if arbitrary-precision arithmetic is available:
+ @example
+ BEGIN @{
+     # How many bits of mantissa precision are required
+     # for this program to function properly?
+     fpbits = 123
+     # We hope that we were invoked with MPFR enabled. If so, the
+     # following statement should configure calculations to our desired
+     # precision.
+     PREC = fpbits
+     if (! adequate_math_precision(fpbits)) @{
+         print("Error: insufficient computation precision available.\n" \
+               "Try again with the -M argument?") > "/dev/stderr"
+         exit 1
+     @}
+ @}
+ @end example
  @node POSIX Floating Point Problems
  @section Standards Versus Existing Practice


Summary of changes:
 awklib/eg/lib/have_mpfr.awk |    9 +
 doc/ChangeLog               |    5 +
 doc/               | 1198 ++++++++++++++++++++++---------------------
 doc/gawk.texi               |   58 ++-
 doc/             |   58 ++-
 5 files changed, 746 insertions(+), 582 deletions(-)
 create mode 100644 awklib/eg/lib/have_mpfr.awk


reply via email to

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