gawk-diffs
[Top][All Lists]
Advanced

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

[gawk-diffs] [SCM] gawk branch, gawk-5.0-stable, updated. gawk-4.1.0-374


From: Arnold Robbins
Subject: [gawk-diffs] [SCM] gawk branch, gawk-5.0-stable, updated. gawk-4.1.0-3748-g1ed524a
Date: Fri, 21 Jun 2019 04:52:22 -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, gawk-5.0-stable has been updated
       via  1ed524af04eac4e709f43cda8a564734d733ae12 (commit)
       via  794b65d03c7274845badba291160f261fa2abf9e (commit)
       via  5f6d079dd752b25f29a37a34939951431c8ee43b (commit)
       via  70fcfb0c2e0e0e8a97a885aaa7266f8abeafec0c (commit)
       via  6c914d2dc22598cf1735088237f6fc165e9958f6 (commit)
      from  69f851227e35c5aa31f89306bf37369b3acad483 (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 -----------------------------------------------------------------
http://git.sv.gnu.org/cgit/gawk.git/commit/?id=1ed524af04eac4e709f43cda8a564734d733ae12

commit 1ed524af04eac4e709f43cda8a564734d733ae12
Author: Arnold D. Robbins <address@hidden>
Date:   Fri Jun 21 11:52:03 2019 +0300

    Small doc fixes.

diff --git a/ChangeLog b/ChangeLog
index a48d4cf..44178ff 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -5,6 +5,7 @@
        possible issues with accessing uninitialized memory.
        Thanks to valgrind, as pointed out by Nadezhda Vyukova
        <address@hidden>.
+       * NEWS, README.git: Fix some typos.
 
 2019-06-19         Arnold D. Robbins     <address@hidden>
 
diff --git a/NEWS b/NEWS
index 9846fe1..631df17 100644
--- a/NEWS
+++ b/NEWS
@@ -22,7 +22,7 @@ Changes from 5.0.0 to 5.0.1
 
 6. Infrastructure upgrades: Bison 3.4.
 
-N. A number of bugs, some of them quite significant, have been fixed.
+7. A number of bugs, some of them quite significant, have been fixed.
    See the ChangeLog for details.
 
 Changes from 4.2.1 to 5.0.0
diff --git a/README.git b/README.git
index b590780..8edf5a8 100644
--- a/README.git
+++ b/README.git
@@ -1,10 +1,11 @@
+Thu Jun 20 11:01:04 IDT 2019
 Wed Aug 23 08:07:18 IDT 2017
 ============================
 
 If you are reading this, you have retrieved the gawk code base via
 Git from savannah.gnu.org.  This is good; gawk no longer uses CVS.
 
-On GNU and Unix systems, please execute use the following to build
+On GNU and Unix systems, please use the following to build
 gawk after doing `git clone' or `git pull':
 
        make distclean          # if not a new clone

http://git.sv.gnu.org/cgit/gawk.git/commit/?id=794b65d03c7274845badba291160f261fa2abf9e

commit 794b65d03c7274845badba291160f261fa2abf9e
Author: Arnold D. Robbins <address@hidden>
Date:   Fri Jun 21 11:51:13 2019 +0300

    Zero out buffers used to read source files.

diff --git a/ChangeLog b/ChangeLog
index f4b1c77..a48d4cf 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,6 +1,10 @@
 2019-06-21         Arnold D. Robbins     <address@hidden>
 
        * config.guess, config.sub: Updated from GNULIB.
+       * awkgram.y (get_src_buf): Set buffers to zero to avoid
+       possible issues with accessing uninitialized memory.
+       Thanks to valgrind, as pointed out by Nadezhda Vyukova
+       <address@hidden>.
 
 2019-06-19         Arnold D. Robbins     <address@hidden>
 
diff --git a/awkgram.c b/awkgram.c
index 68cee61..061d297 100644
--- a/awkgram.c
+++ b/awkgram.c
@@ -5682,6 +5682,7 @@ get_src_buf()
                sourcefile->bufsize = l;
                newfile = true;
                emalloc(sourcefile->buf, char *, sourcefile->bufsize, 
"get_src_buf");
+               memset(sourcefile->buf, '\0', sourcefile->bufsize);     // keep 
valgrind happy
                lexptr = lexptr_begin = lexeme = sourcefile->buf;
                savelen = 0;
                sourceline = 1;
diff --git a/awkgram.y b/awkgram.y
index 3cbcfd3..a940ac9 100644
--- a/awkgram.y
+++ b/awkgram.y
@@ -3185,6 +3185,7 @@ get_src_buf()
                sourcefile->bufsize = l;
                newfile = true;
                emalloc(sourcefile->buf, char *, sourcefile->bufsize, 
"get_src_buf");
+               memset(sourcefile->buf, '\0', sourcefile->bufsize);     // keep 
valgrind happy
                lexptr = lexptr_begin = lexeme = sourcefile->buf;
                savelen = 0;
                sourceline = 1;

http://git.sv.gnu.org/cgit/gawk.git/commit/?id=5f6d079dd752b25f29a37a34939951431c8ee43b

commit 5f6d079dd752b25f29a37a34939951431c8ee43b
Author: Arnold D. Robbins <address@hidden>
Date:   Fri Jun 21 11:44:21 2019 +0300

    Remove an obsolete exercise from the manual.

diff --git a/doc/ChangeLog b/doc/ChangeLog
index 7954eef..5ea91aa 100644
--- a/doc/ChangeLog
+++ b/doc/ChangeLog
@@ -1,5 +1,11 @@
 2019-06-21         Arnold D. Robbins     <address@hidden>
 
+       * gawktexi.in (Input Exercises): Remove exercise that is
+       no longer relevant. Thanks to Mark Krauze <address@hidden>
+       for pointing this out.
+
+2019-06-21         Arnold D. Robbins     <address@hidden>
+
        * texinfo.tex: Updated from GNULIB.
 
 2019-06-18         Arnold D. Robbins     <address@hidden>
diff --git a/doc/gawk.info b/doc/gawk.info
index 1e8bf19..e5a5270 100644
--- a/doc/gawk.info
+++ b/doc/gawk.info
@@ -6393,12 +6393,6 @@ File: gawk.info,  Node: Input Exercises,  Prev: Input 
Summary,  Up: Reading File
      associated with each ballot item, and print the total votes,
      including abstentions, for each item.
 
-  2. *note Plain Getline::, presented a program to remove C-style
-     comments ('/* ... */') from the input.  That program does not work
-     if one comment ends on one line and another one starts later on the
-     same line.  That can be fixed by making one simple change.  What is
-     it?
-
 
 File: gawk.info,  Node: Printing,  Next: Expressions,  Prev: Reading Files,  
Up: Top
 
@@ -37035,478 +37029,478 @@ Node: Retrying Input278719
 Node: Command-line directories279918
 Node: Input Summary280824
 Node: Input Exercises283996
-Node: Printing284724
-Node: Print286558
-Node: Print Examples288015
-Node: Output Separators290795
-Node: OFMT292812
-Node: Printf294168
-Node: Basic Printf294953
-Node: Control Letters296527
-Node: Format Modifiers301691
-Node: Printf Examples307706
-Node: Redirection310192
-Node: Special FD317033
-Ref: Special FD-Footnote-1320201
-Node: Special Files320275
-Node: Other Inherited Files320892
-Node: Special Network321893
-Node: Special Caveats322753
-Node: Close Files And Pipes323702
-Ref: table-close-pipe-return-values330609
-Ref: Close Files And Pipes-Footnote-1331422
-Ref: Close Files And Pipes-Footnote-2331570
-Node: Nonfatal331722
-Node: Output Summary334060
-Node: Output Exercises335282
-Node: Expressions335961
-Node: Values337149
-Node: Constants337827
-Node: Scalar Constants338518
-Ref: Scalar Constants-Footnote-1341042
-Node: Nondecimal-numbers341292
-Node: Regexp Constants344293
-Node: Using Constant Regexps344819
-Node: Standard Regexp Constants345441
-Node: Strong Regexp Constants348629
-Node: Variables351587
-Node: Using Variables352244
-Node: Assignment Options354154
-Node: Conversion356621
-Node: Strings And Numbers357145
-Ref: Strings And Numbers-Footnote-1360208
-Node: Locale influences conversions360317
-Ref: table-locale-affects363075
-Node: All Operators363693
-Node: Arithmetic Ops364322
-Node: Concatenation366828
-Ref: Concatenation-Footnote-1369675
-Node: Assignment Ops369782
-Ref: table-assign-ops374773
-Node: Increment Ops376086
-Node: Truth Values and Conditions379546
-Node: Truth Values380620
-Node: Typing and Comparison381668
-Node: Variable Typing382488
-Ref: Variable Typing-Footnote-1388951
-Ref: Variable Typing-Footnote-2389023
-Node: Comparison Operators389100
-Ref: table-relational-ops389519
-Node: POSIX String Comparison393014
-Ref: POSIX String Comparison-Footnote-1394709
-Ref: POSIX String Comparison-Footnote-2394848
-Node: Boolean Ops394932
-Ref: Boolean Ops-Footnote-1399414
-Node: Conditional Exp399506
-Node: Function Calls401242
-Node: Precedence405119
-Node: Locales408778
-Node: Expressions Summary410410
-Node: Patterns and Actions412983
-Node: Pattern Overview414103
-Node: Regexp Patterns415780
-Node: Expression Patterns416322
-Node: Ranges420103
-Node: BEGIN/END423211
-Node: Using BEGIN/END423972
-Ref: Using BEGIN/END-Footnote-1426708
-Node: I/O And BEGIN/END426814
-Node: BEGINFILE/ENDFILE429128
-Node: Empty432041
-Node: Using Shell Variables432358
-Node: Action Overview434632
-Node: Statements436957
-Node: If Statement438805
-Node: While Statement440300
-Node: Do Statement442328
-Node: For Statement443476
-Node: Switch Statement446647
-Node: Break Statement449033
-Node: Continue Statement451125
-Node: Next Statement452952
-Node: Nextfile Statement455335
-Node: Exit Statement457987
-Node: Built-in Variables460390
-Node: User-modified461523
-Node: Auto-set469290
-Ref: Auto-set-Footnote-1486097
-Ref: Auto-set-Footnote-2486303
-Node: ARGC and ARGV486359
-Node: Pattern Action Summary490572
-Node: Arrays493002
-Node: Array Basics494331
-Node: Array Intro495175
-Ref: figure-array-elements497150
-Ref: Array Intro-Footnote-1499854
-Node: Reference to Elements499982
-Node: Assigning Elements502446
-Node: Array Example502937
-Node: Scanning an Array504696
-Node: Controlling Scanning507718
-Ref: Controlling Scanning-Footnote-1513117
-Node: Numeric Array Subscripts513433
-Node: Uninitialized Subscripts515617
-Node: Delete517236
-Ref: Delete-Footnote-1519988
-Node: Multidimensional520045
-Node: Multiscanning523140
-Node: Arrays of Arrays524731
-Node: Arrays Summary529499
-Node: Functions531592
-Node: Built-in532630
-Node: Calling Built-in533711
-Node: Numeric Functions535707
-Ref: Numeric Functions-Footnote-1539735
-Ref: Numeric Functions-Footnote-2540383
-Ref: Numeric Functions-Footnote-3540431
-Node: String Functions540703
-Ref: String Functions-Footnote-1564561
-Ref: String Functions-Footnote-2564689
-Ref: String Functions-Footnote-3564937
-Node: Gory Details565024
-Ref: table-sub-escapes566815
-Ref: table-sub-proposed568334
-Ref: table-posix-sub569697
-Ref: table-gensub-escapes571238
-Ref: Gory Details-Footnote-1572061
-Node: I/O Functions572215
-Ref: table-system-return-values578683
-Ref: I/O Functions-Footnote-1580763
-Ref: I/O Functions-Footnote-2580911
-Node: Time Functions581031
-Ref: Time Functions-Footnote-1591702
-Ref: Time Functions-Footnote-2591770
-Ref: Time Functions-Footnote-3591928
-Ref: Time Functions-Footnote-4592039
-Ref: Time Functions-Footnote-5592151
-Ref: Time Functions-Footnote-6592378
-Node: Bitwise Functions592644
-Ref: table-bitwise-ops593238
-Ref: Bitwise Functions-Footnote-1599301
-Ref: Bitwise Functions-Footnote-2599474
-Node: Type Functions599665
-Node: I18N Functions602528
-Node: User-defined604179
-Node: Definition Syntax604991
-Ref: Definition Syntax-Footnote-1610678
-Node: Function Example610749
-Ref: Function Example-Footnote-1613671
-Node: Function Calling613693
-Node: Calling A Function614281
-Node: Variable Scope615239
-Node: Pass By Value/Reference618233
-Node: Function Caveats620877
-Ref: Function Caveats-Footnote-1622924
-Node: Return Statement623044
-Node: Dynamic Typing626023
-Node: Indirect Calls626953
-Ref: Indirect Calls-Footnote-1637205
-Node: Functions Summary637333
-Node: Library Functions640038
-Ref: Library Functions-Footnote-1643645
-Ref: Library Functions-Footnote-2643788
-Node: Library Names643959
-Ref: Library Names-Footnote-1647626
-Ref: Library Names-Footnote-2647849
-Node: General Functions647935
-Node: Strtonum Function649038
-Node: Assert Function652060
-Node: Round Function655386
-Node: Cliff Random Function656926
-Node: Ordinal Functions657942
-Ref: Ordinal Functions-Footnote-1661005
-Ref: Ordinal Functions-Footnote-2661257
-Node: Join Function661467
-Ref: Join Function-Footnote-1663237
-Node: Getlocaltime Function663437
-Node: Readfile Function667179
-Node: Shell Quoting669156
-Node: Data File Management670557
-Node: Filetrans Function671189
-Node: Rewind Function675285
-Node: File Checking677194
-Ref: File Checking-Footnote-1678528
-Node: Empty Files678729
-Node: Ignoring Assigns680708
-Node: Getopt Function682258
-Ref: Getopt Function-Footnote-1693727
-Node: Passwd Functions693927
-Ref: Passwd Functions-Footnote-1702766
-Node: Group Functions702854
-Ref: Group Functions-Footnote-1710752
-Node: Walking Arrays710959
-Node: Library Functions Summary713967
-Node: Library Exercises715373
-Node: Sample Programs715838
-Node: Running Examples716608
-Node: Clones717336
-Node: Cut Program718560
-Node: Egrep Program728489
-Ref: Egrep Program-Footnote-1736001
-Node: Id Program736111
-Node: Split Program739791
-Ref: Split Program-Footnote-1743249
-Node: Tee Program743378
-Node: Uniq Program746168
-Node: Wc Program753789
-Ref: Wc Program-Footnote-1758044
-Node: Miscellaneous Programs758138
-Node: Dupword Program759351
-Node: Alarm Program761381
-Node: Translate Program766236
-Ref: Translate Program-Footnote-1770801
-Node: Labels Program771071
-Ref: Labels Program-Footnote-1774422
-Node: Word Sorting774506
-Node: History Sorting778578
-Node: Extract Program780413
-Node: Simple Sed788467
-Node: Igawk Program791541
-Ref: Igawk Program-Footnote-1805872
-Ref: Igawk Program-Footnote-2806074
-Ref: Igawk Program-Footnote-3806196
-Node: Anagram Program806311
-Node: Signature Program809373
-Node: Programs Summary810620
-Node: Programs Exercises811834
-Ref: Programs Exercises-Footnote-1815963
-Node: Advanced Features816054
-Node: Nondecimal Data818044
-Node: Array Sorting819635
-Node: Controlling Array Traversal820335
-Ref: Controlling Array Traversal-Footnote-1828703
-Node: Array Sorting Functions828821
-Ref: Array Sorting Functions-Footnote-1833912
-Node: Two-way I/O834108
-Ref: Two-way I/O-Footnote-1841829
-Ref: Two-way I/O-Footnote-2842016
-Node: TCP/IP Networking842098
-Node: Profiling845216
-Node: Advanced Features Summary854231
-Node: Internationalization856075
-Node: I18N and L10N857555
-Node: Explaining gettext858242
-Ref: Explaining gettext-Footnote-1864134
-Ref: Explaining gettext-Footnote-2864319
-Node: Programmer i18n864484
-Ref: Programmer i18n-Footnote-1869433
-Node: Translator i18n869482
-Node: String Extraction870276
-Ref: String Extraction-Footnote-1871408
-Node: Printf Ordering871494
-Ref: Printf Ordering-Footnote-1874280
-Node: I18N Portability874344
-Ref: I18N Portability-Footnote-1876800
-Node: I18N Example876863
-Ref: I18N Example-Footnote-1880138
-Ref: I18N Example-Footnote-2880211
-Node: Gawk I18N880320
-Node: I18N Summary880969
-Node: Debugger882310
-Node: Debugging883310
-Node: Debugging Concepts883751
-Node: Debugging Terms885560
-Node: Awk Debugging888135
-Ref: Awk Debugging-Footnote-1889080
-Node: Sample Debugging Session889212
-Node: Debugger Invocation889746
-Node: Finding The Bug891132
-Node: List of Debugger Commands897606
-Node: Breakpoint Control898939
-Node: Debugger Execution Control902633
-Node: Viewing And Changing Data905995
-Node: Execution Stack909536
-Node: Debugger Info911173
-Node: Miscellaneous Debugger Commands915244
-Node: Readline Support920306
-Node: Limitations921202
-Node: Debugging Summary923756
-Node: Namespaces925035
-Node: Global Namespace926114
-Node: Qualified Names927512
-Node: Default Namespace928511
-Node: Changing The Namespace929252
-Node: Naming Rules930866
-Node: Internal Name Management932714
-Node: Namespace Example933756
-Node: Namespace And Features936318
-Node: Namespace Summary937753
-Node: Arbitrary Precision Arithmetic939230
-Node: Computer Arithmetic940717
-Ref: table-numeric-ranges944483
-Ref: table-floating-point-ranges944976
-Ref: Computer Arithmetic-Footnote-1945634
-Node: Math Definitions945691
-Ref: table-ieee-formats949007
-Ref: Math Definitions-Footnote-1949610
-Node: MPFR features949715
-Node: FP Math Caution951433
-Ref: FP Math Caution-Footnote-1952505
-Node: Inexactness of computations952874
-Node: Inexact representation953834
-Node: Comparing FP Values955194
-Node: Errors accumulate956435
-Node: Getting Accuracy957868
-Node: Try To Round960578
-Node: Setting precision961477
-Ref: table-predefined-precision-strings962174
-Node: Setting the rounding mode964004
-Ref: table-gawk-rounding-modes964378
-Ref: Setting the rounding mode-Footnote-1968309
-Node: Arbitrary Precision Integers968488
-Ref: Arbitrary Precision Integers-Footnote-1971663
-Node: Checking for MPFR971812
-Node: POSIX Floating Point Problems973286
-Ref: POSIX Floating Point Problems-Footnote-1977571
-Node: Floating point summary977609
-Node: Dynamic Extensions979799
-Node: Extension Intro981352
-Node: Plugin License982618
-Node: Extension Mechanism Outline983415
-Ref: figure-load-extension983854
-Ref: figure-register-new-function985419
-Ref: figure-call-new-function986511
-Node: Extension API Description988573
-Node: Extension API Functions Introduction990215
-Ref: table-api-std-headers992051
-Node: General Data Types995916
-Ref: General Data Types-Footnote-11004277
-Node: Memory Allocation Functions1004576
-Ref: Memory Allocation Functions-Footnote-11008786
-Node: Constructor Functions1008885
-Node: Registration Functions1012471
-Node: Extension Functions1013156
-Node: Exit Callback Functions1018478
-Node: Extension Version String1019728
-Node: Input Parsers1020391
-Node: Output Wrappers1033112
-Node: Two-way processors1037624
-Node: Printing Messages1039889
-Ref: Printing Messages-Footnote-11041060
-Node: Updating ERRNO1041213
-Node: Requesting Values1041952
-Ref: table-value-types-returned1042689
-Node: Accessing Parameters1043625
-Node: Symbol Table Access1044860
-Node: Symbol table by name1045372
-Ref: Symbol table by name-Footnote-11048396
-Node: Symbol table by cookie1048524
-Ref: Symbol table by cookie-Footnote-11052709
-Node: Cached values1052773
-Ref: Cached values-Footnote-11056309
-Node: Array Manipulation1056462
-Ref: Array Manipulation-Footnote-11057553
-Node: Array Data Types1057590
-Ref: Array Data Types-Footnote-11060248
-Node: Array Functions1060340
-Node: Flattening Arrays1064838
-Node: Creating Arrays1071814
-Node: Redirection API1076581
-Node: Extension API Variables1079414
-Node: Extension Versioning1080125
-Ref: gawk-api-version1080554
-Node: Extension GMP/MPFR Versioning1082285
-Node: Extension API Informational Variables1083913
-Node: Extension API Boilerplate1084986
-Node: Changes from API V11088960
-Node: Finding Extensions1090532
-Node: Extension Example1091091
-Node: Internal File Description1091889
-Node: Internal File Ops1095969
-Ref: Internal File Ops-Footnote-11107319
-Node: Using Internal File Ops1107459
-Ref: Using Internal File Ops-Footnote-11109842
-Node: Extension Samples1110116
-Node: Extension Sample File Functions1111645
-Node: Extension Sample Fnmatch1119294
-Node: Extension Sample Fork1120781
-Node: Extension Sample Inplace1121999
-Node: Extension Sample Ord1125303
-Node: Extension Sample Readdir1126139
-Ref: table-readdir-file-types1127028
-Node: Extension Sample Revout1127833
-Node: Extension Sample Rev2way1128422
-Node: Extension Sample Read write array1129162
-Node: Extension Sample Readfile1131104
-Node: Extension Sample Time1132199
-Node: Extension Sample API Tests1133547
-Node: gawkextlib1134039
-Node: Extension summary1136957
-Node: Extension Exercises1140659
-Node: Language History1141901
-Node: V7/SVR3.11143557
-Node: SVR41145709
-Node: POSIX1147143
-Node: BTL1148523
-Node: POSIX/GNU1149252
-Node: Feature History1155030
-Node: Common Extensions1171076
-Node: Ranges and Locales1172359
-Ref: Ranges and Locales-Footnote-11176975
-Ref: Ranges and Locales-Footnote-21177002
-Ref: Ranges and Locales-Footnote-31177237
-Node: Contributors1177458
-Node: History summary1183411
-Node: Installation1184791
-Node: Gawk Distribution1185735
-Node: Getting1186219
-Node: Extracting1187182
-Node: Distribution contents1188820
-Node: Unix Installation1195300
-Node: Quick Installation1195982
-Node: Shell Startup Files1198396
-Node: Additional Configuration Options1199485
-Node: Configuration Philosophy1201800
-Node: Non-Unix Installation1204169
-Node: PC Installation1204629
-Node: PC Binary Installation1205467
-Node: PC Compiling1205902
-Node: PC Using1207019
-Node: Cygwin1210572
-Node: MSYS1211671
-Node: VMS Installation1212172
-Node: VMS Compilation1212963
-Ref: VMS Compilation-Footnote-11214192
-Node: VMS Dynamic Extensions1214250
-Node: VMS Installation Details1215935
-Node: VMS Running1218188
-Node: VMS GNV1222467
-Node: VMS Old Gawk1223202
-Node: Bugs1223673
-Node: Bug address1224336
-Node: Usenet1227318
-Node: Maintainers1228322
-Node: Other Versions1229583
-Node: Installation summary1236671
-Node: Notes1237873
-Node: Compatibility Mode1238667
-Node: Additions1239449
-Node: Accessing The Source1240374
-Node: Adding Code1241811
-Node: New Ports1248030
-Node: Derived Files1252405
-Ref: Derived Files-Footnote-11258065
-Ref: Derived Files-Footnote-21258100
-Ref: Derived Files-Footnote-31258698
-Node: Future Extensions1258812
-Node: Implementation Limitations1259470
-Node: Extension Design1260653
-Node: Old Extension Problems1261797
-Ref: Old Extension Problems-Footnote-11263315
-Node: Extension New Mechanism Goals1263372
-Ref: Extension New Mechanism Goals-Footnote-11266736
-Node: Extension Other Design Decisions1266925
-Node: Extension Future Growth1269038
-Node: Notes summary1269874
-Node: Basic Concepts1271032
-Node: Basic High Level1271713
-Ref: figure-general-flow1271995
-Ref: figure-process-flow1272680
-Ref: Basic High Level-Footnote-11275981
-Node: Basic Data Typing1276166
-Node: Glossary1279494
-Node: Copying1311332
-Node: GNU Free Documentation License1348875
-Node: Index1373995
+Node: Printing284430
+Node: Print286264
+Node: Print Examples287721
+Node: Output Separators290501
+Node: OFMT292518
+Node: Printf293874
+Node: Basic Printf294659
+Node: Control Letters296233
+Node: Format Modifiers301397
+Node: Printf Examples307412
+Node: Redirection309898
+Node: Special FD316739
+Ref: Special FD-Footnote-1319907
+Node: Special Files319981
+Node: Other Inherited Files320598
+Node: Special Network321599
+Node: Special Caveats322459
+Node: Close Files And Pipes323408
+Ref: table-close-pipe-return-values330315
+Ref: Close Files And Pipes-Footnote-1331128
+Ref: Close Files And Pipes-Footnote-2331276
+Node: Nonfatal331428
+Node: Output Summary333766
+Node: Output Exercises334988
+Node: Expressions335667
+Node: Values336855
+Node: Constants337533
+Node: Scalar Constants338224
+Ref: Scalar Constants-Footnote-1340748
+Node: Nondecimal-numbers340998
+Node: Regexp Constants343999
+Node: Using Constant Regexps344525
+Node: Standard Regexp Constants345147
+Node: Strong Regexp Constants348335
+Node: Variables351293
+Node: Using Variables351950
+Node: Assignment Options353860
+Node: Conversion356327
+Node: Strings And Numbers356851
+Ref: Strings And Numbers-Footnote-1359914
+Node: Locale influences conversions360023
+Ref: table-locale-affects362781
+Node: All Operators363399
+Node: Arithmetic Ops364028
+Node: Concatenation366534
+Ref: Concatenation-Footnote-1369381
+Node: Assignment Ops369488
+Ref: table-assign-ops374479
+Node: Increment Ops375792
+Node: Truth Values and Conditions379252
+Node: Truth Values380326
+Node: Typing and Comparison381374
+Node: Variable Typing382194
+Ref: Variable Typing-Footnote-1388657
+Ref: Variable Typing-Footnote-2388729
+Node: Comparison Operators388806
+Ref: table-relational-ops389225
+Node: POSIX String Comparison392720
+Ref: POSIX String Comparison-Footnote-1394415
+Ref: POSIX String Comparison-Footnote-2394554
+Node: Boolean Ops394638
+Ref: Boolean Ops-Footnote-1399120
+Node: Conditional Exp399212
+Node: Function Calls400948
+Node: Precedence404825
+Node: Locales408484
+Node: Expressions Summary410116
+Node: Patterns and Actions412689
+Node: Pattern Overview413809
+Node: Regexp Patterns415486
+Node: Expression Patterns416028
+Node: Ranges419809
+Node: BEGIN/END422917
+Node: Using BEGIN/END423678
+Ref: Using BEGIN/END-Footnote-1426414
+Node: I/O And BEGIN/END426520
+Node: BEGINFILE/ENDFILE428834
+Node: Empty431747
+Node: Using Shell Variables432064
+Node: Action Overview434338
+Node: Statements436663
+Node: If Statement438511
+Node: While Statement440006
+Node: Do Statement442034
+Node: For Statement443182
+Node: Switch Statement446353
+Node: Break Statement448739
+Node: Continue Statement450831
+Node: Next Statement452658
+Node: Nextfile Statement455041
+Node: Exit Statement457693
+Node: Built-in Variables460096
+Node: User-modified461229
+Node: Auto-set468996
+Ref: Auto-set-Footnote-1485803
+Ref: Auto-set-Footnote-2486009
+Node: ARGC and ARGV486065
+Node: Pattern Action Summary490278
+Node: Arrays492708
+Node: Array Basics494037
+Node: Array Intro494881
+Ref: figure-array-elements496856
+Ref: Array Intro-Footnote-1499560
+Node: Reference to Elements499688
+Node: Assigning Elements502152
+Node: Array Example502643
+Node: Scanning an Array504402
+Node: Controlling Scanning507424
+Ref: Controlling Scanning-Footnote-1512823
+Node: Numeric Array Subscripts513139
+Node: Uninitialized Subscripts515323
+Node: Delete516942
+Ref: Delete-Footnote-1519694
+Node: Multidimensional519751
+Node: Multiscanning522846
+Node: Arrays of Arrays524437
+Node: Arrays Summary529205
+Node: Functions531298
+Node: Built-in532336
+Node: Calling Built-in533417
+Node: Numeric Functions535413
+Ref: Numeric Functions-Footnote-1539441
+Ref: Numeric Functions-Footnote-2540089
+Ref: Numeric Functions-Footnote-3540137
+Node: String Functions540409
+Ref: String Functions-Footnote-1564267
+Ref: String Functions-Footnote-2564395
+Ref: String Functions-Footnote-3564643
+Node: Gory Details564730
+Ref: table-sub-escapes566521
+Ref: table-sub-proposed568040
+Ref: table-posix-sub569403
+Ref: table-gensub-escapes570944
+Ref: Gory Details-Footnote-1571767
+Node: I/O Functions571921
+Ref: table-system-return-values578389
+Ref: I/O Functions-Footnote-1580469
+Ref: I/O Functions-Footnote-2580617
+Node: Time Functions580737
+Ref: Time Functions-Footnote-1591408
+Ref: Time Functions-Footnote-2591476
+Ref: Time Functions-Footnote-3591634
+Ref: Time Functions-Footnote-4591745
+Ref: Time Functions-Footnote-5591857
+Ref: Time Functions-Footnote-6592084
+Node: Bitwise Functions592350
+Ref: table-bitwise-ops592944
+Ref: Bitwise Functions-Footnote-1599007
+Ref: Bitwise Functions-Footnote-2599180
+Node: Type Functions599371
+Node: I18N Functions602234
+Node: User-defined603885
+Node: Definition Syntax604697
+Ref: Definition Syntax-Footnote-1610384
+Node: Function Example610455
+Ref: Function Example-Footnote-1613377
+Node: Function Calling613399
+Node: Calling A Function613987
+Node: Variable Scope614945
+Node: Pass By Value/Reference617939
+Node: Function Caveats620583
+Ref: Function Caveats-Footnote-1622630
+Node: Return Statement622750
+Node: Dynamic Typing625729
+Node: Indirect Calls626659
+Ref: Indirect Calls-Footnote-1636911
+Node: Functions Summary637039
+Node: Library Functions639744
+Ref: Library Functions-Footnote-1643351
+Ref: Library Functions-Footnote-2643494
+Node: Library Names643665
+Ref: Library Names-Footnote-1647332
+Ref: Library Names-Footnote-2647555
+Node: General Functions647641
+Node: Strtonum Function648744
+Node: Assert Function651766
+Node: Round Function655092
+Node: Cliff Random Function656632
+Node: Ordinal Functions657648
+Ref: Ordinal Functions-Footnote-1660711
+Ref: Ordinal Functions-Footnote-2660963
+Node: Join Function661173
+Ref: Join Function-Footnote-1662943
+Node: Getlocaltime Function663143
+Node: Readfile Function666885
+Node: Shell Quoting668862
+Node: Data File Management670263
+Node: Filetrans Function670895
+Node: Rewind Function674991
+Node: File Checking676900
+Ref: File Checking-Footnote-1678234
+Node: Empty Files678435
+Node: Ignoring Assigns680414
+Node: Getopt Function681964
+Ref: Getopt Function-Footnote-1693433
+Node: Passwd Functions693633
+Ref: Passwd Functions-Footnote-1702472
+Node: Group Functions702560
+Ref: Group Functions-Footnote-1710458
+Node: Walking Arrays710665
+Node: Library Functions Summary713673
+Node: Library Exercises715079
+Node: Sample Programs715544
+Node: Running Examples716314
+Node: Clones717042
+Node: Cut Program718266
+Node: Egrep Program728195
+Ref: Egrep Program-Footnote-1735707
+Node: Id Program735817
+Node: Split Program739497
+Ref: Split Program-Footnote-1742955
+Node: Tee Program743084
+Node: Uniq Program745874
+Node: Wc Program753495
+Ref: Wc Program-Footnote-1757750
+Node: Miscellaneous Programs757844
+Node: Dupword Program759057
+Node: Alarm Program761087
+Node: Translate Program765942
+Ref: Translate Program-Footnote-1770507
+Node: Labels Program770777
+Ref: Labels Program-Footnote-1774128
+Node: Word Sorting774212
+Node: History Sorting778284
+Node: Extract Program780119
+Node: Simple Sed788173
+Node: Igawk Program791247
+Ref: Igawk Program-Footnote-1805578
+Ref: Igawk Program-Footnote-2805780
+Ref: Igawk Program-Footnote-3805902
+Node: Anagram Program806017
+Node: Signature Program809079
+Node: Programs Summary810326
+Node: Programs Exercises811540
+Ref: Programs Exercises-Footnote-1815669
+Node: Advanced Features815760
+Node: Nondecimal Data817750
+Node: Array Sorting819341
+Node: Controlling Array Traversal820041
+Ref: Controlling Array Traversal-Footnote-1828409
+Node: Array Sorting Functions828527
+Ref: Array Sorting Functions-Footnote-1833618
+Node: Two-way I/O833814
+Ref: Two-way I/O-Footnote-1841535
+Ref: Two-way I/O-Footnote-2841722
+Node: TCP/IP Networking841804
+Node: Profiling844922
+Node: Advanced Features Summary853937
+Node: Internationalization855781
+Node: I18N and L10N857261
+Node: Explaining gettext857948
+Ref: Explaining gettext-Footnote-1863840
+Ref: Explaining gettext-Footnote-2864025
+Node: Programmer i18n864190
+Ref: Programmer i18n-Footnote-1869139
+Node: Translator i18n869188
+Node: String Extraction869982
+Ref: String Extraction-Footnote-1871114
+Node: Printf Ordering871200
+Ref: Printf Ordering-Footnote-1873986
+Node: I18N Portability874050
+Ref: I18N Portability-Footnote-1876506
+Node: I18N Example876569
+Ref: I18N Example-Footnote-1879844
+Ref: I18N Example-Footnote-2879917
+Node: Gawk I18N880026
+Node: I18N Summary880675
+Node: Debugger882016
+Node: Debugging883016
+Node: Debugging Concepts883457
+Node: Debugging Terms885266
+Node: Awk Debugging887841
+Ref: Awk Debugging-Footnote-1888786
+Node: Sample Debugging Session888918
+Node: Debugger Invocation889452
+Node: Finding The Bug890838
+Node: List of Debugger Commands897312
+Node: Breakpoint Control898645
+Node: Debugger Execution Control902339
+Node: Viewing And Changing Data905701
+Node: Execution Stack909242
+Node: Debugger Info910879
+Node: Miscellaneous Debugger Commands914950
+Node: Readline Support920012
+Node: Limitations920908
+Node: Debugging Summary923462
+Node: Namespaces924741
+Node: Global Namespace925820
+Node: Qualified Names927218
+Node: Default Namespace928217
+Node: Changing The Namespace928958
+Node: Naming Rules930572
+Node: Internal Name Management932420
+Node: Namespace Example933462
+Node: Namespace And Features936024
+Node: Namespace Summary937459
+Node: Arbitrary Precision Arithmetic938936
+Node: Computer Arithmetic940423
+Ref: table-numeric-ranges944189
+Ref: table-floating-point-ranges944682
+Ref: Computer Arithmetic-Footnote-1945340
+Node: Math Definitions945397
+Ref: table-ieee-formats948713
+Ref: Math Definitions-Footnote-1949316
+Node: MPFR features949421
+Node: FP Math Caution951139
+Ref: FP Math Caution-Footnote-1952211
+Node: Inexactness of computations952580
+Node: Inexact representation953540
+Node: Comparing FP Values954900
+Node: Errors accumulate956141
+Node: Getting Accuracy957574
+Node: Try To Round960284
+Node: Setting precision961183
+Ref: table-predefined-precision-strings961880
+Node: Setting the rounding mode963710
+Ref: table-gawk-rounding-modes964084
+Ref: Setting the rounding mode-Footnote-1968015
+Node: Arbitrary Precision Integers968194
+Ref: Arbitrary Precision Integers-Footnote-1971369
+Node: Checking for MPFR971518
+Node: POSIX Floating Point Problems972992
+Ref: POSIX Floating Point Problems-Footnote-1977277
+Node: Floating point summary977315
+Node: Dynamic Extensions979505
+Node: Extension Intro981058
+Node: Plugin License982324
+Node: Extension Mechanism Outline983121
+Ref: figure-load-extension983560
+Ref: figure-register-new-function985125
+Ref: figure-call-new-function986217
+Node: Extension API Description988279
+Node: Extension API Functions Introduction989921
+Ref: table-api-std-headers991757
+Node: General Data Types995622
+Ref: General Data Types-Footnote-11003983
+Node: Memory Allocation Functions1004282
+Ref: Memory Allocation Functions-Footnote-11008492
+Node: Constructor Functions1008591
+Node: Registration Functions1012177
+Node: Extension Functions1012862
+Node: Exit Callback Functions1018184
+Node: Extension Version String1019434
+Node: Input Parsers1020097
+Node: Output Wrappers1032818
+Node: Two-way processors1037330
+Node: Printing Messages1039595
+Ref: Printing Messages-Footnote-11040766
+Node: Updating ERRNO1040919
+Node: Requesting Values1041658
+Ref: table-value-types-returned1042395
+Node: Accessing Parameters1043331
+Node: Symbol Table Access1044566
+Node: Symbol table by name1045078
+Ref: Symbol table by name-Footnote-11048102
+Node: Symbol table by cookie1048230
+Ref: Symbol table by cookie-Footnote-11052415
+Node: Cached values1052479
+Ref: Cached values-Footnote-11056015
+Node: Array Manipulation1056168
+Ref: Array Manipulation-Footnote-11057259
+Node: Array Data Types1057296
+Ref: Array Data Types-Footnote-11059954
+Node: Array Functions1060046
+Node: Flattening Arrays1064544
+Node: Creating Arrays1071520
+Node: Redirection API1076287
+Node: Extension API Variables1079120
+Node: Extension Versioning1079831
+Ref: gawk-api-version1080260
+Node: Extension GMP/MPFR Versioning1081991
+Node: Extension API Informational Variables1083619
+Node: Extension API Boilerplate1084692
+Node: Changes from API V11088666
+Node: Finding Extensions1090238
+Node: Extension Example1090797
+Node: Internal File Description1091595
+Node: Internal File Ops1095675
+Ref: Internal File Ops-Footnote-11107025
+Node: Using Internal File Ops1107165
+Ref: Using Internal File Ops-Footnote-11109548
+Node: Extension Samples1109822
+Node: Extension Sample File Functions1111351
+Node: Extension Sample Fnmatch1119000
+Node: Extension Sample Fork1120487
+Node: Extension Sample Inplace1121705
+Node: Extension Sample Ord1125009
+Node: Extension Sample Readdir1125845
+Ref: table-readdir-file-types1126734
+Node: Extension Sample Revout1127539
+Node: Extension Sample Rev2way1128128
+Node: Extension Sample Read write array1128868
+Node: Extension Sample Readfile1130810
+Node: Extension Sample Time1131905
+Node: Extension Sample API Tests1133253
+Node: gawkextlib1133745
+Node: Extension summary1136663
+Node: Extension Exercises1140365
+Node: Language History1141607
+Node: V7/SVR3.11143263
+Node: SVR41145415
+Node: POSIX1146849
+Node: BTL1148229
+Node: POSIX/GNU1148958
+Node: Feature History1154736
+Node: Common Extensions1170782
+Node: Ranges and Locales1172065
+Ref: Ranges and Locales-Footnote-11176681
+Ref: Ranges and Locales-Footnote-21176708
+Ref: Ranges and Locales-Footnote-31176943
+Node: Contributors1177164
+Node: History summary1183117
+Node: Installation1184497
+Node: Gawk Distribution1185441
+Node: Getting1185925
+Node: Extracting1186888
+Node: Distribution contents1188526
+Node: Unix Installation1195006
+Node: Quick Installation1195688
+Node: Shell Startup Files1198102
+Node: Additional Configuration Options1199191
+Node: Configuration Philosophy1201506
+Node: Non-Unix Installation1203875
+Node: PC Installation1204335
+Node: PC Binary Installation1205173
+Node: PC Compiling1205608
+Node: PC Using1206725
+Node: Cygwin1210278
+Node: MSYS1211377
+Node: VMS Installation1211878
+Node: VMS Compilation1212669
+Ref: VMS Compilation-Footnote-11213898
+Node: VMS Dynamic Extensions1213956
+Node: VMS Installation Details1215641
+Node: VMS Running1217894
+Node: VMS GNV1222173
+Node: VMS Old Gawk1222908
+Node: Bugs1223379
+Node: Bug address1224042
+Node: Usenet1227024
+Node: Maintainers1228028
+Node: Other Versions1229289
+Node: Installation summary1236377
+Node: Notes1237579
+Node: Compatibility Mode1238373
+Node: Additions1239155
+Node: Accessing The Source1240080
+Node: Adding Code1241517
+Node: New Ports1247736
+Node: Derived Files1252111
+Ref: Derived Files-Footnote-11257771
+Ref: Derived Files-Footnote-21257806
+Ref: Derived Files-Footnote-31258404
+Node: Future Extensions1258518
+Node: Implementation Limitations1259176
+Node: Extension Design1260359
+Node: Old Extension Problems1261503
+Ref: Old Extension Problems-Footnote-11263021
+Node: Extension New Mechanism Goals1263078
+Ref: Extension New Mechanism Goals-Footnote-11266442
+Node: Extension Other Design Decisions1266631
+Node: Extension Future Growth1268744
+Node: Notes summary1269580
+Node: Basic Concepts1270738
+Node: Basic High Level1271419
+Ref: figure-general-flow1271701
+Ref: figure-process-flow1272386
+Ref: Basic High Level-Footnote-11275687
+Node: Basic Data Typing1275872
+Node: Glossary1279200
+Node: Copying1311038
+Node: GNU Free Documentation License1348581
+Node: Index1373701
 
 End Tag Table
diff --git a/doc/gawk.texi b/doc/gawk.texi
index d3f7d8d..25fb348 100644
--- a/doc/gawk.texi
+++ b/doc/gawk.texi
@@ -9306,13 +9306,6 @@ one voter's votes.  Come up with a way to define which 
columns are
 associated with each ballot item, and print the total votes,
 including abstentions, for each item.
 
-@item
-@ref{Plain Getline}, presented a program to remove C-style
-comments (@samp{/* @dots{} */}) from the input.  That program
-does not work if one comment ends on one line and another one
-starts later on the same line.
-That can be fixed by making one simple change. What is it?
-
 @end enumerate
 @c EXCLUDE END
 
diff --git a/doc/gawktexi.in b/doc/gawktexi.in
index 398e35d..c60b023 100644
--- a/doc/gawktexi.in
+++ b/doc/gawktexi.in
@@ -8904,13 +8904,6 @@ one voter's votes.  Come up with a way to define which 
columns are
 associated with each ballot item, and print the total votes,
 including abstentions, for each item.
 
-@item
-@ref{Plain Getline}, presented a program to remove C-style
-comments (@samp{/* @dots{} */}) from the input.  That program
-does not work if one comment ends on one line and another one
-starts later on the same line.
-That can be fixed by making one simple change. What is it?
-
 @end enumerate
 @c EXCLUDE END
 

http://git.sv.gnu.org/cgit/gawk.git/commit/?id=70fcfb0c2e0e0e8a97a885aaa7266f8abeafec0c

commit 70fcfb0c2e0e0e8a97a885aaa7266f8abeafec0c
Author: Arnold D. Robbins <address@hidden>
Date:   Fri Jun 21 11:44:08 2019 +0300

    Fix a typo in ChangeLog.

diff --git a/ChangeLog b/ChangeLog
index 00eb822..f4b1c77 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -92,7 +92,7 @@
 
        * awk.h (errcount): Declare.
        * awkgram.y (errcount): No longer static.
-       * command.y (dbg_errcount): Renamed from errcount.j
+       * command.y (dbg_errcount): Renamed from errcount.
        * main.c (catchsig, catchsegv): If errcount > 0, just exit,
        don't abort.  
 

http://git.sv.gnu.org/cgit/gawk.git/commit/?id=6c914d2dc22598cf1735088237f6fc165e9958f6

commit 6c914d2dc22598cf1735088237f6fc165e9958f6
Author: Arnold D. Robbins <address@hidden>
Date:   Fri Jun 21 11:38:50 2019 +0300

    Update build aux files.

diff --git a/ChangeLog b/ChangeLog
index 6a8afe0..00eb822 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,7 @@
+2019-06-21         Arnold D. Robbins     <address@hidden>
+
+       * config.guess, config.sub: Updated from GNULIB.
+
 2019-06-19         Arnold D. Robbins     <address@hidden>
 
        * re.c (make_regexp): If do_posix, have {} in ok_to_escape.
diff --git a/config.guess b/config.guess
index 79d1317..41b8b85 100755
--- a/config.guess
+++ b/config.guess
@@ -2,7 +2,7 @@
 # Attempt to guess a canonical system name.
 #   Copyright 1992-2019 Free Software Foundation, Inc.
 
-timestamp='2019-03-04'
+timestamp='2019-06-10'
 
 # This file is free software; you can redistribute it and/or modify it
 # under the terms of the GNU General Public License as published by
@@ -262,6 +262,9 @@ case 
"$UNAME_MACHINE:$UNAME_SYSTEM:$UNAME_RELEASE:$UNAME_VERSION" in
     *:SolidBSD:*:*)
        echo "$UNAME_MACHINE"-unknown-solidbsd"$UNAME_RELEASE"
        exit ;;
