gawk-diffs
[Top][All Lists]
Advanced

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

[SCM] gawk branch, gawk-5.1-stable, updated. gawk-4.1.0-4090-gd389d4c


From: Arnold Robbins
Subject: [SCM] gawk branch, gawk-5.1-stable, updated. gawk-4.1.0-4090-gd389d4c
Date: Wed, 12 Aug 2020 11:17:21 -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.1-stable has been updated
       via  d389d4cd9e2d75159f69a23bfa6d038f74502b12 (commit)
       via  8110b4b66d9bf0f94b4595aadd4e9439df526fa5 (commit)
      from  1316328fd5e4677a4096ee116ad411e6af10cc57 (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=d389d4cd9e2d75159f69a23bfa6d038f74502b12

commit d389d4cd9e2d75159f69a23bfa6d038f74502b12
Author: Arnold D. Robbins <arnold@skeeve.com>
Date:   Wed Aug 12 18:15:18 2020 +0300

    Fix issues with function ordering in pretty printed output. Add doc.

diff --git a/ChangeLog b/ChangeLog
index 48225bc..5f4c05e 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -3,6 +3,16 @@
        * awkgram.c, command.c: Regenerated with Bison 3.7.1.
        * NEWS: Updated.
 
+       Unrelated:
+
+       * profile.c (pp_namespace): Always print a newline before the
+       @namespace, in case it comes after a comment. Thanks to J Naman
+       for the report.
+       * symbol.c (comp_symbol): Adjust comparison so that names in the
+       awk namespace come out first. Makes the order of functions in
+       pretty-printed output more sane. Thanks also to J Naman for
+       getting me to explore this issue.
+
 2020-07-29         Arnold D. Robbins     <arnold@skeeve.com>
 
        * custom.h (FLEXIBLE_ARRAY_MEMBER): Define to 1 for dfa.h.
diff --git a/NEWS b/NEWS
index 6890c34..be7a7a8 100644
--- a/NEWS
+++ b/NEWS
@@ -33,6 +33,10 @@ Changes from 5.1.0 to 5.1.1
 7. The test suite has been improved, making it easier to run the entire
    suite with -M. Use `GAWK_TEST_ARGS=-M make check' to do so.
 
+8. Profiling and pretty-printing output has been modified slightly so
+   that functions are presented in a reasonable order with respect
+   to the namespaces that contain them.
+
 Changes from 5.0.1 to 5.1.0
 ---------------------------
 
diff --git a/doc/ChangeLog b/doc/ChangeLog
index a2ce480..02c5b02 100644
--- a/doc/ChangeLog
+++ b/doc/ChangeLog
@@ -1,3 +1,7 @@
+2020-08-12         Arnold D. Robbins     <arnold@skeeve.com>
+
+       * gawktexi.in (Profiling): Add explanation of function order.
+
 2020-07-28         Arnold D. Robbins     <arnold@skeeve.com>
 
        * gawktexi.in: Change a FIXME into a real cross reference. Thanks
diff --git a/doc/gawk.info b/doc/gawk.info
index 31e209c..3fd5665 100644
--- a/doc/gawk.info
+++ b/doc/gawk.info
@@ -21179,6 +21179,12 @@ output.  They are as follows:
      rules, the 'BEGINFILE' and 'ENDFILE' rules, the pattern-action
      rules, and the functions.
 
+   * Functions are listed alphabetically.  All functions in the 'awk'
+     namespace are listed first, in alphabetical order.  Then come the
+     functions in namespaces.  The namespaces are listed in alphabetical
+     order, and the functions within each namespace are listed
+     alphabetically.
+
    The profiled version of your program may not look exactly like what
 you typed when you wrote it.  This is because 'gawk' creates the
 profiled version by "pretty-printing" its internal representation of the
@@ -35251,7 +35257,7 @@ Index
 * dump debugger command:                 Miscellaneous Debugger Commands.
                                                               (line   9)
 * dupword.awk program:                   Dupword Program.     (line  31)
-* dynamic profiling:                     Profiling.           (line 179)
+* dynamic profiling:                     Profiling.           (line 185)
 * dynamically loaded extensions:         Dynamic Extensions.  (line   6)
 * e debugger command (alias for enable): Breakpoint Control.  (line  73)
 * EBCDIC:                                Ordinal Functions.   (line  45)
@@ -35742,8 +35748,8 @@ Index
                                                               (line  83)
 * gawk, PROCINFO array in <3>:           Two-way I/O.         (line 114)
 * gawk, ERRNO variable in <4>:           TCP/IP Networking.   (line  54)
-* gawk, dynamic profiling:               Profiling.           (line 179)
-* gawk, profiling programs:              Profiling.           (line 179)
+* gawk, dynamic profiling:               Profiling.           (line 185)
+* gawk, profiling programs:              Profiling.           (line 185)
 * gawk, internationalization:            Internationalization.
                                                               (line  13)
 * gawk, interpreter, adding code to:     Using Internal File Ops.
@@ -35884,7 +35890,7 @@ Index
 * history expansion, in debugger:        Readline Support.    (line   6)
 * histsort.awk program:                  History Sorting.     (line  25)
 * Hughes, Phil:                          Acknowledgments.     (line  43)
-* HUP signal, for dynamic profiling:     Profiling.           (line 211)
+* HUP signal, for dynamic profiling:     Profiling.           (line 217)
 * hyphen (-), file names beginning with: Options.             (line  64)
 * hyphen (-), -- end of options marker:  Options.             (line 349)
 * hyphen (-), in bracket expressions:    Bracket Expressions. (line  25)
@@ -35972,7 +35978,7 @@ Index
 * instruction tracing, in debugger:      Debugger Info.       (line  90)
 * instructions, trace of internal:       Options.             (line 198)
 * int:                                   Numeric Functions.   (line  24)
-* INT signal (MS-Windows):               Profiling.           (line 214)
+* INT signal (MS-Windows):               Profiling.           (line 220)
 * integer array indices:                 Numeric Array Subscripts.
                                                               (line  31)
 * integers, unsigned:                    Computer Arithmetic. (line  41)
@@ -36036,7 +36042,7 @@ Index
 * Kernighan, Brian <8>:                  Other Versions.      (line  13)
 * Kernighan, Brian <9>:                  Basic Data Typing.   (line  54)
 * Kernighan, Brian <10>:                 Glossary.            (line 204)
-* kill command, dynamic profiling:       Profiling.           (line 188)
+* kill command, dynamic profiling:       Profiling.           (line 194)
 * knights, jedi:                         Undocumented.        (line   6)
 * Kwok, Conrad:                          Contributors.        (line  35)
 * l debugger command (alias for list):   Miscellaneous Debugger Commands.
@@ -36558,8 +36564,8 @@ Index
 * pretty printer, interaction with namespaces: Namespace And Features.
                                                               (line   9)
 * pretty printing:                       Options.             (line 261)
-* pretty printing <1>:                   Profiling.           (line 222)
-* pretty printing, profiling, difference with: Profiling.     (line 229)
+* pretty printing <1>:                   Profiling.           (line 228)
+* pretty printing, profiling, difference with: Profiling.     (line 235)
 * print debugger command:                Viewing And Changing Data.
                                                               (line  39)
 * print statement:                       Printing.            (line  16)
@@ -36612,8 +36618,8 @@ Index
 * profiler, interaction with namespaces: Namespace And Features.
                                                               (line   9)
 * profiling awk programs:                Profiling.           (line   6)
-* profiling awk programs, dynamically:   Profiling.           (line 179)
-* profiling, pretty printing, difference with: Profiling.     (line 229)
+* profiling awk programs, dynamically:   Profiling.           (line 185)
+* profiling, pretty printing, difference with: Profiling.     (line 235)
 * program identifiers:                   Auto-set.            (line 193)
 * program, definition of:                Getting Started.     (line  21)
 * programming, concepts:                 Basic Concepts.      (line   6)
@@ -36654,7 +36660,7 @@ Index
 * QuikTrim Awk:                          Other Versions.      (line 147)
 * quit debugger command:                 Miscellaneous Debugger Commands.
                                                               (line 100)
-* QUIT signal (MS-Windows):              Profiling.           (line 214)
+* QUIT signal (MS-Windows):              Profiling.           (line 220)
 * quoting, in gawk command lines:        Long.                (line  26)
 * quoting, for small awk programs:       Comments.            (line  27)
 * quoting, in gawk command lines, tricks for: Quoting.        (line  91)
@@ -36956,15 +36962,15 @@ Index
                                                               (line  83)
 * sidebar, Rounding Modes and Conversion: Setting the rounding mode.
                                                               (line  65)
-* SIGHUP signal, for dynamic profiling:  Profiling.           (line 211)
-* SIGINT signal (MS-Windows):            Profiling.           (line 214)
-* signals, USR1/SIGUSR1, for profiling:  Profiling.           (line 188)
-* signals, HUP/SIGHUP, for profiling:    Profiling.           (line 211)
-* signals, INT/SIGINT (MS-Windows):      Profiling.           (line 214)
-* signals, QUIT/SIGQUIT (MS-Windows):    Profiling.           (line 214)
+* SIGHUP signal, for dynamic profiling:  Profiling.           (line 217)
+* SIGINT signal (MS-Windows):            Profiling.           (line 220)
+* signals, USR1/SIGUSR1, for profiling:  Profiling.           (line 194)
+* signals, HUP/SIGHUP, for profiling:    Profiling.           (line 217)
+* signals, INT/SIGINT (MS-Windows):      Profiling.           (line 220)
+* signals, QUIT/SIGQUIT (MS-Windows):    Profiling.           (line 220)
 * signature program:                     Signature Program.   (line   6)
-* SIGQUIT signal (MS-Windows):           Profiling.           (line 214)
-* SIGUSR1 signal, for dynamic profiling: Profiling.           (line 188)
+* SIGQUIT signal (MS-Windows):           Profiling.           (line 220)
+* SIGUSR1 signal, for dynamic profiling: Profiling.           (line 194)
 * silent debugger command:               Debugger Execution Control.
                                                               (line  10)
 * sin:                                   Numeric Functions.   (line  75)
@@ -37286,7 +37292,7 @@ Index
 * user-modifiable variables:             User-modified.       (line   6)
 * users, information about, retrieving:  Passwd Functions.    (line  16)
 * users, information about, printing:    Id Program.          (line   6)
-* USR1 signal, for dynamic profiling:    Profiling.           (line 188)
+* USR1 signal, for dynamic profiling:    Profiling.           (line 194)
 * values, regexp:                        Strong Regexp Constants.
                                                               (line  24)
 * values, numeric:                       Basic Data Typing.   (line  13)
@@ -37761,233 +37767,233 @@ Ref: Two-way I/O-Footnote-1851405
 Ref: Two-way I/O-Footnote-2851592
 Node: TCP/IP Networking851674
 Node: Profiling854792
-Node: Advanced Features Summary863807
-Node: Internationalization865651
-Node: I18N and L10N867131
-Node: Explaining gettext867818
-Ref: Explaining gettext-Footnote-1873710
-Ref: Explaining gettext-Footnote-2873895
-Node: Programmer i18n874060
-Ref: Programmer i18n-Footnote-1879009
-Node: Translator i18n879058
-Node: String Extraction879852
-Ref: String Extraction-Footnote-1880984
-Node: Printf Ordering881070
-Ref: Printf Ordering-Footnote-1883856
-Node: I18N Portability883920
-Ref: I18N Portability-Footnote-1886376
-Node: I18N Example886439
-Ref: I18N Example-Footnote-1889714
-Ref: I18N Example-Footnote-2889787
-Node: Gawk I18N889896
-Node: I18N Summary890545
-Node: Debugger891886
-Node: Debugging892886
-Node: Debugging Concepts893327
-Node: Debugging Terms895136
-Node: Awk Debugging897711
-Ref: Awk Debugging-Footnote-1898656
-Node: Sample Debugging Session898788
-Node: Debugger Invocation899322
-Node: Finding The Bug900708
-Node: List of Debugger Commands907182
-Node: Breakpoint Control908515
-Node: Debugger Execution Control912209
-Node: Viewing And Changing Data915571
-Node: Execution Stack919112
-Node: Debugger Info920749
-Node: Miscellaneous Debugger Commands924820
-Node: Readline Support929882
-Node: Limitations930778
-Node: Debugging Summary933332
-Node: Namespaces934611
-Node: Global Namespace935722
-Node: Qualified Names937120
-Node: Default Namespace938119
-Node: Changing The Namespace938860
-Node: Naming Rules940474
-Node: Internal Name Management942322
-Node: Namespace Example943364
-Node: Namespace And Features945926
-Node: Namespace Summary947361
-Node: Arbitrary Precision Arithmetic948838
-Node: Computer Arithmetic950325
-Ref: table-numeric-ranges954091
-Ref: table-floating-point-ranges954584
-Ref: Computer Arithmetic-Footnote-1955242
-Node: Math Definitions955299
-Ref: table-ieee-formats958615
-Ref: Math Definitions-Footnote-1959218
-Node: MPFR features959323
-Node: FP Math Caution961041
-Ref: FP Math Caution-Footnote-1962113
-Node: Inexactness of computations962482
-Node: Inexact representation963442
-Node: Comparing FP Values964802
-Node: Errors accumulate966043
-Node: Getting Accuracy967476
-Node: Try To Round970186
-Node: Setting precision971085
-Ref: table-predefined-precision-strings971782
-Node: Setting the rounding mode973612
-Ref: table-gawk-rounding-modes973986
-Ref: Setting the rounding mode-Footnote-1977917
-Node: Arbitrary Precision Integers978096
-Ref: Arbitrary Precision Integers-Footnote-1981271
-Node: Checking for MPFR981420
-Node: POSIX Floating Point Problems982894
-Ref: POSIX Floating Point Problems-Footnote-1987179
-Node: Floating point summary987217
-Node: Dynamic Extensions989407
-Node: Extension Intro990960
-Node: Plugin License992226
-Node: Extension Mechanism Outline993023
-Ref: figure-load-extension993462
-Ref: figure-register-new-function995027
-Ref: figure-call-new-function996119
-Node: Extension API Description998181
-Node: Extension API Functions Introduction999894
-Ref: table-api-std-headers1001730
-Node: General Data Types1005979
-Ref: General Data Types-Footnote-11014609
-Node: Memory Allocation Functions1014908
-Ref: Memory Allocation Functions-Footnote-11019409
-Node: Constructor Functions1019508
-Node: API Ownership of MPFR and GMP Values1022974
-Node: Registration Functions1024287
-Node: Extension Functions1024987
-Node: Exit Callback Functions1030309
-Node: Extension Version String1031559
-Node: Input Parsers1032222
-Node: Output Wrappers1044943
-Node: Two-way processors1049455
-Node: Printing Messages1051720
-Ref: Printing Messages-Footnote-11052891
-Node: Updating ERRNO1053044
-Node: Requesting Values1053783
-Ref: table-value-types-returned1054520
-Node: Accessing Parameters1055456
-Node: Symbol Table Access1056693
-Node: Symbol table by name1057205
-Ref: Symbol table by name-Footnote-11060229
-Node: Symbol table by cookie1060357
-Ref: Symbol table by cookie-Footnote-11064542
-Node: Cached values1064606
-Ref: Cached values-Footnote-11068142
-Node: Array Manipulation1068295
-Ref: Array Manipulation-Footnote-11069386
-Node: Array Data Types1069423
-Ref: Array Data Types-Footnote-11072081
-Node: Array Functions1072173
-Node: Flattening Arrays1076671
-Node: Creating Arrays1083647
-Node: Redirection API1088414
-Node: Extension API Variables1091247
-Node: Extension Versioning1091958
-Ref: gawk-api-version1092387
-Node: Extension GMP/MPFR Versioning1094118
-Node: Extension API Informational Variables1095746
-Node: Extension API Boilerplate1096819
-Node: Changes from API V11100793
-Node: Finding Extensions1102365
-Node: Extension Example1102924
-Node: Internal File Description1103722
-Node: Internal File Ops1107802
-Ref: Internal File Ops-Footnote-11119152
-Node: Using Internal File Ops1119292
-Ref: Using Internal File Ops-Footnote-11121675
-Node: Extension Samples1121949
-Node: Extension Sample File Functions1123478
-Node: Extension Sample Fnmatch1131127
-Node: Extension Sample Fork1132614
-Node: Extension Sample Inplace1133832
-Node: Extension Sample Ord1137457
-Node: Extension Sample Readdir1138293
-Ref: table-readdir-file-types1139182
-Node: Extension Sample Revout1140249
-Node: Extension Sample Rev2way1140838
-Node: Extension Sample Read write array1141578
-Node: Extension Sample Readfile1143520
-Node: Extension Sample Time1144615
-Node: Extension Sample API Tests1146367
-Node: gawkextlib1146859
-Node: Extension summary1149777
-Node: Extension Exercises1153479
-Node: Language History1154721
-Node: V7/SVR3.11156377
-Node: SVR41158529
-Node: POSIX1159963
-Node: BTL1161344
-Node: POSIX/GNU1162073
-Node: Feature History1167851
-Node: Common Extensions1184170
-Node: Ranges and Locales1185453
-Ref: Ranges and Locales-Footnote-11190069
-Ref: Ranges and Locales-Footnote-21190096
-Ref: Ranges and Locales-Footnote-31190331
-Node: Contributors1190554
-Node: History summary1196551
-Node: Installation1197931
-Node: Gawk Distribution1198875
-Node: Getting1199359
-Node: Extracting1200322
-Node: Distribution contents1201960
-Node: Unix Installation1208440
-Node: Quick Installation1209122
-Node: Shell Startup Files1211536
-Node: Additional Configuration Options1212625
-Node: Configuration Philosophy1214940
-Node: Non-Unix Installation1217309
-Node: PC Installation1217769
-Node: PC Binary Installation1218607
-Node: PC Compiling1219042
-Node: PC Using1220159
-Node: Cygwin1223712
-Node: MSYS1224936
-Node: VMS Installation1225538
-Node: VMS Compilation1226329
-Ref: VMS Compilation-Footnote-11227558
-Node: VMS Dynamic Extensions1227616
-Node: VMS Installation Details1229301
-Node: VMS Running1231554
-Node: VMS GNV1235833
-Node: VMS Old Gawk1236568
-Node: Bugs1237039
-Node: Bug address1237702
-Node: Usenet1240684
-Node: Maintainers1241688
-Node: Other Versions1242873
-Node: Installation summary1249961
-Node: Notes1251170
-Node: Compatibility Mode1251964
-Node: Additions1252746
-Node: Accessing The Source1253671
-Node: Adding Code1255108
-Node: New Ports1261327
-Node: Derived Files1265702
-Ref: Derived Files-Footnote-11271362
-Ref: Derived Files-Footnote-21271397
-Ref: Derived Files-Footnote-31271995
-Node: Future Extensions1272109
-Node: Implementation Limitations1272767
-Node: Extension Design1273977
-Node: Old Extension Problems1275121
-Ref: Old Extension Problems-Footnote-11276639
-Node: Extension New Mechanism Goals1276696
-Ref: Extension New Mechanism Goals-Footnote-11280060
-Node: Extension Other Design Decisions1280249
-Node: Extension Future Growth1282362
-Node: Notes summary1282968
-Node: Basic Concepts1284126
-Node: Basic High Level1284807
-Ref: figure-general-flow1285089
-Ref: figure-process-flow1285774
-Ref: Basic High Level-Footnote-11289075
-Node: Basic Data Typing1289260
-Node: Glossary1292588
-Node: Copying1324473
-Node: GNU Free Documentation License1362016
-Node: Index1387136
+Node: Advanced Features Summary864106
+Node: Internationalization865950
+Node: I18N and L10N867430
+Node: Explaining gettext868117
+Ref: Explaining gettext-Footnote-1874009
+Ref: Explaining gettext-Footnote-2874194
+Node: Programmer i18n874359
+Ref: Programmer i18n-Footnote-1879308
+Node: Translator i18n879357
+Node: String Extraction880151
+Ref: String Extraction-Footnote-1881283
+Node: Printf Ordering881369
+Ref: Printf Ordering-Footnote-1884155
+Node: I18N Portability884219
+Ref: I18N Portability-Footnote-1886675
+Node: I18N Example886738
+Ref: I18N Example-Footnote-1890013
+Ref: I18N Example-Footnote-2890086
+Node: Gawk I18N890195
+Node: I18N Summary890844
+Node: Debugger892185
+Node: Debugging893185
+Node: Debugging Concepts893626
+Node: Debugging Terms895435
+Node: Awk Debugging898010
+Ref: Awk Debugging-Footnote-1898955
+Node: Sample Debugging Session899087
+Node: Debugger Invocation899621
+Node: Finding The Bug901007
+Node: List of Debugger Commands907481
+Node: Breakpoint Control908814
+Node: Debugger Execution Control912508
+Node: Viewing And Changing Data915870
+Node: Execution Stack919411
+Node: Debugger Info921048
+Node: Miscellaneous Debugger Commands925119
+Node: Readline Support930181
+Node: Limitations931077
+Node: Debugging Summary933631
+Node: Namespaces934910
+Node: Global Namespace936021
+Node: Qualified Names937419
+Node: Default Namespace938418
+Node: Changing The Namespace939159
+Node: Naming Rules940773
+Node: Internal Name Management942621
+Node: Namespace Example943663
+Node: Namespace And Features946225
+Node: Namespace Summary947660
+Node: Arbitrary Precision Arithmetic949137
+Node: Computer Arithmetic950624
+Ref: table-numeric-ranges954390
+Ref: table-floating-point-ranges954883
+Ref: Computer Arithmetic-Footnote-1955541
+Node: Math Definitions955598
+Ref: table-ieee-formats958914
+Ref: Math Definitions-Footnote-1959517
+Node: MPFR features959622
+Node: FP Math Caution961340
+Ref: FP Math Caution-Footnote-1962412
+Node: Inexactness of computations962781
+Node: Inexact representation963741
+Node: Comparing FP Values965101
+Node: Errors accumulate966342
+Node: Getting Accuracy967775
+Node: Try To Round970485
+Node: Setting precision971384
+Ref: table-predefined-precision-strings972081
+Node: Setting the rounding mode973911
+Ref: table-gawk-rounding-modes974285
+Ref: Setting the rounding mode-Footnote-1978216
+Node: Arbitrary Precision Integers978395
+Ref: Arbitrary Precision Integers-Footnote-1981570
+Node: Checking for MPFR981719
+Node: POSIX Floating Point Problems983193
+Ref: POSIX Floating Point Problems-Footnote-1987478
+Node: Floating point summary987516
+Node: Dynamic Extensions989706
+Node: Extension Intro991259
+Node: Plugin License992525
+Node: Extension Mechanism Outline993322
+Ref: figure-load-extension993761
+Ref: figure-register-new-function995326
+Ref: figure-call-new-function996418
+Node: Extension API Description998480
+Node: Extension API Functions Introduction1000193
+Ref: table-api-std-headers1002029
+Node: General Data Types1006278
+Ref: General Data Types-Footnote-11014908
+Node: Memory Allocation Functions1015207
+Ref: Memory Allocation Functions-Footnote-11019708
+Node: Constructor Functions1019807
+Node: API Ownership of MPFR and GMP Values1023273
+Node: Registration Functions1024586
+Node: Extension Functions1025286
+Node: Exit Callback Functions1030608
+Node: Extension Version String1031858
+Node: Input Parsers1032521
+Node: Output Wrappers1045242
+Node: Two-way processors1049754
+Node: Printing Messages1052019
+Ref: Printing Messages-Footnote-11053190
+Node: Updating ERRNO1053343
+Node: Requesting Values1054082
+Ref: table-value-types-returned1054819
+Node: Accessing Parameters1055755
+Node: Symbol Table Access1056992
+Node: Symbol table by name1057504
+Ref: Symbol table by name-Footnote-11060528
+Node: Symbol table by cookie1060656
+Ref: Symbol table by cookie-Footnote-11064841
+Node: Cached values1064905
+Ref: Cached values-Footnote-11068441
+Node: Array Manipulation1068594
+Ref: Array Manipulation-Footnote-11069685
+Node: Array Data Types1069722
+Ref: Array Data Types-Footnote-11072380
+Node: Array Functions1072472
+Node: Flattening Arrays1076970
+Node: Creating Arrays1083946
+Node: Redirection API1088713
+Node: Extension API Variables1091546
+Node: Extension Versioning1092257
+Ref: gawk-api-version1092686
+Node: Extension GMP/MPFR Versioning1094417
+Node: Extension API Informational Variables1096045
+Node: Extension API Boilerplate1097118
+Node: Changes from API V11101092
+Node: Finding Extensions1102664
+Node: Extension Example1103223
+Node: Internal File Description1104021
+Node: Internal File Ops1108101
+Ref: Internal File Ops-Footnote-11119451
+Node: Using Internal File Ops1119591
+Ref: Using Internal File Ops-Footnote-11121974
+Node: Extension Samples1122248
+Node: Extension Sample File Functions1123777
+Node: Extension Sample Fnmatch1131426
+Node: Extension Sample Fork1132913
+Node: Extension Sample Inplace1134131
+Node: Extension Sample Ord1137756
+Node: Extension Sample Readdir1138592
+Ref: table-readdir-file-types1139481
+Node: Extension Sample Revout1140548
+Node: Extension Sample Rev2way1141137
+Node: Extension Sample Read write array1141877
+Node: Extension Sample Readfile1143819
+Node: Extension Sample Time1144914
+Node: Extension Sample API Tests1146666
+Node: gawkextlib1147158
+Node: Extension summary1150076
+Node: Extension Exercises1153778
+Node: Language History1155020
+Node: V7/SVR3.11156676
+Node: SVR41158828
+Node: POSIX1160262
+Node: BTL1161643
+Node: POSIX/GNU1162372
+Node: Feature History1168150
+Node: Common Extensions1184469
+Node: Ranges and Locales1185752
+Ref: Ranges and Locales-Footnote-11190368
+Ref: Ranges and Locales-Footnote-21190395
+Ref: Ranges and Locales-Footnote-31190630
+Node: Contributors1190853
+Node: History summary1196850
+Node: Installation1198230
+Node: Gawk Distribution1199174
+Node: Getting1199658
+Node: Extracting1200621
+Node: Distribution contents1202259
+Node: Unix Installation1208739
+Node: Quick Installation1209421
+Node: Shell Startup Files1211835
+Node: Additional Configuration Options1212924
+Node: Configuration Philosophy1215239
+Node: Non-Unix Installation1217608
+Node: PC Installation1218068
+Node: PC Binary Installation1218906
+Node: PC Compiling1219341
+Node: PC Using1220458
+Node: Cygwin1224011
+Node: MSYS1225235
+Node: VMS Installation1225837
+Node: VMS Compilation1226628
+Ref: VMS Compilation-Footnote-11227857
+Node: VMS Dynamic Extensions1227915
+Node: VMS Installation Details1229600
+Node: VMS Running1231853
+Node: VMS GNV1236132
+Node: VMS Old Gawk1236867
+Node: Bugs1237338
+Node: Bug address1238001
+Node: Usenet1240983
+Node: Maintainers1241987
+Node: Other Versions1243172
+Node: Installation summary1250260
+Node: Notes1251469
+Node: Compatibility Mode1252263
+Node: Additions1253045
+Node: Accessing The Source1253970
+Node: Adding Code1255407
+Node: New Ports1261626
+Node: Derived Files1266001
+Ref: Derived Files-Footnote-11271661
+Ref: Derived Files-Footnote-21271696
+Ref: Derived Files-Footnote-31272294
+Node: Future Extensions1272408
+Node: Implementation Limitations1273066
+Node: Extension Design1274276
+Node: Old Extension Problems1275420
+Ref: Old Extension Problems-Footnote-11276938
+Node: Extension New Mechanism Goals1276995
+Ref: Extension New Mechanism Goals-Footnote-11280359
+Node: Extension Other Design Decisions1280548
+Node: Extension Future Growth1282661
+Node: Notes summary1283267
+Node: Basic Concepts1284425
+Node: Basic High Level1285106
+Ref: figure-general-flow1285388
+Ref: figure-process-flow1286073
+Ref: Basic High Level-Footnote-11289374
+Node: Basic Data Typing1289559
+Node: Glossary1292887
+Node: Copying1324772
+Node: GNU Free Documentation License1362315
+Node: Index1387435
 
 End Tag Table
 
diff --git a/doc/gawk.texi b/doc/gawk.texi
index 874a464..bb1cb41 100644
--- a/doc/gawk.texi
+++ b/doc/gawk.texi
@@ -59,7 +59,7 @@
 @c applies to and all the info about who's publishing this edition
 
 @c These apply across the board.
-@set UPDATE-MONTH July, 2020
+@set UPDATE-MONTH August, 2020
 @set VERSION 5.1
 @set PATCHLEVEL 0
 
@@ -29728,6 +29728,12 @@ front of the @code{BEGIN} and @code{END} rules,
 the @code{BEGINFILE} and @code{ENDFILE} rules,
 the pattern--action rules, and the functions.
 
+@item
+Functions are listed alphabetically. All functions in the @code{awk}
+namespace are listed first, in alphabetical order.  Then come the
+functions in namespaces.  The namespaces are listed in alphabetical order,
+and the functions within each namespace are listed alphabetically.
+
 @end itemize
 
 The profiled version of your program may not look exactly like what you
diff --git a/doc/gawktexi.in b/doc/gawktexi.in
index 9057e91..b147b63 100644
--- a/doc/gawktexi.in
+++ b/doc/gawktexi.in
@@ -54,7 +54,7 @@
 @c applies to and all the info about who's publishing this edition
 
 @c These apply across the board.
-@set UPDATE-MONTH July, 2020
+@set UPDATE-MONTH August, 2020
 @set VERSION 5.1
 @set PATCHLEVEL 0
 
@@ -28738,6 +28738,12 @@ front of the @code{BEGIN} and @code{END} rules,
 the @code{BEGINFILE} and @code{ENDFILE} rules,
 the pattern--action rules, and the functions.
 
+@item
+Functions are listed alphabetically. All functions in the @code{awk}
+namespace are listed first, in alphabetical order.  Then come the
+functions in namespaces.  The namespaces are listed in alphabetical order,
+and the functions within each namespace are listed alphabetically.
+
 @end itemize
 
 The profiled version of your program may not look exactly like what you
diff --git a/profile.c b/profile.c
index f959c22..44e171f 100644
--- a/profile.c
+++ b/profile.c
@@ -2059,6 +2059,9 @@ pp_namespace(const char *name, INSTRUCTION *comment)
        // info saved in Op_namespace instructions.
        current_namespace = name;
 
+       // force newline, could be after a comment
+       fprintf(prof_fp, "\n");
+
        if (do_profile)
                indent(SPACEOVER);
 
diff --git a/symbol.c b/symbol.c
index 2905236..844d8ee 100644
--- a/symbol.c
+++ b/symbol.c
@@ -366,7 +366,18 @@ comp_symbol(const void *v1, const void *v2)
        n1 = *npp1;
        n2 = *npp2;
 
-       return strcmp(n1->vname, n2->vname);
+       // names in awk namespace come out first
+       bool n1_is_in_ns = (strchr(n1->vname, ':') != NULL);
+       bool n2_is_in_ns = (strchr(n2->vname, ':') != NULL);
+
+       if (n1_is_in_ns && n2_is_in_ns)
+               return strcmp(n1->vname, n2->vname);
+       else if (n1_is_in_ns && ! n2_is_in_ns)
+               return 1;
+       else if (! n1_is_in_ns && n2_is_in_ns)
+               return -1;
+       else
+               return strcmp(n1->vname, n2->vname);
 }
 
 
diff --git a/test/ChangeLog b/test/ChangeLog
index a8b6e9a..73f7721 100644
--- a/test/ChangeLog
+++ b/test/ChangeLog
@@ -1,3 +1,7 @@
+2020-08-12         Arnold D. Robbins     <arnold@skeeve.com>
+
+       * nsprof1.ok, nsprof2.ok: Updated after code changes.
+
 2020-08-04         Arnold D. Robbins     <arnold@skeeve.com>
 
        Simplify handling of tests that have an -mpfr.ok file.
diff --git a/test/nsprof1.ok b/test/nsprof1.ok
index eacc270..cbd82cc 100644
--- a/test/nsprof1.ok
+++ b/test/nsprof1.ok
@@ -1,3 +1,4 @@
+
 @namespace "foo"
 
 BEGIN {
@@ -10,6 +11,7 @@ BEGIN {
        print "bar"
 }
 
+
 @namespace "stuff"
 
 
diff --git a/test/nsprof2.ok b/test/nsprof2.ok
index 5c3e27a..1fa220d 100644
--- a/test/nsprof2.ok
+++ b/test/nsprof2.ok
@@ -5,10 +5,13 @@
 # Revised October 2000
 # Revised December 2010
 # Revised July 2017
+
 @namespace "foo"       # this is foo
 
+
 @namespace "bar"       # this is bar
 
+
 @namespace "passwd"    # move to passwd namespace
 
 BEGIN {

http://git.sv.gnu.org/cgit/gawk.git/commit/?id=8110b4b66d9bf0f94b4595aadd4e9439df526fa5

commit 8110b4b66d9bf0f94b4595aadd4e9439df526fa5
Author: Arnold D. Robbins <arnold@skeeve.com>
Date:   Wed Aug 12 18:10:44 2020 +0300

    Upgrade to Bison 3.7.1.

diff --git a/ChangeLog b/ChangeLog
index 9f5b2f4..48225bc 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+2020-08-12         Arnold D. Robbins     <arnold@skeeve.com>
+
+       * awkgram.c, command.c: Regenerated with Bison 3.7.1.
+       * NEWS: Updated.
+
 2020-07-29         Arnold D. Robbins     <arnold@skeeve.com>
 
        * custom.h (FLEXIBLE_ARRAY_MEMBER): Define to 1 for dfa.h.
diff --git a/NEWS b/NEWS
index c879e11..6890c34 100644
--- a/NEWS
+++ b/NEWS
@@ -7,7 +7,7 @@
 Changes from 5.1.0 to 5.1.1
 ---------------------------
 
-1. Infrastructure upgrades: Bison 3.7, Gettext 0.20.2.
+1. Infrastructure upgrades: Bison 3.7.1, Gettext 0.20.2.
 
 2. asort and asorti now allow FUNCTAB and SYMTAB as the first argument if a
    second destination array is supplied. Similarly, using either array as
diff --git a/awkgram.c b/awkgram.c
index 2e55534..a8042f1 100644
--- a/awkgram.c
+++ b/awkgram.c
@@ -1,4 +1,4 @@
-/* A Bison parser, made by GNU Bison 3.7.  */
+/* A Bison parser, made by GNU Bison 3.7.1.  */
 
 /* Bison implementation for Yacc-like parsers in C
 
@@ -49,7 +49,7 @@
 #define YYBISON 1
 
 /* Bison version.  */
-#define YYBISON_VERSION "3.7"
+#define YYBISON_VERSION "3.7.1"
 
 /* Skeleton name.  */
 #define YYSKELETON_NAME "yacc.c"
diff --git a/command.c b/command.c
index abfd657..a922e51 100644
--- a/command.c
+++ b/command.c
@@ -1,4 +1,4 @@
-/* A Bison parser, made by GNU Bison 3.7.  */
+/* A Bison parser, made by GNU Bison 3.7.1.  */
 
 /* Bison implementation for Yacc-like parsers in C
 
@@ -49,7 +49,7 @@
 #define YYBISON 1
 
 /* Bison version.  */
-#define YYBISON_VERSION "3.7"
+#define YYBISON_VERSION "3.7.1"
 
 /* Skeleton name.  */
 #define YYSKELETON_NAME "yacc.c"

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

Summary of changes:
 ChangeLog       |  15 ++
 NEWS            |   6 +-
 awkgram.c       |   4 +-
 command.c       |   4 +-
 doc/ChangeLog   |   4 +
 doc/gawk.info   | 500 ++++++++++++++++++++++++++++----------------------------
 doc/gawk.texi   |   8 +-
 doc/gawktexi.in |   8 +-
 profile.c       |   3 +
 symbol.c        |  13 +-
 test/ChangeLog  |   4 +
 test/nsprof1.ok |   2 +
 test/nsprof2.ok |   3 +
 13 files changed, 319 insertions(+), 255 deletions(-)


hooks/post-receive
-- 
gawk



reply via email to

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