+    *:OS108:*:*)
+       echo "$UNAME_MACHINE"-unknown-os108_"$UNAME_RELEASE"
+       exit ;;
     macppc:MirBSD:*:*)
        echo powerpc-unknown-mirbsd"$UNAME_RELEASE"
        exit ;;
@@ -1325,38 +1328,39 @@ EOF
        echo "$UNAME_MACHINE"-apple-rhapsody"$UNAME_RELEASE"
        exit ;;
     *:Darwin:*:*)
-       UNAME_PROCESSOR=`uname -p` || UNAME_PROCESSOR=unknown
-       set_cc_for_build
-       if test "$UNAME_PROCESSOR" = unknown ; then
-           UNAME_PROCESSOR=powerpc
+       UNAME_PROCESSOR=`uname -p`
+       case $UNAME_PROCESSOR in
+           unknown) UNAME_PROCESSOR=powerpc ;;
+       esac
+       if command -v xcode-select > /dev/null 2> /dev/null && \
+               ! xcode-select --print-path > /dev/null 2> /dev/null ; then
+           # Avoid executing cc if there is no toolchain installed as
+           # cc will be a stub that puts up a graphical alert
+           # prompting the user to install developer tools.
+           CC_FOR_BUILD=no_compiler_found
+       else
+           set_cc_for_build
        fi
-       if test "`echo "$UNAME_RELEASE" | sed -e 's/\..*//'`" -le 10 ; then
-           if [ "$CC_FOR_BUILD" != no_compiler_found ]; then
-               if (echo '#ifdef __LP64__'; echo IS_64BIT_ARCH; echo '#endif') 
| \
-                      (CCOPTS="" $CC_FOR_BUILD -E - 2>/dev/null) | \
-                      grep IS_64BIT_ARCH >/dev/null
-               then
-                   case $UNAME_PROCESSOR in
-                       i386) UNAME_PROCESSOR=x86_64 ;;
-                       powerpc) UNAME_PROCESSOR=powerpc64 ;;
-                   esac
-               fi
-               # On 10.4-10.6 one might compile for PowerPC via gcc -arch ppc
-               if (echo '#ifdef __POWERPC__'; echo IS_PPC; echo '#endif') | \
-                      (CCOPTS="" $CC_FOR_BUILD -E - 2>/dev/null) | \
-                      grep IS_PPC >/dev/null
-               then
-                   UNAME_PROCESSOR=powerpc
-               fi
+       if [ "$CC_FOR_BUILD" != no_compiler_found ]; then
+           if (echo '#ifdef __LP64__'; echo IS_64BIT_ARCH; echo '#endif') | \
+                  (CCOPTS="" $CC_FOR_BUILD -E - 2>/dev/null) | \
+                  grep IS_64BIT_ARCH >/dev/null
+           then
+               case $UNAME_PROCESSOR in
+                   i386) UNAME_PROCESSOR=x86_64 ;;
+                   powerpc) UNAME_PROCESSOR=powerpc64 ;;
+               esac
+           fi
+           # On 10.4-10.6 one might compile for PowerPC via gcc -arch ppc
+           if (echo '#ifdef __POWERPC__'; echo IS_PPC; echo '#endif') | \
+                  (CCOPTS="" $CC_FOR_BUILD -E - 2>/dev/null) | \
+                  grep IS_PPC >/dev/null
+           then
+               UNAME_PROCESSOR=powerpc
            fi
        elif test "$UNAME_PROCESSOR" = i386 ; then
-           # Avoid executing cc on OS X 10.9, as it ships with a stub
-           # that puts up a graphical alert prompting to install
-           # developer tools.  Any system running Mac OS X 10.7 or
-           # later (Darwin 11 and later) is required to have a 64-bit
-           # processor. This is not true of the ARM version of Darwin
-           # that Apple uses in portable devices.
-           UNAME_PROCESSOR=x86_64
+           # uname -m returns i386 or x86_64
+           UNAME_PROCESSOR=$UNAME_MACHINE
        fi
        echo "$UNAME_PROCESSOR"-apple-darwin"$UNAME_RELEASE"
        exit ;;
@@ -1468,6 +1472,14 @@ cat > "$dummy.c" <<EOF
 #include <sys/types.h>
 #include <sys/utsname.h>
 #endif
+#if defined(ultrix) || defined(_ultrix) || defined(__ultrix) || 
defined(__ultrix__)
+#if defined (vax) || defined (__vax) || defined (__vax__) || defined(mips) || 
defined(__mips) || defined(__mips__) || defined(MIPS) || defined(__MIPS__)
+#include <signal.h>
+#if defined(_SIZE_T_) || defined(SIGLOST)
+#include <sys/utsname.h>
+#endif
+#endif
+#endif
 main ()
 {
 #if defined (sony)
@@ -1555,18 +1567,23 @@ main ()
   printf ("vax-dec-bsd\n"); exit (0);
 #endif
 #else
+#if defined(_SIZE_T_) || defined(SIGLOST)
+  struct utsname un;
+  uname (&un);
+  printf ("vax-dec-ultrix%s\n", un.release); exit (0);
+#else
   printf ("vax-dec-ultrix\n"); exit (0);
 #endif
 #endif
+#endif
 #if defined(ultrix) || defined(_ultrix) || defined(__ultrix) || 
defined(__ultrix__)
 #if defined(mips) || defined(__mips) || defined(__mips__) || defined(MIPS) || 
defined(__MIPS__)
-#include <signal.h>
-#if defined(_SIZE_T_) /* >= ULTRIX4 */
-  printf ("mips-dec-ultrix4\n"); exit (0);
+#if defined(_SIZE_T_) || defined(SIGLOST)
+  struct utsname *un;
+  uname (&un);
+  printf ("mips-dec-ultrix%s\n", un.release); exit (0);
 #else
-#if defined(ULTRIX3) || defined(ultrix3) || defined(SIGLOST)
-  printf ("mips-dec-ultrix3\n"); exit (0);
-#endif
+  printf ("mips-dec-ultrix\n"); exit (0);
 #endif
 #endif
 #endif
diff --git a/config.sub b/config.sub
index f53af5a..5b158ac 100755
--- a/config.sub
+++ b/config.sub
@@ -2,7 +2,7 @@
 # Configuration validation subroutine script.
 #   Copyright 1992-2019 Free Software Foundation, Inc.
 
-timestamp='2019-01-05'
+timestamp='2019-05-23'
 
 # This file is free software; you can redistribute it and/or modify it
 # under the terms of the GNU General Public License as published by
@@ -1172,7 +1172,7 @@ case $cpu-$vendor in
                        | asmjs \
                        | ba \
                        | be32 | be64 \
-                       | bfin | bs2000 \
+                       | bfin | bpf | bs2000 \
                        | c[123]* | c30 | [cjt]90 | c4x \
                        | c8051 | clipper | craynv | csky | cydra \
                        | d10v | d30v | dlx | dsp16xx \
diff --git a/doc/ChangeLog b/doc/ChangeLog
index 364854d..7954eef 100644
--- a/doc/ChangeLog
+++ b/doc/ChangeLog
@@ -1,3 +1,7 @@
+2019-06-21         Arnold D. Robbins     <address@hidden>
+
+       * texinfo.tex: Updated from GNULIB.
+
 2019-06-18         Arnold D. Robbins     <address@hidden>
 
        * 5.0.1: Release tar ball made.
diff --git a/doc/texinfo.tex b/doc/texinfo.tex
index 192284c..ed3f0ee 100644
--- a/doc/texinfo.tex
+++ b/doc/texinfo.tex
@@ -3,8 +3,7 @@
 % Load plain if necessary, i.e., if running under initex.
 \expandafter\ifx\csname fmtname\endcsname\relax\input plain\fi
 %
-\def\texinfoversion{2019-03-03.15}
-
+\def\texinfoversion{2019-06-01.23}
 %
 % Copyright 1985, 1986, 1988, 1990-2019 Free Software Foundation, Inc.
 %
@@ -387,14 +386,8 @@
     % take effect in \write's, yet the group defined by the \vbox ends
     % before the \shipout runs.
     %
-    \indexdummies         % don't expand commands in the output.
-    \normalturnoffactive  % \ in index entries must not stay \, e.g., if
-               % the page break happens to be in the middle of an example.
-               % We don't want .vr (or whatever) entries like this:
-               % \entry{{\indexbackslash }acronym}{32}{\code {\acronym}}
-               % "\acronym" won't work when it's read back in;
-               % it needs to be
-               % {\code {{\backslashcurfont }acronym}
+    \atdummies         % don't expand commands in the output.
+    \turnoffactive
     \shipout\vbox{%
       % Do this early so pdf references go to the beginning of the page.
       \ifpdfmakepagedest \pdfdest name{\the\pageno} xyz\fi
@@ -455,11 +448,10 @@
   }%
 }
 
-% First remove any @comment, then any @c comment.  Also remove a @texinfoc
-% comment (see \scanmacro for details).  Pass the result on to \argcheckspaces.
+% First remove any @comment, then any @c comment.  Pass the result on to 
+% \argcheckspaces.
 \def\argremovecomment#1\comment#2\ArgTerm{\argremovec #1\c\ArgTerm}
-\def\argremovec#1\c#2\ArgTerm{\argremovetexinfoc #1\texinfoc\ArgTerm}
-\def\argremovetexinfoc#1\texinfoc#2\ArgTerm{\argcheckspaces#1\^^M\ArgTerm}
+\def\argremovec#1\c#2\ArgTerm{\argcheckspaces#1\^^M\ArgTerm}
 
 % Each occurrence of `\^^M' or `<space>\^^M' is replaced by a single space.
 %
@@ -1131,6 +1123,16 @@ where each line of input produces a line of output.}
   \fi
 \fi
 
+\newif\ifpdforxetex
+\pdforxetexfalse
+\ifpdf
+  \pdforxetextrue
+\fi
+\ifx\XeTeXrevision\thisisundefined\else
+  \pdforxetextrue
+\fi
+
+
 % PDF uses PostScript string constants for the names of xref targets,
 % for display in the outlines, and in other places.  Thus, we have to
 % double any backslashes.  Otherwise, a name like "\node" will be
@@ -2173,7 +2175,7 @@ end
 % A few fonts for @defun names and args.
 \setfont\defbf\bfshape{10}{\magstep1}{OT1}
 \setfont\deftt\ttshape{10}{\magstep1}{OT1TT}
-\setfont\defsl\slshape{10}{\magstep1}{OT1TT}
+\setfont\defsl\slshape{10}{\magstep1}{OT1}
 \setfont\defttsl\ttslshape{10}{\magstep1}{OT1TT}
 \def\df{\let\ttfont=\deftt \let\bffont = \defbf
 \let\ttslfont=\defttsl \let\slfont=\defsl \bf}
@@ -2321,7 +2323,7 @@ end
 % A few fonts for @defun names and args.
 \setfont\defbf\bfshape{10}{\magstephalf}{OT1}
 \setfont\deftt\ttshape{10}{\magstephalf}{OT1TT}
-\setfont\defsl\slshape{10}{\magstephalf}{OT1TT}
+\setfont\defsl\slshape{10}{\magstephalf}{OT1}
 \setfont\defttsl\ttslshape{10}{\magstephalf}{OT1TT}
 \def\df{\let\ttfont=\deftt \let\bffont = \defbf
 \let\slfont=\defsl \let\ttslfont=\defttsl \bf}
@@ -2844,7 +2846,7 @@ end
 
 % @t, explicit typewriter.
 \def\t#1{%
-  {\tt \rawbackslash \plainfrenchspacing #1}%
+  {\tt \plainfrenchspacing #1}%
   \null
 }
 
@@ -2871,7 +2873,6 @@ end
     % Turn off hyphenation.
     \nohyphenation
     %
-    \rawbackslash
     \plainfrenchspacing
     #1%
   }%
@@ -3097,9 +3098,9 @@ end
 % Allow a ragged right output to aid breaking long URL's.  Putting stretch in 
 % between characters of the URL doesn't look good.
 \def\urefallowbreak{%
-  \hskip 0pt plus 1fil\relax
+  \hskip 0pt plus 4 em\relax
   \allowbreak
-  \hskip 0pt plus -1fil\relax
+  \hskip 0pt plus -4 em\relax
 }
 
 \urefbreakstyle after
@@ -3112,7 +3113,7 @@ end
 % So now @email is just like @uref, unless we are pdf.
 %
 %\def\email#1{\angleleft{\tt #1}\angleright}
-\ifpdf
+\ifpdforxetex
   \def\email#1{\doemail#1,,\finish}
   \def\doemail#1,#2,#3\finish{\begingroup
     \unsepspaces
@@ -3122,18 +3123,7 @@ end
     \endlink
   \endgroup}
 \else
-  \ifx\XeTeXrevision\thisisundefined
-    \let\email=\uref
-  \else
-    \def\email#1{\doemail#1,,\finish}
-    \def\doemail#1,#2,#3\finish{\begingroup
-      \unsepspaces
-      \pdfurl{mailto:#1}%
-      \setbox0 = \hbox{\ignorespaces #2}%
-      \ifdim\wd0>0pt\unhbox0\else\code{#1}\fi
-      \endlink
-    \endgroup}
-  \fi
+  \let\email=\uref
 \fi
 
 % @kbdinputstyle -- arg is `distinct' (@kbd uses slanted tty font always),
@@ -4667,19 +4657,6 @@ end
   }
 }
 
-% We have this subroutine so that we can handle at least some @value's
-% properly in indexes (we call \makevalueexpandable in \indexdummies).
-% The command has to be fully expandable (if the variable is set), since
-% the result winds up in the index file.  This means that if the
-% variable's value contains other Texinfo commands, it's almost certain
-% it will fail (although perhaps we could fix that with sufficient work
-% to do a one-level expansion on the result, instead of complete).
-% 
-% Unfortunately, this has the consequence that when _ is in the *value*
-% of an @set, it does not print properly in the roman fonts (get the cmr
-% dot accent at position 126 instead).  No fix comes to mind, and it's
-% been this way since 2003 or earlier, so just ignore it.
-% 
 \def\expandablevalue#1{%
   \expandafter\ifx\csname SET#1\endcsname\relax
     {[No value for ``#1'']}%
@@ -4708,7 +4685,7 @@ end
 % if possible, otherwise sort late.
 \def\indexnofontsvalue#1{%
   \expandafter\ifx\csname SET#1\endcsname\relax
-    ZZZZZZZ
+    ZZZZZZZ%
   \else
     \csname SET#1\endcsname
   \fi
@@ -4858,23 +4835,8 @@ end
 \def\docodeindexxxx #1{\doind{\indexname}{\code{#1}}}
 
 
-% Used when writing an index entry out to an index file to prevent
-% expansion of Texinfo commands that can appear in an index entry.
-%
-\def\indexdummies{%
-  \escapechar = `\\     % use backslash in output files.
-  \definedummyletter\@%
-  \definedummyletter\ %
-  %
-  % For texindex which always views { and } as separators.
-  \def\{{\lbracechar{}}%
-  \def\}{\rbracechar{}}%
-  %
-  % Do the redefinitions.
-  \definedummies
-}
-
-% Used for the aux and toc files, where @ is the escape character.
+% Used for the aux, toc and index files to prevent expansion of Texinfo 
+% commands.
 %
 \def\atdummies{%
   \definedummyletter\@%
@@ -4904,8 +4866,7 @@ end
 \def\definedummyletter#1{\def#1{\string#1}}%
 \let\definedummyaccent\definedummyletter
 
-% Called from \indexdummies and \atdummies, to effectively prevent
-% the expansion of commands.
+% Called from \atdummies to prevent the expansion of commands.
 %
 \def\definedummies{%
   %
@@ -4954,6 +4915,7 @@ end
   % Assorted special characters.
   \definedummyword\atchar
   \definedummyword\arrow
+  \definedummyword\backslashchar
   \definedummyword\bullet
   \definedummyword\comma
   \definedummyword\copyright
@@ -4990,6 +4952,8 @@ end
   \definedummyword\sup
   \definedummyword\textdegree
   %
+  \definedummyword\subentry
+  %
   % We want to disable all macros so that they are not expanded by \write.
   \macrolist
   \let\value\dummyvalue
@@ -5070,11 +5034,10 @@ end
   \commondummyword\xref
 }
 
-% This does nothing, but for a time it was recommended to use
-% \usebracesinindexestrue to be able to use braces in index entries.
-
 \let\indexlbrace\relax
 \let\indexrbrace\relax
+\let\indexatchar\relax
+\let\indexbackslash\relax
 
 {\catcode`\@=0
 \catcode`\\=13
@@ -5108,10 +5071,8 @@ end
   }
 
   \gdef\indexnonalnumreappear{%
-    \useindexbackslash
     \let-\normaldash
     \let<\normalless
-    \def\@{@}%
   }
 }
 
@@ -5222,8 +5183,6 @@ end
 
 
 
-\let\SETmarginindex=\relax % put index entries in margin (undocumented)?
-
 % #1 is the index name, #2 is the entry text.
 \def\doind#1#2{%
   \iflinks
@@ -5255,13 +5214,6 @@ end
 \fi}
 \def\indexisfl{fl}
 
-% Output \ as {\indexbackslash}, because \ is an escape character in
-% the index files.
-\let\indexbackslash=\relax
-{\catcode`\@=0 \catcode`\\=\active
-  @gdef@useindexbackslash{@def\{{@indexbackslash}}}
-}
-
 % Definition for writing index entry sort key.
 {
 \catcode`\-=13
@@ -5273,14 +5225,31 @@ end
   \xdef\indexsortkey{#1}\endgroup}
 }
 
+\def\indexwriteseealso#1{
+  \gdef\pagenumbertext{\string\seealso{#1}}%
+}
+\def\indexwriteseeentry#1{
+  \gdef\pagenumbertext{\string\seeentry{#1}}%
+}
+
+% The default definitions
+\def\sortas#1{}%
+\def\seealso#1{\i{\putwordSeeAlso}\ #1}% for sorted index file only
+\def\putwordSeeAlso{See also}
+\def\seeentry#1{\i{\putwordSee}\ #1}% for sorted index file only
+
+
 % Given index entry text like "aaa @subentry bbb @sortas{ZZZ}":
 %   * Set \bracedtext to "{aaa}{bbb}"
 %   * Set \fullindexsortkey to "aaa @subentry ZZZ"
+%   * If @seealso occurs, set \pagenumbertext
 %
 \def\splitindexentry#1{%
   \gdef\fullindexsortkey{}%
   \xdef\bracedtext{}%
   \def\sep{}%
+  \def\seealso##1{}%
+  \def\seeentry##1{}%
   \expandafter\doindexsegment#1\subentry\finish\subentry
 }
 
@@ -5292,7 +5261,6 @@ end
     %
     % Fully expand the segment, throwing away any @sortas directives, and 
     % trim spaces.
-    \def\sortas##1{}%
     \edef\trimmed{\segment}%
     \edef\trimmed{\expandafter\eatspaces\expandafter{\trimmed}}%
     %
@@ -5302,16 +5270,23 @@ end
     % font commands turned off.
     \bgroup
       \let\sortas\indexwritesortas
+      \let\seealso\indexwriteseealso
+      \let\seeentry\indexwriteseeentry
       \indexnofonts
       % The braces around the commands are recognized by texindex.
-      \def\lbracechar{{\indexlbrace}}%
-      \def\rbracechar{{\indexrbrace}}%
+      \def\lbracechar{{\string\indexlbrace}}%
+      \def\rbracechar{{\string\indexrbrace}}%
       \let\{=\lbracechar
       \let\}=\rbracechar
+      \def\@{{\string\indexatchar}}%
+      \def\atchar##1{\@}%
+      \def\backslashchar{{\string\indexbackslash}}%
+      \uccode`\~=`\\ \uppercase{\let~\backslashchar}%
       %
       \let\indexsortkey\empty
+      \global\let\pagenumbertext\empty
       % Execute the segment and throw away the typeset output.  This executes
-      % any @sortas commands in this segment.
+      % any @sortas or @seealso commands in this segment.
       \setbox\dummybox = \hbox{\segment}%
       \ifx\indexsortkey\empty{%
         \indexnonalnumdisappear
@@ -5332,21 +5307,40 @@ end
   \fi
 }
 \def\isfinish{\finish}%
+\newbox\dummybox % used above
 
 \let\subentry\relax
 
-% Write the entry in \toks0 to the index file.
+% Use \ instead of @ in index files.  To support old texi2dvi and texindex.
+% This works without changing the escape character used in the toc or aux
+% files because the index entries are fully expanded here, and \string uses
+% the current value of \escapechar.
+\def\escapeisbackslash{\escapechar=`\\}
+
+% Use \ in index files by default.  texi2dvi didn't support @ as the escape 
+% character (as it checked for "\entry" in the files, and not "@entry").  When 
+% the new version of texi2dvi has had a chance to become more prevalent, then 
+% the escape character can change back to @ again.  This should be an easy 
+% change to make now because both @ and \ are only used as escape characters 
in 
+% index files, never standing for themselves. 
+%
+\set txiindexescapeisbackslash
+
+% Write the entry in \indextext to the index file.
 %
 \def\doindwrite{%
-  % Put the index entry in the margin if desired.
-  \ifx\SETmarginindex\relax\else
-    \insert\margin{\hbox{\vrule height8pt depth3pt width0pt \the\toks0}}%
+  \maybemarginindex
+  %
+  \atdummies
+  %
+  \expandafter\ifx\csname SETtxiindexescapeisbackslash\endcsname\relax\else
+    \escapeisbackslash
   \fi
   %
-  % Remember, we are within a group.
-  \indexdummies % Must do this here, since \bf, etc expand at this stage
-  \useindexbackslash % \indexbackslash isn't defined now so it will be output 
-                     % as is; and it will print as backslash.
+  % For texindex which always views { and } as separators.
+  \def\{{\lbracechar{}}%
+  \def\}{\rbracechar{}}%
+  \uccode`\~=`\\ \uppercase{\def~{\backslashchar{}}}%
   %
   % Split the entry into primary entry and any subentries, and get the index 
   % sort key.
@@ -5360,11 +5354,21 @@ end
   %
   \edef\temp{%
     \write\writeto{%
-      \string\entry{\fullindexsortkey}{\noexpand\folio}\bracedtext}%
+      \string\entry{\fullindexsortkey}%
+        {\ifx\pagenumbertext\empty\noexpand\folio\else\pagenumbertext\fi}%
+        \bracedtext}%
   }%
   \temp
 }
-\newbox\dummybox % used above
+
+% Put the index entry in the margin if desired (undocumented).
+\def\maybemarginindex{%
+  \ifx\SETmarginindex\relax\else
+    \insert\margin{\hbox{\vrule height8pt depth3pt width0pt \relax\indextext}}%
+  \fi
+}
+\let\SETmarginindex=\relax
+
 
 % Take care of unwanted page breaks/skips around a whatsit:
 %
@@ -5452,9 +5456,14 @@ end
 %  \entry {topic}{pagelist}
 %     for a topic that is used without subtopics
 %  \primary {topic}
+%  \entry {topic}{}
 %     for the beginning of a topic that is used with subtopics
 %  \secondary {subtopic}{pagelist}
 %     for each subtopic.
+%  \secondary {subtopic}{}
+%     for a subtopic with sub-subtopics
+%  \tertiary {subtopic}{subsubtopic}{pagelist}
+%     for each sub-subtopic.
 
 % Define the user-accessible indexing commands
 % @findex, @vindex, @kindex, @cindex.
@@ -5479,14 +5488,10 @@ end
   \plainfrenchspacing
   \everypar = {}% don't want the \kern\-parindent from indentation suppression.
   %
-  % See if the index file exists and is nonempty.
-  % Change catcode of @ here so that if the index file contains
-  % \initial {@}
-  % as its first line, TeX doesn't complain about mismatched braces
-  % (because it thinks @} is a control sequence).
-  \catcode`\@ = 12
   % See comment in \requireopenindexfile.
   \def\indexname{#1}\ifx\indexname\indexisfl\def\indexname{f1}\fi
+  %
+  % See if the index file exists and is nonempty.
   \openin 1 \jobname.\indexname s
   \ifeof 1
     % \enddoublecolumns gets confused if there is no text in the index,
@@ -5496,8 +5501,6 @@ end
     \putwordIndexNonexistent
     \typeout{No file \jobname.\indexname s.}%
   \else
-    \catcode`\\ = 0
-    %
     % If the index file exists but is empty, then \openin leaves \ifeof
     % false.  We have to make TeX try to read something from the file, so
     % it can discover if there is anything in it.
@@ -5505,47 +5508,51 @@ end
     \ifeof 1
       \putwordIndexIsEmpty
     \else
-      % Index files are almost Texinfo source, but we use \ as the escape
-      % character.  It would be better to use @, but that's too big a change
-      % to make right now.
-      \def\indexbackslash{\ttbackslash}%
-      \let\indexlbrace\{   % Likewise, set these sequences for braces
-      \let\indexrbrace\}   % used in the sort key.
-      \begindoublecolumns
-      \let\dotheinsertentrybox\dotheinsertentryboxwithpenalty
-      %
-      % Read input from the index file line by line.
-      \loopdo
-        \ifeof1 \else
-          \read 1 to \nextline
-        \fi
-        %
-        \indexinputprocessing
-        \thisline
-        %
-        \ifeof1\else
-        \let\thisline\nextline
-      \repeat
-      %%
-      \enddoublecolumns
+      \expandafter\printindexzz\thisline\relax\relax\finish%
     \fi
   \fi
   \closein 1
 \endgroup}
-\def\loopdo#1\repeat{\def\body{#1}\loopdoxxx}
-\def\loopdoxxx{\let\next=\relax\body\let\next=\loopdoxxx\fi\next}
 
-\def\indexinputprocessing{%
-  \ifeof1
-    \let\firsttoken\relax
+% If the index file starts with a backslash, forgo reading the index
+% file altogether.  If somebody upgrades texinfo.tex they may still have
+% old index files using \ as the escape character.  Reading this would
+% at best lead to typesetting garbage, at worst a TeX syntax error.
+\def\printindexzz#1#2\finish{%
+  \expandafter\ifx\csname SETtxiindexescapeisbackslash\endcsname\relax
+    \uccode`\~=`\\ \uppercase{\if\noexpand~}\noexpand#1
+      \expandafter\ifx\csname SETtxiskipindexfileswithbackslash\endcsname\relax
+\errmessage{%
+ERROR: A sorted index file in an obsolete format was skipped.  
+To fix this problem, please upgrade your version of 'texi2dvi'
+or 'texi2pdf' to that at <https://ftp.gnu.org/gnu/texinfo>.
+If you are using an old version of 'texindex' (part of the Texinfo 
+distribution), you may also need to upgrade to a newer version (at least 6.0).
+You may be able to typeset the index if you run
+'texindex \jobname.\indexname' yourself.
+You could also try setting the 'txiindexescapeisbackslash' flag by 
+running a command like
+'texi2dvi -t "@set txiindexescapeisbackslash" \jobname.texi'.  If you do 
+this, Texinfo will try to use index files in the old format.
+If you continue to have problems, deleting the index files and starting again 
+might help (with 'rm \jobname.?? \jobname.??s')%
+}%
+      \else
+        (Skipped sorted index file in obsolete format)
+      \fi
+    \else
+      \begindoublecolumns
+      \input \jobname.\indexname s
+      \enddoublecolumns
+    \fi
   \else
-    \edef\act{\gdef\noexpand\firsttoken{\getfirsttoken\nextline}}%
-    \act
+    \begindoublecolumns
+    \catcode`\\=0\relax
+    \catcode`\@=12\relax
+    \input \jobname.\indexname s
+    \enddoublecolumns
   \fi
 }
-\def\getfirsttoken#1{\expandafter\getfirsttokenx#1\endfirsttoken}
-\long\def\getfirsttokenx#1#2\endfirsttoken{\noexpand#1}
-
 
 % These macros are used by the sorted index file itself.
 % Change them to control the appearance of the index.
@@ -5554,12 +5561,19 @@ end
 \catcode`\|=13 \catcode`\<=13 \catcode`\>=13 \catcode`\+=13 \catcode`\"=13
 \catcode`\$=3
 \gdef\initialglyphs{%
+  % special control sequences used in the index sort key
+  \let\indexlbrace\{%
+  \let\indexrbrace\}%
+  \let\indexatchar\@%
+  \def\indexbackslash{\math{\backslash}}%
+  %
   % Some changes for non-alphabetic characters.  Using the glyphs from the
   % math fonts looks more consistent than the typewriter font used elsewhere
   % for these characters.
-  \def\indexbackslash{\math{\backslash}}%
-  \let\\=\indexbackslash
+  \uccode`\~=`\\ \uppercase{\def~{\math{\backslash}}}
   %
+  % In case @\ is used for backslash
+  \uppercase{\let\\=~}
   % Can't get bold backslash so don't use bold forward slash
   \catcode`\/=13
   \def/{{\secrmnotbold \normalslash}}%
@@ -5619,12 +5633,6 @@ end
 \def\entry{%
   \begingroup
     %
-    % For pdfTeX and XeTeX.
-    % The redefinition of \domark stops marks being added in \pdflink to 
-    % preserve coloured links across page boundaries.  Otherwise the marks
-    % would get in the way of \lastbox in \insertentrybox.
-    \let\domark\relax
-    %
     % Start a new paragraph if necessary, so our assignments below can't
     % affect previous text.
     \par
@@ -5657,35 +5665,31 @@ end
 \gdef\finishentry#1{%
     \egroup % end box A
     \dimen@ = \wd\boxA % Length of text of entry
-    \global\setbox\boxA=\hbox\bgroup\unhbox\boxA
-    % #1 is the page number.
-    %
-    % Get the width of the page numbers, and only use
-    % leaders if they are present.
-    \global\setbox\boxB = \hbox{#1}%
-    \ifdim\wd\boxB = 0pt
-      \null\nobreak\hfill\ %
-    \else
-      %
-      \null\nobreak\indexdotfill % Have leaders before the page number.
+    \global\setbox\boxA=\hbox\bgroup
+      \unhbox\boxA
+      % #1 is the page number.
       %
-      \ifpdf
-        \pdfgettoks#1.%
-        \hskip\skip\thinshrinkable\the\toksA
+      % Get the width of the page numbers, and only use
+      % leaders if they are present.
+      \global\setbox\boxB = \hbox{#1}%
+      \ifdim\wd\boxB = 0pt
+        \null\nobreak\hfill\ %
       \else
-        \ifx\XeTeXrevision\thisisundefined
-          \hskip\skip\thinshrinkable #1%
-        \else
+        %
+        \null\nobreak\indexdotfill % Have leaders before the page number.
+        %
+        \ifpdforxetex
           \pdfgettoks#1.%
           \hskip\skip\thinshrinkable\the\toksA
+        \else
+          \hskip\skip\thinshrinkable #1%
         \fi
       \fi
-    \fi
     \egroup % end \boxA
     \ifdim\wd\boxB = 0pt
-      \global\setbox\entrybox=\vbox{\unhbox\boxA}%
-    \else
-    \global\setbox\entrybox=\vbox\bgroup
+      \noindent\unhbox\boxA\par
+      \nobreak
+    \else\bgroup
       % We want the text of the entries to be aligned to the left, and the
       % page numbers to be aligned to the right.
       %
@@ -5751,55 +5755,11 @@ end
     \egroup % The \vbox
     \fi
   \endgroup
-  \dotheinsertentrybox
 }}
 
 \newskip\thinshrinkable
 \skip\thinshrinkable=.15em minus .15em
 
-\newbox\entrybox
-\def\insertentrybox{%
-  \ourunvbox\entrybox
-}
-
-% default definition
-\let\dotheinsertentrybox\insertentrybox
-
-% Use \lastbox to take apart vbox box by box, and add each sub-box
-% to the current vertical list.
-\def\ourunvbox#1{%
-\bgroup % for local binding of \delayedbox
-  % Remove the last box from box #1
-  \global\setbox#1=\vbox{%
-    \unvbox#1%
-    \unskip % remove any glue
-    \unpenalty
-    \global\setbox\interbox=\lastbox
-  }%
-  \setbox\delayedbox=\box\interbox
-  \ifdim\ht#1=0pt\else
-    \ourunvbox#1 % Repeat on what's left of the box
-    \nobreak
-  \fi
-  \box\delayedbox
-\egroup
-}
-\newbox\delayedbox
-\newbox\interbox
-
-% Used from \printindex.  \firsttoken should be the first token
-% after the \entry.  If it's not another \entry, we are at the last
-% line of a group of index entries, so insert a penalty to discourage
-% widowed index entries.
-\def\dotheinsertentryboxwithpenalty{%
-  \ifx\firsttoken\isentry
-  \else
-    \penalty 9000
-  \fi
-  \insertentrybox
-}
-\def\isentry{\entry}%
-
 % Like plain.tex's \dotfill, except uses up at least 1 em.
 % The filll stretch here overpowers both the fil and fill stretch to push
 % the page number to the right.
@@ -5809,24 +5769,15 @@ end
 
 \def\primary #1{\line{#1\hfil}}
 
-\newskip\secondaryindent \secondaryindent=0.5cm
-\def\secondary#1#2{{%
-  \parfillskip=0in
-  \parskip=0in
-  \hangindent=1in
-  \hangafter=1
-  \noindent\hskip\secondaryindent\hbox{#1}\indexdotfill
-  \ifpdf
-    \pdfgettoks#2.\ \the\toksA % The page number ends the paragraph.
-  \else
-    \ifx\XeTeXrevision\thisisundefined
-      #2
-    \else
-      \pdfgettoks#2.\ \the\toksA % The page number ends the paragraph.
-    \fi
-  \fi
-  \par
-}}
+\def\secondary{\indententry{0.5cm}}
+\def\tertiary{\indententry{1cm}}
+
+\def\indententry#1#2#3{%
+  \bgroup
+  \leftskip=#1
+  \entry{#2}{#3}%
+  \egroup
+}
 
 % Define two-column mode, which we use to typeset indexes.
 % Adapted from the TeXbook, page 416, which is to say,
@@ -5844,17 +5795,6 @@ end
   \output = {%
     \savetopmark
     %
-    % Here is a possibility not foreseen in manmac: if we accumulate a
-    % whole lot of material, we might end up calling this \output
-    % routine twice in a row (see the doublecol-lose test, which is
-    % essentially a couple of indexes with @setchapternewpage off).  In
-    % that case we just ship out what is in \partialpage with the normal
-    % output routine.  Generally, \partialpage will be empty when this
-    % runs and this will be a no-op.  See the indexspread.tex test case.
-    \ifvoid\partialpage \else
-      \onepageout{\pagecontents\partialpage}%
-    \fi
-    %
     \global\setbox\partialpage = \vbox{%
       % Unvbox the main output page.
       \unvbox\PAGE
@@ -5926,7 +5866,7 @@ end
 }
 
 
-% Finished with with double columns.
+% Finished with double columns.
 \def\enddoublecolumns{%
   % The following penalty ensures that the page builder is exercised
   % _before_ we change the output routine.  This is necessary in the
@@ -6134,11 +6074,9 @@ end
 
 % @raisesections: treat @section as chapter, @subsection as section, etc.
 \def\raisesections{\global\advance\secbase by -1}
-\let\up=\raisesections % original BFox name
 
 % @lowersections: treat @chapter as section, @section as subsection, etc.
 \def\lowersections{\global\advance\secbase by 1}
-\let\down=\lowersections % original BFox name
 
 % we only have subsub.
 \chardef\maxseclevel = 3
@@ -6790,13 +6728,8 @@ end
   % 1 and 2 (the page numbers aren't printed), and so are the first
   % two pages of the document.  Thus, we'd have two destinations named
   % `1', and two named `2'.
-  \ifpdf
+  \ifpdforxetex
     \global\pdfmakepagedesttrue
-  \else
-    \ifx\XeTeXrevision\thisisundefined
-    \else
-      \global\pdfmakepagedesttrue
-    \fi
   \fi
 }
 
@@ -7159,11 +7092,7 @@ end
 
 % @cartouche ... @end cartouche: draw rectangle w/rounded corners around
 % environment contents.
-\font\circle=lcircle10
-\newdimen\circthick
-\newdimen\cartouter\newdimen\cartinner
-\newskip\normbskip\newskip\normpskip\newskip\normlskip
-\circthick=\fontdimen8\circle
+
 %
 \def\ctl{{\circle\char'013\hskip -6pt}}% 6pt from pl file: 1/2charwidth
 \def\ctr{{\hskip 6pt\circle\char'010}}
@@ -7178,7 +7107,18 @@ end
 %
 \newskip\lskip\newskip\rskip
 
+% only require the font if @cartouche is actually used
+\def\cartouchefontdefs{%
+  \font\circle=lcircle10\relax
+  \circthick=\fontdimen8\circle
+}
+\newdimen\circthick
+\newdimen\cartouter\newdimen\cartinner
+\newskip\normbskip\newskip\normpskip\newskip\normlskip
+
+
 \envdef\cartouche{%
+  \cartouchefontdefs
   \ifhmode\par\fi  % can't be in the midst of a paragraph.
   \startsavinginserts
   \lskip=\leftskip \rskip=\rightskip
@@ -8050,36 +7990,18 @@ end
   }
 \fi
 
-% alias because \c means cedilla in @tex or @math
-\let\texinfoc=\c
-
-\newcount\savedcatcodeone
-\newcount\savedcatcodetwo
-
 % Used at the time of macro expansion.
 % Argument is macro body with arguments substituted
 \def\scanmacro#1{%
   \newlinechar`\^^M
   \def\xeatspaces{\eatspaces}%
   %
-  % Temporarily undo catcode changes of \printindex.  Set catcode of @ to
-  % 0 so that @-commands in macro expansions aren't printed literally when 
-  % formatting an index file, where \ is used as the escape character.
-  \savedcatcodeone=\catcode`\@
-  \savedcatcodetwo=\catcode`\\
-  \catcode`\@=0
-  \catcode`\\=\active
-  %
   % Process the macro body under the current catcode regime.
-  \scantokens{#1@texinfoc}%
-  %
-  \catcode`\@=\savedcatcodeone
-  \catcode`\\=\savedcatcodetwo
+  \scantokens{#1@comment}%
   %
-  % The \texinfoc is to remove the \newlinechar added by \scantokens, and
-  % can be noticed by \parsearg.
-  %   We avoid surrounding the call to \scantokens with \bgroup and \egroup
-  % to allow macros to open or close groups themselves.
+  % The \comment is to remove the \newlinechar added by \scantokens, and
+  % can be noticed by \parsearg.  Note \c isn't used because this means 
cedilla 
+  % in math mode.
 }
 
 % Used for copying and captions
@@ -8180,12 +8102,14 @@ end
 \def\macroargctxt{%
   \scanctxt
   \catcode`\ =\active
+  \catcode`\@=\other
   \catcode`\^^M=\other
   \catcode`\\=\active
 }
 
 \def\macrolineargctxt{% used for whole-line arguments without braces
   \scanctxt
+  \catcode`\@=\other
   \catcode`\{=\other
   \catcode`\}=\other
 }
@@ -8749,9 +8673,29 @@ end
 % also remove a trailing comma, in case of something like this:
 % @node Help-Cross,  ,  , Cross-refs
 \def\donode#1 ,#2\finishnodeparse{\dodonode #1,\finishnodeparse}
-\def\dodonode#1,#2\finishnodeparse{\gdef\lastnode{#1}}
+\def\dodonode#1,#2\finishnodeparse{\gdef\lastnode{#1}\omittopnode}
+
+% Used so that the @top node doesn't have to be wrapped in an @ifnottex
+% conditional.
+% \doignore goes to more effort to skip nested conditionals but we don't need 
+% that here.
+\def\omittopnode{%
+   \ifx\lastnode\wordTop
+   \expandafter\ignorenode\fi
+}
+\def\wordTop{Top}
+
+% Until the next @node or @bye command, divert output to a box that is not 
+% output.
+\def\ignorenode{\setbox\dummybox\vbox\bgroup\def\node{\egroup\node}%
+\ignorenodebye
+}
+
+{\let\bye\relax
+\gdef\ignorenodebye{\let\bye\ignorenodebyedef}
+\gdef\ignorenodebyedef{\egroup(`Top' node ignored)\bye}}
+% The redefinition of \bye here is because it is declared \outer
 
-\let\nwnode=\node
 \let\lastnode=\empty
 
 % Write a cross-reference definition for the current node.  #1 is the
@@ -9226,19 +9170,6 @@ end
   \catcode`\^^]=\other
   \catcode`\^^^=\other
   \catcode`\^^_=\other
-  % It was suggested to set the catcode of ^ to 7, which would allow ^^e4 etc.
-  % in xref tags, i.e., node names.  But since ^^e4 notation isn't
-  % supported in the main text, it doesn't seem desirable.  Furthermore,
-  % that is not enough: for node names that actually contain a ^
-  % character, we would end up writing a line like this: 'xrdef {'hat
-  % b-title}{'hat b} and \xrdef does a \csname...\endcsname on the first
-  % argument, and \hat is not an expandable control sequence.  It could
-  % all be worked out, but why?  Either we support ^^ or we don't.
-  %
-  % The other change necessary for this was to define \auxhat:
-  % \def\auxhat{\def^{'hat }}% extra space so ok if followed by letter
-  % and then to call \auxhat in \setq.
-  %
   \catcode`\^=\other
   %
   % Special characters.  Should be turned off anyway, but...
@@ -9256,14 +9187,7 @@ end
   \catcode`\%=\other
   \catcode`+=\other % avoid \+ for paranoia even though we've turned it off
   %
-  % This is to support \ in node names and titles, since the \
-  % characters end up in a \csname.  It's easier than
-  % leaving it active and making its active definition an actual \
-  % character.  What I don't understand is why it works in the *value*
-  % of the xrdef.  Seems like it should be a catcode12 \, and that
-  % should not typeset properly.  But it works, so I'm moving on for
-  % now.  --karl, 15jan04.
-  \catcode`\\=\other
+  \catcode`\\=\active
   %
   % @ is our escape character in .aux files, and we need braces.
   \catcode`\{=1
@@ -11534,11 +11458,9 @@ directory should work if nowhere else does.}
 % \backslashcurfont outputs one backslash character in current font,
 % as in \char`\\.
 \global\chardef\backslashcurfont=`\\
-\global\let\rawbackslashxx=\backslashcurfont  % let existing .??s files work
 
-% \realbackslash is an actual character `\' with catcode other, and
-% \doublebackslash is two of them (for the pdf outlines).
-{\catcode`\\=\other @gdef@realbackslash{\} @gdef@doublebackslash{\\}}
+% \realbackslash is an actual character `\' with catcode other.
+{\catcode`\\=\other @gdef@realbackslash{\}}
 
 % In Texinfo, backslash is an active character; it prints the backslash
 % in fixed width font.
@@ -11556,10 +11478,8 @@ directory should work if nowhere else does.}
 @def@ttbackslash{{@tt @ifmmode @mathchar29020 @else @backslashcurfont @fi}}
 @let@backslashchar = @ttbackslash % @backslashchar{} is for user documents.
 
-% \rawbackslash defines an active \ to do \backslashcurfont.
 % \otherbackslash defines an active \ to be a literal `\' character with
-% catcode other.  We switch back and forth between these.
-@gdef@rawbackslash{@let\=@backslashcurfont}
+% catcode other.
 @gdef@otherbackslash{@let\=@realbackslash}
 
 % Same as @turnoffactive except outputs \ as {\tt\char`\\} instead of
@@ -11631,7 +11551,7 @@ directory should work if nowhere else does.}
   @ifx\@eatinput @let\ = @ttbackslash @fi
   @catcode13=5 % regular end of line
   @enableemergencynewline
-  @let@c=@texinfoc
+  @let@c=@comment
   @let@parsearg@originalparsearg
   % Also turn back on active characters that might appear in the input
   % file name, in case not using a pre-dumped format.
diff --git a/extension/build-aux/ChangeLog b/extension/build-aux/ChangeLog
index f7abc79..79d602e 100644
--- a/extension/build-aux/ChangeLog
+++ b/extension/build-aux/ChangeLog
@@ -1,3 +1,7 @@
+2019-06-21         Arnold D. Robbins     <address@hidden>
+
+       * config.guess, config.sub: Updated from GNULIB.
+
 2019-06-18         Arnold D. Robbins     <address@hidden>
 
        * 5.0.1: Release tar ball made.
diff --git a/extension/build-aux/config.guess b/extension/build-aux/config.guess
index 79d1317..41b8b85 100755
--- a/extension/build-aux/config.guess
+++ b/extension/build-aux/config.guess
@@ -2,7 +2,7 @@
 # Attempt to guess a canonical system name.
 #   Copyright 1992-2019 Free Software Foundation, Inc.
 
-timestamp='2019-03-04'
+timestamp='2019-06-10'
 
 # This file is free software; you can redistribute it and/or modify it
 # under the terms of the GNU General Public License as published by
@@ -262,6 +262,9 @@ case 
"$UNAME_MACHINE:$UNAME_SYSTEM:$UNAME_RELEASE:$UNAME_VERSION" in
     *:SolidBSD:*:*)
        echo "$UNAME_MACHINE"-unknown-solidbsd"$UNAME_RELEASE"
        exit ;;
+    *:OS108:*:*)
+       echo "$UNAME_MACHINE"-unknown-os108_"$UNAME_RELEASE"
+       exit ;;
     macppc:MirBSD:*:*)
        echo powerpc-unknown-mirbsd"$UNAME_RELEASE"
        exit ;;
@@ -1325,38 +1328,39 @@ EOF
        echo "$UNAME_MACHINE"-apple-rhapsody"$UNAME_RELEASE"
        exit ;;
     *:Darwin:*:*)
-       UNAME_PROCESSOR=`uname -p` || UNAME_PROCESSOR=unknown
-       set_cc_for_build
-       if test "$UNAME_PROCESSOR" = unknown ; then
-           UNAME_PROCESSOR=powerpc
+       UNAME_PROCESSOR=`uname -p`
+       case $UNAME_PROCESSOR in
+           unknown) UNAME_PROCESSOR=powerpc ;;
+       esac
+       if command -v xcode-select > /dev/null 2> /dev/null && \
+               ! xcode-select --print-path > /dev/null 2> /dev/null ; then
+           # Avoid executing cc if there is no toolchain installed as
+           # cc will be a stub that puts up a graphical alert
+           # prompting the user to install developer tools.
+           CC_FOR_BUILD=no_compiler_found
+       else
+           set_cc_for_build
        fi
-       if test "`echo "$UNAME_RELEASE" | sed -e 's/\..*//'`" -le 10 ; then
-           if [ "$CC_FOR_BUILD" != no_compiler_found ]; then
-               if (echo '#ifdef __LP64__'; echo IS_64BIT_ARCH; echo '#endif') 
| \
-                      (CCOPTS="" $CC_FOR_BUILD -E - 2>/dev/null) | \
-                      grep IS_64BIT_ARCH >/dev/null
-               then
-                   case $UNAME_PROCESSOR in
-                       i386) UNAME_PROCESSOR=x86_64 ;;
-                       powerpc) UNAME_PROCESSOR=powerpc64 ;;
-                   esac
-               fi
-               # On 10.4-10.6 one might compile for PowerPC via gcc -arch ppc
-               if (echo '#ifdef __POWERPC__'; echo IS_PPC; echo '#endif') | \
-                      (CCOPTS="" $CC_FOR_BUILD -E - 2>/dev/null) | \
-                      grep IS_PPC >/dev/null
-               then
-                   UNAME_PROCESSOR=powerpc
-               fi
+       if [ "$CC_FOR_BUILD" != no_compiler_found ]; then
+           if (echo '#ifdef __LP64__'; echo IS_64BIT_ARCH; echo '#endif') | \
+                  (CCOPTS="" $CC_FOR_BUILD -E - 2>/dev/null) | \
+                  grep IS_64BIT_ARCH >/dev/null
+           then
+               case $UNAME_PROCESSOR in
+                   i386) UNAME_PROCESSOR=x86_64 ;;
+                   powerpc) UNAME_PROCESSOR=powerpc64 ;;
+               esac
+           fi
+           # On 10.4-10.6 one might compile for PowerPC via gcc -arch ppc
+           if (echo '#ifdef __POWERPC__'; echo IS_PPC; echo '#endif') | \
+                  (CCOPTS="" $CC_FOR_BUILD -E - 2>/dev/null) | \
+                  grep IS_PPC >/dev/null
+           then
+               UNAME_PROCESSOR=powerpc
            fi
        elif test "$UNAME_PROCESSOR" = i386 ; then
-           # Avoid executing cc on OS X 10.9, as it ships with a stub
-           # that puts up a graphical alert prompting to install
-           # developer tools.  Any system running Mac OS X 10.7 or
-           # later (Darwin 11 and later) is required to have a 64-bit
-           # processor. This is not true of the ARM version of Darwin
-           # that Apple uses in portable devices.
-           UNAME_PROCESSOR=x86_64
+           # uname -m returns i386 or x86_64
+           UNAME_PROCESSOR=$UNAME_MACHINE
        fi
        echo "$UNAME_PROCESSOR"-apple-darwin"$UNAME_RELEASE"
        exit ;;
@@ -1468,6 +1472,14 @@ cat > "$dummy.c" <<EOF
 #include <sys/types.h>
 #include <sys/utsname.h>
 #endif
+#if defined(ultrix) || defined(_ultrix) || defined(__ultrix) || 
defined(__ultrix__)
+#if defined (vax) || defined (__vax) || defined (__vax__) || defined(mips) || 
defined(__mips) || defined(__mips__) || defined(MIPS) || defined(__MIPS__)
+#include <signal.h>
+#if defined(_SIZE_T_) || defined(SIGLOST)
+#include <sys/utsname.h>
+#endif
+#endif
+#endif
 main ()
 {
 #if defined (sony)
@@ -1555,18 +1567,23 @@ main ()
   printf ("vax-dec-bsd\n"); exit (0);
 #endif
 #else
+#if defined(_SIZE_T_) || defined(SIGLOST)
+  struct utsname un;
+  uname (&un);
+  printf ("vax-dec-ultrix%s\n", un.release); exit (0);
+#else
   printf ("vax-dec-ultrix\n"); exit (0);
 #endif
 #endif
+#endif
 #if defined(ultrix) || defined(_ultrix) || defined(__ultrix) || 
defined(__ultrix__)
 #if defined(mips) || defined(__mips) || defined(__mips__) || defined(MIPS) || 
defined(__MIPS__)
-#include <signal.h>
-#if defined(_SIZE_T_) /* >= ULTRIX4 */
-  printf ("mips-dec-ultrix4\n"); exit (0);
+#if defined(_SIZE_T_) || defined(SIGLOST)
+  struct utsname *un;
+  uname (&un);
+  printf ("mips-dec-ultrix%s\n", un.release); exit (0);
 #else
-#if defined(ULTRIX3) || defined(ultrix3) || defined(SIGLOST)
-  printf ("mips-dec-ultrix3\n"); exit (0);
-#endif
+  printf ("mips-dec-ultrix\n"); exit (0);
 #endif
 #endif
 #endif
diff --git a/extension/build-aux/config.sub b/extension/build-aux/config.sub
index f53af5a..5b158ac 100755
--- a/extension/build-aux/config.sub
+++ b/extension/build-aux/config.sub
@@ -2,7 +2,7 @@
 # Configuration validation subroutine script.
 #   Copyright 1992-2019 Free Software Foundation, Inc.
 
-timestamp='2019-01-05'
+timestamp='2019-05-23'
 
 # This file is free software; you can redistribute it and/or modify it
 # under the terms of the GNU General Public License as published by
@@ -1172,7 +1172,7 @@ case $cpu-$vendor in
                        | asmjs \
                        | ba \
                        | be32 | be64 \
-                       | bfin | bs2000 \
+                       | bfin | bpf | bs2000 \
                        | c[123]* | c30 | [cjt]90 | c4x \
                        | c8051 | clipper | craynv | csky | cydra \
                        | d10v | d30v | dlx | dsp16xx \

-----------------------------------------------------------------------

Summary of changes:
 ChangeLog                        |  11 +-
 NEWS                             |   2 +-
 README.git                       |   3 +-
 awkgram.c                        |   1 +
 awkgram.y                        |   1 +
 config.guess                     |  89 ++--
 config.sub                       |   4 +-
 doc/ChangeLog                    |  10 +
 doc/gawk.info                    | 952 +++++++++++++++++++--------------------
 doc/gawk.texi                    |   7 -
 doc/gawktexi.in                  |   7 -
 doc/texinfo.tex                  | 528 +++++++++-------------
 extension/build-aux/ChangeLog    |   4 +
 extension/build-aux/config.guess |  89 ++--
 extension/build-aux/config.sub   |   4 +-
 15 files changed, 836 insertions(+), 876 deletions(-)


hooks/post-receive
-- 
gawk



reply via email to

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