gawk-diffs
[Top][All Lists]
Advanced

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

[gawk-diffs] [SCM] gawk branch, gawk-4.1-stable, updated. gawk-4.1.0-377


From: Arnold Robbins
Subject: [gawk-diffs] [SCM] gawk branch, gawk-4.1-stable, updated. gawk-4.1.0-377-g8f2f7ef
Date: Sun, 03 Aug 2014 19:09:45 +0000

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-4.1-stable has been updated
       via  8f2f7ef2872a9a95dc1506504b60225ef98944f1 (commit)
       via  9a1a8c22e42af12f5859ef5d159b070f959912e6 (commit)
       via  831486481c397e13dc164524e54eddbc017fade3 (commit)
      from  e02ffe43c534493a40e9b9403cd91a6357514c85 (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=8f2f7ef2872a9a95dc1506504b60225ef98944f1

commit 8f2f7ef2872a9a95dc1506504b60225ef98944f1
Author: Arnold D. Robbins <address@hidden>
Date:   Sun Aug 3 22:06:51 2014 +0300

    Improve inrec setting ERRNO, doc of API get_record for errors.

diff --git a/ChangeLog b/ChangeLog
index 6d7a2da..ba56b20 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -2,6 +2,13 @@
 
        * builtin.c (format_tree): Don't need to check return value of
        wctombr for -2. Thanks to Eli Zaretskii for pointing this out.
+       
+       Unrelated:
+
+       * gawkapi.h: Fix doc for API get_record - errcode needs to
+       be greater than zero.
+       * interpret.h (r_interpret): Move setting of ERRNO to here, from ...
+       * io.c (inrec): ... here. Makes the code cleaner.
 
 2014-07-31         Arnold D. Robbins     <address@hidden>
 
diff --git a/doc/ChangeLog b/doc/ChangeLog
index 1b71b0e..6f88e3a 100644
--- a/doc/ChangeLog
+++ b/doc/ChangeLog
@@ -3,6 +3,11 @@
        * gawktexi.in: For sprintf %c document that if value is a valid
        wide character, gawk uses the low 8 bits of the value.
 
+       Unrelated:
+
+       * gawktexi.in: Fix doc for API get_record - errcode needs to
+       be greater than zero.
+
 2014-07-04         Arnold D. Robbins     <address@hidden>
 
        * gawktexi.in (Bracket Expressions): Add a note about how to
diff --git a/doc/gawk.info b/doc/gawk.info
index e1b07c8..8ca20cc 100644
--- a/doc/gawk.info
+++ b/doc/gawk.info
@@ -23161,10 +23161,10 @@ need to test for a `NULL' value.  `gawk' sets 
`*errcode' to zero, so
 there is no need to set it unless an error occurs.
 
    If an error does occur, the function should return `EOF' and set
-`*errcode' to a non-zero value.  In that case, if `*errcode' does not
-equal -1, `gawk' automatically updates the `ERRNO' variable based on
-the value of `*errcode'.  (In general, setting `*errcode = errno'
-should do the right thing.)
+`*errcode' to a value greater than zero.  In that case, if `*errcode'
+does not equal zero, `gawk' automatically updates the `ERRNO' variable
+based on the value of `*errcode'.  (In general, setting `*errcode =
+errno' should do the right thing.)
 
    As an alternative to supplying a function that returns an input
 record, you may instead supply a function that simply reads bytes, and
@@ -34379,126 +34379,126 @@ Node: Extension Functions925557
 Node: Exit Callback Functions927859
 Node: Extension Version String929108
 Node: Input Parsers929758
-Node: Output Wrappers939561
-Node: Two-way processors944077
-Node: Printing Messages946281
-Ref: Printing Messages-Footnote-1947358
-Node: Updating `ERRNO'947510
-Node: Accessing Parameters948249
-Node: Symbol Table Access949479
-Node: Symbol table by name949993
-Node: Symbol table by cookie951969
-Ref: Symbol table by cookie-Footnote-1956102
-Node: Cached values956165
-Ref: Cached values-Footnote-1959669
-Node: Array Manipulation959760
-Ref: Array Manipulation-Footnote-1960858
-Node: Array Data Types960897
-Ref: Array Data Types-Footnote-1963600
-Node: Array Functions963692
-Node: Flattening Arrays967566
-Node: Creating Arrays974418
-Node: Extension API Variables979149
-Node: Extension Versioning979785
-Node: Extension API Informational Variables981686
-Node: Extension API Boilerplate982772
-Node: Finding Extensions986576
-Node: Extension Example987136
-Node: Internal File Description987866
-Node: Internal File Ops991957
-Ref: Internal File Ops-Footnote-11003389
-Node: Using Internal File Ops1003529
-Ref: Using Internal File Ops-Footnote-11005876
-Node: Extension Samples1006144
-Node: Extension Sample File Functions1007668
-Node: Extension Sample Fnmatch1015236
-Node: Extension Sample Fork1016718
-Node: Extension Sample Inplace1017931
-Node: Extension Sample Ord1019606
-Node: Extension Sample Readdir1020442
-Ref: table-readdir-file-types1021298
-Node: Extension Sample Revout1022097
-Node: Extension Sample Rev2way1022688
-Node: Extension Sample Read write array1023429
-Node: Extension Sample Readfile1025308
-Node: Extension Sample API Tests1026408
-Node: Extension Sample Time1026933
-Node: gawkextlib1028248
-Node: Extension summary1031061
-Node: Extension Exercises1034754
-Node: Language History1035476
-Node: V7/SVR3.11037119
-Node: SVR41039439
-Node: POSIX1040881
-Node: BTL1042267
-Node: POSIX/GNU1043001
-Node: Feature History1048600
-Node: Common Extensions1061730
-Node: Ranges and Locales1063042
-Ref: Ranges and Locales-Footnote-11067659
-Ref: Ranges and Locales-Footnote-21067686
-Ref: Ranges and Locales-Footnote-31067920
-Node: Contributors1068141
-Node: History summary1073566
-Node: Installation1074935
-Node: Gawk Distribution1075886
-Node: Getting1076370
-Node: Extracting1077194
-Node: Distribution contents1078836
-Node: Unix Installation1084553
-Node: Quick Installation1085170
-Node: Additional Configuration Options1087612
-Node: Configuration Philosophy1089350
-Node: Non-Unix Installation1091701
-Node: PC Installation1092159
-Node: PC Binary Installation1093470
-Node: PC Compiling1095318
-Ref: PC Compiling-Footnote-11098317
-Node: PC Testing1098422
-Node: PC Using1099598
-Node: Cygwin1103756
-Node: MSYS1104565
-Node: VMS Installation1105079
-Node: VMS Compilation1105875
-Ref: VMS Compilation-Footnote-11107097
-Node: VMS Dynamic Extensions1107155
-Node: VMS Installation Details1108528
-Node: VMS Running1110780
-Node: VMS GNV1113614
-Node: VMS Old Gawk1114337
-Node: Bugs1114807
-Node: Other Versions1118811
-Node: Installation summary1125066
-Node: Notes1126122
-Node: Compatibility Mode1126987
-Node: Additions1127769
-Node: Accessing The Source1128694
-Node: Adding Code1130130
-Node: New Ports1136308
-Node: Derived Files1140789
-Ref: Derived Files-Footnote-11145870
-Ref: Derived Files-Footnote-21145904
-Ref: Derived Files-Footnote-31146500
-Node: Future Extensions1146614
-Node: Implementation Limitations1147220
-Node: Extension Design1148468
-Node: Old Extension Problems1149622
-Ref: Old Extension Problems-Footnote-11151139
-Node: Extension New Mechanism Goals1151196
-Ref: Extension New Mechanism Goals-Footnote-11154556
-Node: Extension Other Design Decisions1154745
-Node: Extension Future Growth1156851
-Node: Old Extension Mechanism1157687
-Node: Notes summary1159449
-Node: Basic Concepts1160635
-Node: Basic High Level1161316
-Ref: figure-general-flow1161588
-Ref: figure-process-flow1162187
-Ref: Basic High Level-Footnote-11165416
-Node: Basic Data Typing1165601
-Node: Glossary1168929
-Node: Copying1194081
-Node: GNU Free Documentation License1231637
-Node: Index1256773
+Node: Output Wrappers939572
+Node: Two-way processors944088
+Node: Printing Messages946292
+Ref: Printing Messages-Footnote-1947369
+Node: Updating `ERRNO'947521
+Node: Accessing Parameters948260
+Node: Symbol Table Access949490
+Node: Symbol table by name950004
+Node: Symbol table by cookie951980
+Ref: Symbol table by cookie-Footnote-1956113
+Node: Cached values956176
+Ref: Cached values-Footnote-1959680
+Node: Array Manipulation959771
+Ref: Array Manipulation-Footnote-1960869
+Node: Array Data Types960908
+Ref: Array Data Types-Footnote-1963611
+Node: Array Functions963703
+Node: Flattening Arrays967577
+Node: Creating Arrays974429
+Node: Extension API Variables979160
+Node: Extension Versioning979796
+Node: Extension API Informational Variables981697
+Node: Extension API Boilerplate982783
+Node: Finding Extensions986587
+Node: Extension Example987147
+Node: Internal File Description987877
+Node: Internal File Ops991968
+Ref: Internal File Ops-Footnote-11003400
+Node: Using Internal File Ops1003540
+Ref: Using Internal File Ops-Footnote-11005887
+Node: Extension Samples1006155
+Node: Extension Sample File Functions1007679
+Node: Extension Sample Fnmatch1015247
+Node: Extension Sample Fork1016729
+Node: Extension Sample Inplace1017942
+Node: Extension Sample Ord1019617
+Node: Extension Sample Readdir1020453
+Ref: table-readdir-file-types1021309
+Node: Extension Sample Revout1022108
+Node: Extension Sample Rev2way1022699
+Node: Extension Sample Read write array1023440
+Node: Extension Sample Readfile1025319
+Node: Extension Sample API Tests1026419
+Node: Extension Sample Time1026944
+Node: gawkextlib1028259
+Node: Extension summary1031072
+Node: Extension Exercises1034765
+Node: Language History1035487
+Node: V7/SVR3.11037130
+Node: SVR41039450
+Node: POSIX1040892
+Node: BTL1042278
+Node: POSIX/GNU1043012
+Node: Feature History1048611
+Node: Common Extensions1061741
+Node: Ranges and Locales1063053
+Ref: Ranges and Locales-Footnote-11067670
+Ref: Ranges and Locales-Footnote-21067697
+Ref: Ranges and Locales-Footnote-31067931
+Node: Contributors1068152
+Node: History summary1073577
+Node: Installation1074946
+Node: Gawk Distribution1075897
+Node: Getting1076381
+Node: Extracting1077205
+Node: Distribution contents1078847
+Node: Unix Installation1084564
+Node: Quick Installation1085181
+Node: Additional Configuration Options1087623
+Node: Configuration Philosophy1089361
+Node: Non-Unix Installation1091712
+Node: PC Installation1092170
+Node: PC Binary Installation1093481
+Node: PC Compiling1095329
+Ref: PC Compiling-Footnote-11098328
+Node: PC Testing1098433
+Node: PC Using1099609
+Node: Cygwin1103767
+Node: MSYS1104576
+Node: VMS Installation1105090
+Node: VMS Compilation1105886
+Ref: VMS Compilation-Footnote-11107108
+Node: VMS Dynamic Extensions1107166
+Node: VMS Installation Details1108539
+Node: VMS Running1110791
+Node: VMS GNV1113625
+Node: VMS Old Gawk1114348
+Node: Bugs1114818
+Node: Other Versions1118822
+Node: Installation summary1125077
+Node: Notes1126133
+Node: Compatibility Mode1126998
+Node: Additions1127780
+Node: Accessing The Source1128705
+Node: Adding Code1130141
+Node: New Ports1136319
+Node: Derived Files1140800
+Ref: Derived Files-Footnote-11145881
+Ref: Derived Files-Footnote-21145915
+Ref: Derived Files-Footnote-31146511
+Node: Future Extensions1146625
+Node: Implementation Limitations1147231
+Node: Extension Design1148479
+Node: Old Extension Problems1149633
+Ref: Old Extension Problems-Footnote-11151150
+Node: Extension New Mechanism Goals1151207
+Ref: Extension New Mechanism Goals-Footnote-11154567
+Node: Extension Other Design Decisions1154756
+Node: Extension Future Growth1156862
+Node: Old Extension Mechanism1157698
+Node: Notes summary1159460
+Node: Basic Concepts1160646
+Node: Basic High Level1161327
+Ref: figure-general-flow1161599
+Ref: figure-process-flow1162198
+Ref: Basic High Level-Footnote-11165427
+Node: Basic Data Typing1165612
+Node: Glossary1168940
+Node: Copying1194092
+Node: GNU Free Documentation License1231648
+Node: Index1256784
 
 End Tag Table
diff --git a/doc/gawk.texi b/doc/gawk.texi
index ab98dda..b9cecd0 100644
--- a/doc/gawk.texi
+++ b/doc/gawk.texi
@@ -31830,8 +31830,8 @@ need to test for a @code{NULL} value.  @command{gawk} 
sets @code{*errcode}
 to zero, so there is no need to set it unless an error occurs.
 
 If an error does occur, the function should return @code{EOF} and set
address@hidden to a non-zero value.  In that case, if @code{*errcode}
-does not equal @minus{}1, @command{gawk} automatically updates
address@hidden to a value greater than zero.  In that case, if @code{*errcode}
+does not equal zero, @command{gawk} automatically updates
 the @code{ERRNO} variable based on the value of @code{*errcode}.
 (In general, setting @samp{*errcode = errno} should do the right thing.)
 
diff --git a/doc/gawktexi.in b/doc/gawktexi.in
index 7039325..f13a6f3 100644
--- a/doc/gawktexi.in
+++ b/doc/gawktexi.in
@@ -30945,8 +30945,8 @@ need to test for a @code{NULL} value.  @command{gawk} 
sets @code{*errcode}
 to zero, so there is no need to set it unless an error occurs.
 
 If an error does occur, the function should return @code{EOF} and set
address@hidden to a non-zero value.  In that case, if @code{*errcode}
-does not equal @minus{}1, @command{gawk} automatically updates
address@hidden to a value greater than zero.  In that case, if @code{*errcode}
+does not equal zero, @command{gawk} automatically updates
 the @code{ERRNO} variable based on the value of @code{*errcode}.
 (In general, setting @samp{*errcode = errno} should do the right thing.)
 
diff --git a/gawkapi.h b/gawkapi.h
index 5ccadc2..090cf79 100644
--- a/gawkapi.h
+++ b/gawkapi.h
@@ -142,8 +142,8 @@ typedef struct awk_input {
         * so there is no need to set it unless an error occurs.
         *
         * If an error does occur, the function should return EOF and set
-        * *errcode to a non-zero value.  In that case, if *errcode does not
-        * equal -1, gawk will automatically update the ERRNO variable based
+        * *errcode to a positive value.  In that case, if *errcode is greater
+        * than zero, gawk will automatically update the ERRNO variable based
         * on the value of *errcode (e.g., setting *errcode = errno should do
         * the right thing).
         */
diff --git a/interpret.h b/interpret.h
index ff9ba76..c26a9d4 100644
--- a/interpret.h
+++ b/interpret.h
@@ -1192,9 +1192,12 @@ match_re:
                        }
 
                        if (! inrec(curfile, & errcode)) {
-                               if (errcode > 0 && (do_traditional || ! 
pc->has_endfile))
-                                       fatal(_("error reading input file `%s': 
%s"),
+                               if (errcode > 0) {
+                                       update_ERRNO_int(errcode);
+                                       if (do_traditional || ! pc->has_endfile)
+                                               fatal(_("error reading input 
file `%s': %s"),
                                                curfile->public.name, 
strerror(errcode));
+                               }
 
                                JUMPTO(ni);
                        } /* else
diff --git a/io.c b/io.c
index 45b5015..7930904 100644
--- a/io.c
+++ b/io.c
@@ -590,16 +590,12 @@ inrec(IOBUF *iop, int *errcode)
 
        if (cnt == EOF) {
                retval = false;
-               if (*errcode > 0)
-                       update_ERRNO_int(*errcode);
        } else {
                INCREMENT_REC(NR);
                INCREMENT_REC(FNR);
                set_record(begin, cnt);
-               if (*errcode > 0) {
-                       update_ERRNO_int(*errcode);
+               if (*errcode > 0)
                        retval = false;
-               }
        }
 
        return retval;

http://git.sv.gnu.org/cgit/gawk.git/commit/?id=9a1a8c22e42af12f5859ef5d159b070f959912e6

commit 9a1a8c22e42af12f5859ef5d159b070f959912e6
Author: Arnold D. Robbins <address@hidden>
Date:   Sun Aug 3 22:03:03 2014 +0300

    Minor code improvement for sprintf %c.

diff --git a/ChangeLog b/ChangeLog
index 0072c80..6d7a2da 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+2014-08-03         Arnold D. Robbins     <address@hidden>
+
+       * builtin.c (format_tree): Don't need to check return value of
+       wctombr for -2. Thanks to Eli Zaretskii for pointing this out.
+
 2014-07-31         Arnold D. Robbins     <address@hidden>
 
        * builtin.c (format_tree): Make %c handling more sane on Windows.
diff --git a/builtin.c b/builtin.c
index 7d314dc..077575f 100644
--- a/builtin.c
+++ b/builtin.c
@@ -1081,8 +1081,7 @@ check_pos:
 
                                        count = wcrtomb(buf, wc, & mbs);
                                        if (count == 0
-                                           || count == (size_t)-1
-                                           || count == (size_t)-2) {
+                                           || count == (size_t) -1) {
                                                if (do_lint)
                                                        lintwarn(
                                                _("[s]printf: value %g is not a 
valid wide character"),

http://git.sv.gnu.org/cgit/gawk.git/commit/?id=831486481c397e13dc164524e54eddbc017fade3

commit 831486481c397e13dc164524e54eddbc017fade3
Author: Arnold D. Robbins <address@hidden>
Date:   Sun Aug 3 22:02:41 2014 +0300

    Document more about sprintf %c.

diff --git a/doc/ChangeLog b/doc/ChangeLog
index 4364642..1b71b0e 100644
--- a/doc/ChangeLog
+++ b/doc/ChangeLog
@@ -1,3 +1,8 @@
+2014-08-03         Arnold D. Robbins     <address@hidden>
+
+       * gawktexi.in: For sprintf %c document that if value is a valid
+       wide character, gawk uses the low 8 bits of the value.
+
 2014-07-04         Arnold D. Robbins     <address@hidden>
 
        * gawktexi.in (Bracket Expressions): Add a note about how to
diff --git a/doc/gawk.info b/doc/gawk.info
index 8b5e572..e1b07c8 100644
--- a/doc/gawk.info
+++ b/doc/gawk.info
@@ -6282,7 +6282,9 @@ width.  Here is a list of the format-control letters:
           valid wide character and then to print the multibyte encoding
           of that character.  Similarly, when printing a numeric value,
           `gawk' allows the value to be within the numeric range of
-          values that can be held in a wide character.
+          values that can be held in a wide character.  If the
+          conversion to multibyte encoding fails, `gawk' uses the low
+          eight bits of the value as the character to print.
 
           Other `awk' versions generally restrict themselves to printing
           the first byte of a string or to numeric values within the
@@ -34072,431 +34074,431 @@ Node: OFMT271992
 Node: Printf273350
 Node: Basic Printf274256
 Node: Control Letters275795
-Node: Format Modifiers279647
-Node: Printf Examples285674
-Node: Redirection288138
-Node: Special Files295110
-Node: Special FD295641
-Ref: Special FD-Footnote-1299265
-Node: Special Network299339
-Node: Special Caveats300189
-Node: Close Files And Pipes300985
-Ref: Close Files And Pipes-Footnote-1308146
-Ref: Close Files And Pipes-Footnote-2308294
-Node: Output Summary308444
-Node: Output exercises309441
-Node: Expressions310121
-Node: Values311306
-Node: Constants311982
-Node: Scalar Constants312662
-Ref: Scalar Constants-Footnote-1313521
-Node: Nondecimal-numbers313771
-Node: Regexp Constants316771
-Node: Using Constant Regexps317246
-Node: Variables320316
-Node: Using Variables320971
-Node: Assignment Options322695
-Node: Conversion324570
-Node: Strings And Numbers325094
-Ref: Strings And Numbers-Footnote-1328156
-Node: Locale influences conversions328265
-Ref: table-locale-affects330982
-Node: All Operators331570
-Node: Arithmetic Ops332200
-Node: Concatenation334705
-Ref: Concatenation-Footnote-1337501
-Node: Assignment Ops337621
-Ref: table-assign-ops342604
-Node: Increment Ops343921
-Node: Truth Values and Conditions347359
-Node: Truth Values348442
-Node: Typing and Comparison349491
-Node: Variable Typing350284
-Ref: Variable Typing-Footnote-1354184
-Node: Comparison Operators354306
-Ref: table-relational-ops354716
-Node: POSIX String Comparison358266
-Ref: POSIX String Comparison-Footnote-1359350
-Node: Boolean Ops359488
-Ref: Boolean Ops-Footnote-1363558
-Node: Conditional Exp363649
-Node: Function Calls365376
-Node: Precedence369256
-Node: Locales372925
-Node: Expressions Summary374556
-Node: Patterns and Actions377097
-Node: Pattern Overview378213
-Node: Regexp Patterns379890
-Node: Expression Patterns380433
-Node: Ranges384214
-Node: BEGIN/END387320
-Node: Using BEGIN/END388082
-Ref: Using BEGIN/END-Footnote-1390818
-Node: I/O And BEGIN/END390924
-Node: BEGINFILE/ENDFILE393209
-Node: Empty396140
-Node: Using Shell Variables396457
-Node: Action Overview398740
-Node: Statements401067
-Node: If Statement402915
-Node: While Statement404413
-Node: Do Statement406457
-Node: For Statement407613
-Node: Switch Statement410765
-Node: Break Statement412868
-Node: Continue Statement414923
-Node: Next Statement416716
-Node: Nextfile Statement419106
-Node: Exit Statement421761
-Node: Built-in Variables424165
-Node: User-modified425292
-Ref: User-modified-Footnote-1432981
-Node: Auto-set433043
-Ref: Auto-set-Footnote-1445625
-Ref: Auto-set-Footnote-2445830
-Node: ARGC and ARGV445886
-Node: Pattern Action Summary449740
-Node: Arrays451963
-Node: Array Basics453512
-Node: Array Intro454338
-Ref: figure-array-elements456311
-Node: Reference to Elements458718
-Node: Assigning Elements460991
-Node: Array Example461482
-Node: Scanning an Array463214
-Node: Controlling Scanning466229
-Ref: Controlling Scanning-Footnote-1471402
-Node: Delete471718
-Ref: Delete-Footnote-1474483
-Node: Numeric Array Subscripts474540
-Node: Uninitialized Subscripts476723
-Node: Multidimensional478348
-Node: Multiscanning481441
-Node: Arrays of Arrays483030
-Node: Arrays Summary487693
-Node: Functions489798
-Node: Built-in490671
-Node: Calling Built-in491749
-Node: Numeric Functions493737
-Ref: Numeric Functions-Footnote-1497571
-Ref: Numeric Functions-Footnote-2497928
-Ref: Numeric Functions-Footnote-3497976
-Node: String Functions498245
-Ref: String Functions-Footnote-1521256
-Ref: String Functions-Footnote-2521385
-Ref: String Functions-Footnote-3521633
-Node: Gory Details521720
-Ref: table-sub-escapes523389
-Ref: table-sub-posix-92524743
-Ref: table-sub-proposed526094
-Ref: table-posix-sub527448
-Ref: table-gensub-escapes528993
-Ref: Gory Details-Footnote-1530169
-Ref: Gory Details-Footnote-2530220
-Node: I/O Functions530371
-Ref: I/O Functions-Footnote-1537494
-Node: Time Functions537641
-Ref: Time Functions-Footnote-1548105
-Ref: Time Functions-Footnote-2548173
-Ref: Time Functions-Footnote-3548331
-Ref: Time Functions-Footnote-4548442
-Ref: Time Functions-Footnote-5548554
-Ref: Time Functions-Footnote-6548781
-Node: Bitwise Functions549047
-Ref: table-bitwise-ops549609
-Ref: Bitwise Functions-Footnote-1553854
-Node: Type Functions554038
-Node: I18N Functions555180
-Node: User-defined556825
-Node: Definition Syntax557629
-Ref: Definition Syntax-Footnote-1562808
-Node: Function Example562877
-Ref: Function Example-Footnote-1565521
-Node: Function Caveats565543
-Node: Calling A Function566061
-Node: Variable Scope567016
-Node: Pass By Value/Reference570004
-Node: Return Statement573512
-Node: Dynamic Typing576496
-Node: Indirect Calls577425
-Node: Functions Summary587138
-Node: Library Functions589677
-Ref: Library Functions-Footnote-1593295
-Ref: Library Functions-Footnote-2593438
-Node: Library Names593609
-Ref: Library Names-Footnote-1597082
-Ref: Library Names-Footnote-2597302
-Node: General Functions597388
-Node: Strtonum Function598416
-Node: Assert Function601196
-Node: Round Function604522
-Node: Cliff Random Function606063
-Node: Ordinal Functions607079
-Ref: Ordinal Functions-Footnote-1610156
-Ref: Ordinal Functions-Footnote-2610408
-Node: Join Function610619
-Ref: Join Function-Footnote-1612390
-Node: Getlocaltime Function612590
-Node: Readfile Function616326
-Node: Data File Management618165
-Node: Filetrans Function618797
-Node: Rewind Function622866
-Node: File Checking624253
-Ref: File Checking-Footnote-1625385
-Node: Empty Files625586
-Node: Ignoring Assigns627565
-Node: Getopt Function629119
-Ref: Getopt Function-Footnote-1640422
-Node: Passwd Functions640625
-Ref: Passwd Functions-Footnote-1649604
-Node: Group Functions649692
-Ref: Group Functions-Footnote-1657633
-Node: Walking Arrays657846
-Node: Library Functions Summary659449
-Node: Library exercises660837
-Node: Sample Programs662117
-Node: Running Examples662887
-Node: Clones663615
-Node: Cut Program664839
-Node: Egrep Program674707
-Ref: Egrep Program-Footnote-1682678
-Node: Id Program682788
-Node: Split Program686452
-Ref: Split Program-Footnote-1689990
-Node: Tee Program690118
-Node: Uniq Program692925
-Node: Wc Program700355
-Ref: Wc Program-Footnote-1704620
-Node: Miscellaneous Programs704712
-Node: Dupword Program705925
-Node: Alarm Program707956
-Node: Translate Program712770
-Ref: Translate Program-Footnote-1717161
-Ref: Translate Program-Footnote-2717431
-Node: Labels Program717565
-Ref: Labels Program-Footnote-1720936
-Node: Word Sorting721020
-Node: History Sorting725063
-Node: Extract Program726899
-Node: Simple Sed734435
-Node: Igawk Program737497
-Ref: Igawk Program-Footnote-1751808
-Ref: Igawk Program-Footnote-2752009
-Node: Anagram Program752147
-Node: Signature Program755215
-Node: Programs Summary756462
-Node: Programs Exercises757677
-Node: Advanced Features761328
-Node: Nondecimal Data763276
-Node: Array Sorting764853
-Node: Controlling Array Traversal765550
-Node: Array Sorting Functions773830
-Ref: Array Sorting Functions-Footnote-1777737
-Node: Two-way I/O777931
-Ref: Two-way I/O-Footnote-1783447
-Node: TCP/IP Networking783529
-Node: Profiling786373
-Node: Advanced Features Summary793915
-Node: Internationalization795779
-Node: I18N and L10N797259
-Node: Explaining gettext797945
-Ref: Explaining gettext-Footnote-1803085
-Ref: Explaining gettext-Footnote-2803269
-Node: Programmer i18n803434
-Node: Translator i18n807659
-Node: String Extraction808453
-Ref: String Extraction-Footnote-1809414
-Node: Printf Ordering809500
-Ref: Printf Ordering-Footnote-1812282
-Node: I18N Portability812346
-Ref: I18N Portability-Footnote-1814795
-Node: I18N Example814858
-Ref: I18N Example-Footnote-1817580
-Node: Gawk I18N817652
-Node: I18N Summary818290
-Node: Debugger819629
-Node: Debugging820651
-Node: Debugging Concepts821092
-Node: Debugging Terms822948
-Node: Awk Debugging825545
-Node: Sample Debugging Session826437
-Node: Debugger Invocation826957
-Node: Finding The Bug828290
-Node: List of Debugger Commands834772
-Node: Breakpoint Control836104
-Node: Debugger Execution Control839768
-Node: Viewing And Changing Data843128
-Node: Execution Stack846486
-Node: Debugger Info847999
-Node: Miscellaneous Debugger Commands851993
-Node: Readline Support857177
-Node: Limitations858069
-Node: Debugging Summary860343
-Node: Arbitrary Precision Arithmetic861507
-Node: Computer Arithmetic862836
-Ref: Computer Arithmetic-Footnote-1867223
-Node: Math Definitions867280
-Ref: table-ieee-formats870164
-Node: MPFR features870668
-Node: FP Math Caution872310
-Ref: FP Math Caution-Footnote-1873351
-Node: Inexactness of computations873720
-Node: Inexact representation874668
-Node: Comparing FP Values876023
-Node: Errors accumulate876987
-Node: Getting Accuracy878420
-Node: Try To Round881079
-Node: Setting precision881978
-Ref: table-predefined-precision-strings882660
-Node: Setting the rounding mode884453
-Ref: table-gawk-rounding-modes884817
-Ref: Setting the rounding mode-Footnote-1888271
-Node: Arbitrary Precision Integers888450
-Ref: Arbitrary Precision Integers-Footnote-1891453
-Node: POSIX Floating Point Problems891602
-Ref: POSIX Floating Point Problems-Footnote-1895478
-Node: Floating point summary895516
-Node: Dynamic Extensions897733
-Node: Extension Intro899285
-Node: Plugin License900550
-Node: Extension Mechanism Outline901235
-Ref: figure-load-extension901659
-Ref: figure-load-new-function903144
-Ref: figure-call-new-function904146
-Node: Extension API Description906130
-Node: Extension API Functions Introduction907580
-Node: General Data Types912445
-Ref: General Data Types-Footnote-1918138
-Node: Requesting Values918437
-Ref: table-value-types-returned919174
-Node: Memory Allocation Functions920132
-Ref: Memory Allocation Functions-Footnote-1922879
-Node: Constructor Functions922975
-Node: Registration Functions924733
-Node: Extension Functions925418
-Node: Exit Callback Functions927720
-Node: Extension Version String928969
-Node: Input Parsers929619
-Node: Output Wrappers939422
-Node: Two-way processors943938
-Node: Printing Messages946142
-Ref: Printing Messages-Footnote-1947219
-Node: Updating `ERRNO'947371
-Node: Accessing Parameters948110
-Node: Symbol Table Access949340
-Node: Symbol table by name949854
-Node: Symbol table by cookie951830
-Ref: Symbol table by cookie-Footnote-1955963
-Node: Cached values956026
-Ref: Cached values-Footnote-1959530
-Node: Array Manipulation959621
-Ref: Array Manipulation-Footnote-1960719
-Node: Array Data Types960758
-Ref: Array Data Types-Footnote-1963461
-Node: Array Functions963553
-Node: Flattening Arrays967427
-Node: Creating Arrays974279
-Node: Extension API Variables979010
-Node: Extension Versioning979646
-Node: Extension API Informational Variables981547
-Node: Extension API Boilerplate982633
-Node: Finding Extensions986437
-Node: Extension Example986997
-Node: Internal File Description987727
-Node: Internal File Ops991818
-Ref: Internal File Ops-Footnote-11003250
-Node: Using Internal File Ops1003390
-Ref: Using Internal File Ops-Footnote-11005737
-Node: Extension Samples1006005
-Node: Extension Sample File Functions1007529
-Node: Extension Sample Fnmatch1015097
-Node: Extension Sample Fork1016579
-Node: Extension Sample Inplace1017792
-Node: Extension Sample Ord1019467
-Node: Extension Sample Readdir1020303
-Ref: table-readdir-file-types1021159
-Node: Extension Sample Revout1021958
-Node: Extension Sample Rev2way1022549
-Node: Extension Sample Read write array1023290
-Node: Extension Sample Readfile1025169
-Node: Extension Sample API Tests1026269
-Node: Extension Sample Time1026794
-Node: gawkextlib1028109
-Node: Extension summary1030922
-Node: Extension Exercises1034615
-Node: Language History1035337
-Node: V7/SVR3.11036980
-Node: SVR41039300
-Node: POSIX1040742
-Node: BTL1042128
-Node: POSIX/GNU1042862
-Node: Feature History1048461
-Node: Common Extensions1061591
-Node: Ranges and Locales1062903
-Ref: Ranges and Locales-Footnote-11067520
-Ref: Ranges and Locales-Footnote-21067547
-Ref: Ranges and Locales-Footnote-31067781
-Node: Contributors1068002
-Node: History summary1073427
-Node: Installation1074796
-Node: Gawk Distribution1075747
-Node: Getting1076231
-Node: Extracting1077055
-Node: Distribution contents1078697
-Node: Unix Installation1084414
-Node: Quick Installation1085031
-Node: Additional Configuration Options1087473
-Node: Configuration Philosophy1089211
-Node: Non-Unix Installation1091562
-Node: PC Installation1092020
-Node: PC Binary Installation1093331
-Node: PC Compiling1095179
-Ref: PC Compiling-Footnote-11098178
-Node: PC Testing1098283
-Node: PC Using1099459
-Node: Cygwin1103617
-Node: MSYS1104426
-Node: VMS Installation1104940
-Node: VMS Compilation1105736
-Ref: VMS Compilation-Footnote-11106958
-Node: VMS Dynamic Extensions1107016
-Node: VMS Installation Details1108389
-Node: VMS Running1110641
-Node: VMS GNV1113475
-Node: VMS Old Gawk1114198
-Node: Bugs1114668
-Node: Other Versions1118672
-Node: Installation summary1124927
-Node: Notes1125983
-Node: Compatibility Mode1126848
-Node: Additions1127630
-Node: Accessing The Source1128555
-Node: Adding Code1129991
-Node: New Ports1136169
-Node: Derived Files1140650
-Ref: Derived Files-Footnote-11145731
-Ref: Derived Files-Footnote-21145765
-Ref: Derived Files-Footnote-31146361
-Node: Future Extensions1146475
-Node: Implementation Limitations1147081
-Node: Extension Design1148329
-Node: Old Extension Problems1149483
-Ref: Old Extension Problems-Footnote-11151000
-Node: Extension New Mechanism Goals1151057
-Ref: Extension New Mechanism Goals-Footnote-11154417
-Node: Extension Other Design Decisions1154606
-Node: Extension Future Growth1156712
-Node: Old Extension Mechanism1157548
-Node: Notes summary1159310
-Node: Basic Concepts1160496
-Node: Basic High Level1161177
-Ref: figure-general-flow1161449
-Ref: figure-process-flow1162048
-Ref: Basic High Level-Footnote-11165277
-Node: Basic Data Typing1165462
-Node: Glossary1168790
-Node: Copying1193942
-Node: GNU Free Documentation License1231498
-Node: Index1256634
+Node: Format Modifiers279786
+Node: Printf Examples285813
+Node: Redirection288277
+Node: Special Files295249
+Node: Special FD295780
+Ref: Special FD-Footnote-1299404
+Node: Special Network299478
+Node: Special Caveats300328
+Node: Close Files And Pipes301124
+Ref: Close Files And Pipes-Footnote-1308285
+Ref: Close Files And Pipes-Footnote-2308433
+Node: Output Summary308583
+Node: Output exercises309580
+Node: Expressions310260
+Node: Values311445
+Node: Constants312121
+Node: Scalar Constants312801
+Ref: Scalar Constants-Footnote-1313660
+Node: Nondecimal-numbers313910
+Node: Regexp Constants316910
+Node: Using Constant Regexps317385
+Node: Variables320455
+Node: Using Variables321110
+Node: Assignment Options322834
+Node: Conversion324709
+Node: Strings And Numbers325233
+Ref: Strings And Numbers-Footnote-1328295
+Node: Locale influences conversions328404
+Ref: table-locale-affects331121
+Node: All Operators331709
+Node: Arithmetic Ops332339
+Node: Concatenation334844
+Ref: Concatenation-Footnote-1337640
+Node: Assignment Ops337760
+Ref: table-assign-ops342743
+Node: Increment Ops344060
+Node: Truth Values and Conditions347498
+Node: Truth Values348581
+Node: Typing and Comparison349630
+Node: Variable Typing350423
+Ref: Variable Typing-Footnote-1354323
+Node: Comparison Operators354445
+Ref: table-relational-ops354855
+Node: POSIX String Comparison358405
+Ref: POSIX String Comparison-Footnote-1359489
+Node: Boolean Ops359627
+Ref: Boolean Ops-Footnote-1363697
+Node: Conditional Exp363788
+Node: Function Calls365515
+Node: Precedence369395
+Node: Locales373064
+Node: Expressions Summary374695
+Node: Patterns and Actions377236
+Node: Pattern Overview378352
+Node: Regexp Patterns380029
+Node: Expression Patterns380572
+Node: Ranges384353
+Node: BEGIN/END387459
+Node: Using BEGIN/END388221
+Ref: Using BEGIN/END-Footnote-1390957
+Node: I/O And BEGIN/END391063
+Node: BEGINFILE/ENDFILE393348
+Node: Empty396279
+Node: Using Shell Variables396596
+Node: Action Overview398879
+Node: Statements401206
+Node: If Statement403054
+Node: While Statement404552
+Node: Do Statement406596
+Node: For Statement407752
+Node: Switch Statement410904
+Node: Break Statement413007
+Node: Continue Statement415062
+Node: Next Statement416855
+Node: Nextfile Statement419245
+Node: Exit Statement421900
+Node: Built-in Variables424304
+Node: User-modified425431
+Ref: User-modified-Footnote-1433120
+Node: Auto-set433182
+Ref: Auto-set-Footnote-1445764
+Ref: Auto-set-Footnote-2445969
+Node: ARGC and ARGV446025
+Node: Pattern Action Summary449879
+Node: Arrays452102
+Node: Array Basics453651
+Node: Array Intro454477
+Ref: figure-array-elements456450
+Node: Reference to Elements458857
+Node: Assigning Elements461130
+Node: Array Example461621
+Node: Scanning an Array463353
+Node: Controlling Scanning466368
+Ref: Controlling Scanning-Footnote-1471541
+Node: Delete471857
+Ref: Delete-Footnote-1474622
+Node: Numeric Array Subscripts474679
+Node: Uninitialized Subscripts476862
+Node: Multidimensional478487
+Node: Multiscanning481580
+Node: Arrays of Arrays483169
+Node: Arrays Summary487832
+Node: Functions489937
+Node: Built-in490810
+Node: Calling Built-in491888
+Node: Numeric Functions493876
+Ref: Numeric Functions-Footnote-1497710
+Ref: Numeric Functions-Footnote-2498067
+Ref: Numeric Functions-Footnote-3498115
+Node: String Functions498384
+Ref: String Functions-Footnote-1521395
+Ref: String Functions-Footnote-2521524
+Ref: String Functions-Footnote-3521772
+Node: Gory Details521859
+Ref: table-sub-escapes523528
+Ref: table-sub-posix-92524882
+Ref: table-sub-proposed526233
+Ref: table-posix-sub527587
+Ref: table-gensub-escapes529132
+Ref: Gory Details-Footnote-1530308
+Ref: Gory Details-Footnote-2530359
+Node: I/O Functions530510
+Ref: I/O Functions-Footnote-1537633
+Node: Time Functions537780
+Ref: Time Functions-Footnote-1548244
+Ref: Time Functions-Footnote-2548312
+Ref: Time Functions-Footnote-3548470
+Ref: Time Functions-Footnote-4548581
+Ref: Time Functions-Footnote-5548693
+Ref: Time Functions-Footnote-6548920
+Node: Bitwise Functions549186
+Ref: table-bitwise-ops549748
+Ref: Bitwise Functions-Footnote-1553993
+Node: Type Functions554177
+Node: I18N Functions555319
+Node: User-defined556964
+Node: Definition Syntax557768
+Ref: Definition Syntax-Footnote-1562947
+Node: Function Example563016
+Ref: Function Example-Footnote-1565660
+Node: Function Caveats565682
+Node: Calling A Function566200
+Node: Variable Scope567155
+Node: Pass By Value/Reference570143
+Node: Return Statement573651
+Node: Dynamic Typing576635
+Node: Indirect Calls577564
+Node: Functions Summary587277
+Node: Library Functions589816
+Ref: Library Functions-Footnote-1593434
+Ref: Library Functions-Footnote-2593577
+Node: Library Names593748
+Ref: Library Names-Footnote-1597221
+Ref: Library Names-Footnote-2597441
+Node: General Functions597527
+Node: Strtonum Function598555
+Node: Assert Function601335
+Node: Round Function604661
+Node: Cliff Random Function606202
+Node: Ordinal Functions607218
+Ref: Ordinal Functions-Footnote-1610295
+Ref: Ordinal Functions-Footnote-2610547
+Node: Join Function610758
+Ref: Join Function-Footnote-1612529
+Node: Getlocaltime Function612729
+Node: Readfile Function616465
+Node: Data File Management618304
+Node: Filetrans Function618936
+Node: Rewind Function623005
+Node: File Checking624392
+Ref: File Checking-Footnote-1625524
+Node: Empty Files625725
+Node: Ignoring Assigns627704
+Node: Getopt Function629258
+Ref: Getopt Function-Footnote-1640561
+Node: Passwd Functions640764
+Ref: Passwd Functions-Footnote-1649743
+Node: Group Functions649831
+Ref: Group Functions-Footnote-1657772
+Node: Walking Arrays657985
+Node: Library Functions Summary659588
+Node: Library exercises660976
+Node: Sample Programs662256
+Node: Running Examples663026
+Node: Clones663754
+Node: Cut Program664978
+Node: Egrep Program674846
+Ref: Egrep Program-Footnote-1682817
+Node: Id Program682927
+Node: Split Program686591
+Ref: Split Program-Footnote-1690129
+Node: Tee Program690257
+Node: Uniq Program693064
+Node: Wc Program700494
+Ref: Wc Program-Footnote-1704759
+Node: Miscellaneous Programs704851
+Node: Dupword Program706064
+Node: Alarm Program708095
+Node: Translate Program712909
+Ref: Translate Program-Footnote-1717300
+Ref: Translate Program-Footnote-2717570
+Node: Labels Program717704
+Ref: Labels Program-Footnote-1721075
+Node: Word Sorting721159
+Node: History Sorting725202
+Node: Extract Program727038
+Node: Simple Sed734574
+Node: Igawk Program737636
+Ref: Igawk Program-Footnote-1751947
+Ref: Igawk Program-Footnote-2752148
+Node: Anagram Program752286
+Node: Signature Program755354
+Node: Programs Summary756601
+Node: Programs Exercises757816
+Node: Advanced Features761467
+Node: Nondecimal Data763415
+Node: Array Sorting764992
+Node: Controlling Array Traversal765689
+Node: Array Sorting Functions773969
+Ref: Array Sorting Functions-Footnote-1777876
+Node: Two-way I/O778070
+Ref: Two-way I/O-Footnote-1783586
+Node: TCP/IP Networking783668
+Node: Profiling786512
+Node: Advanced Features Summary794054
+Node: Internationalization795918
+Node: I18N and L10N797398
+Node: Explaining gettext798084
+Ref: Explaining gettext-Footnote-1803224
+Ref: Explaining gettext-Footnote-2803408
+Node: Programmer i18n803573
+Node: Translator i18n807798
+Node: String Extraction808592
+Ref: String Extraction-Footnote-1809553
+Node: Printf Ordering809639
+Ref: Printf Ordering-Footnote-1812421
+Node: I18N Portability812485
+Ref: I18N Portability-Footnote-1814934
+Node: I18N Example814997
+Ref: I18N Example-Footnote-1817719
+Node: Gawk I18N817791
+Node: I18N Summary818429
+Node: Debugger819768
+Node: Debugging820790
+Node: Debugging Concepts821231
+Node: Debugging Terms823087
+Node: Awk Debugging825684
+Node: Sample Debugging Session826576
+Node: Debugger Invocation827096
+Node: Finding The Bug828429
+Node: List of Debugger Commands834911
+Node: Breakpoint Control836243
+Node: Debugger Execution Control839907
+Node: Viewing And Changing Data843267
+Node: Execution Stack846625
+Node: Debugger Info848138
+Node: Miscellaneous Debugger Commands852132
+Node: Readline Support857316
+Node: Limitations858208
+Node: Debugging Summary860482
+Node: Arbitrary Precision Arithmetic861646
+Node: Computer Arithmetic862975
+Ref: Computer Arithmetic-Footnote-1867362
+Node: Math Definitions867419
+Ref: table-ieee-formats870303
+Node: MPFR features870807
+Node: FP Math Caution872449
+Ref: FP Math Caution-Footnote-1873490
+Node: Inexactness of computations873859
+Node: Inexact representation874807
+Node: Comparing FP Values876162
+Node: Errors accumulate877126
+Node: Getting Accuracy878559
+Node: Try To Round881218
+Node: Setting precision882117
+Ref: table-predefined-precision-strings882799
+Node: Setting the rounding mode884592
+Ref: table-gawk-rounding-modes884956
+Ref: Setting the rounding mode-Footnote-1888410
+Node: Arbitrary Precision Integers888589
+Ref: Arbitrary Precision Integers-Footnote-1891592
+Node: POSIX Floating Point Problems891741
+Ref: POSIX Floating Point Problems-Footnote-1895617
+Node: Floating point summary895655
+Node: Dynamic Extensions897872
+Node: Extension Intro899424
+Node: Plugin License900689
+Node: Extension Mechanism Outline901374
+Ref: figure-load-extension901798
+Ref: figure-load-new-function903283
+Ref: figure-call-new-function904285
+Node: Extension API Description906269
+Node: Extension API Functions Introduction907719
+Node: General Data Types912584
+Ref: General Data Types-Footnote-1918277
+Node: Requesting Values918576
+Ref: table-value-types-returned919313
+Node: Memory Allocation Functions920271
+Ref: Memory Allocation Functions-Footnote-1923018
+Node: Constructor Functions923114
+Node: Registration Functions924872
+Node: Extension Functions925557
+Node: Exit Callback Functions927859
+Node: Extension Version String929108
+Node: Input Parsers929758
+Node: Output Wrappers939561
+Node: Two-way processors944077
+Node: Printing Messages946281
+Ref: Printing Messages-Footnote-1947358
+Node: Updating `ERRNO'947510
+Node: Accessing Parameters948249
+Node: Symbol Table Access949479
+Node: Symbol table by name949993
+Node: Symbol table by cookie951969
+Ref: Symbol table by cookie-Footnote-1956102
+Node: Cached values956165
+Ref: Cached values-Footnote-1959669
+Node: Array Manipulation959760
+Ref: Array Manipulation-Footnote-1960858
+Node: Array Data Types960897
+Ref: Array Data Types-Footnote-1963600
+Node: Array Functions963692
+Node: Flattening Arrays967566
+Node: Creating Arrays974418
+Node: Extension API Variables979149
+Node: Extension Versioning979785
+Node: Extension API Informational Variables981686
+Node: Extension API Boilerplate982772
+Node: Finding Extensions986576
+Node: Extension Example987136
+Node: Internal File Description987866
+Node: Internal File Ops991957
+Ref: Internal File Ops-Footnote-11003389
+Node: Using Internal File Ops1003529
+Ref: Using Internal File Ops-Footnote-11005876
+Node: Extension Samples1006144
+Node: Extension Sample File Functions1007668
+Node: Extension Sample Fnmatch1015236
+Node: Extension Sample Fork1016718
+Node: Extension Sample Inplace1017931
+Node: Extension Sample Ord1019606
+Node: Extension Sample Readdir1020442
+Ref: table-readdir-file-types1021298
+Node: Extension Sample Revout1022097
+Node: Extension Sample Rev2way1022688
+Node: Extension Sample Read write array1023429
+Node: Extension Sample Readfile1025308
+Node: Extension Sample API Tests1026408
+Node: Extension Sample Time1026933
+Node: gawkextlib1028248
+Node: Extension summary1031061
+Node: Extension Exercises1034754
+Node: Language History1035476
+Node: V7/SVR3.11037119
+Node: SVR41039439
+Node: POSIX1040881
+Node: BTL1042267
+Node: POSIX/GNU1043001
+Node: Feature History1048600
+Node: Common Extensions1061730
+Node: Ranges and Locales1063042
+Ref: Ranges and Locales-Footnote-11067659
+Ref: Ranges and Locales-Footnote-21067686
+Ref: Ranges and Locales-Footnote-31067920
+Node: Contributors1068141
+Node: History summary1073566
+Node: Installation1074935
+Node: Gawk Distribution1075886
+Node: Getting1076370
+Node: Extracting1077194
+Node: Distribution contents1078836
+Node: Unix Installation1084553
+Node: Quick Installation1085170
+Node: Additional Configuration Options1087612
+Node: Configuration Philosophy1089350
+Node: Non-Unix Installation1091701
+Node: PC Installation1092159
+Node: PC Binary Installation1093470
+Node: PC Compiling1095318
+Ref: PC Compiling-Footnote-11098317
+Node: PC Testing1098422
+Node: PC Using1099598
+Node: Cygwin1103756
+Node: MSYS1104565
+Node: VMS Installation1105079
+Node: VMS Compilation1105875
+Ref: VMS Compilation-Footnote-11107097
+Node: VMS Dynamic Extensions1107155
+Node: VMS Installation Details1108528
+Node: VMS Running1110780
+Node: VMS GNV1113614
+Node: VMS Old Gawk1114337
+Node: Bugs1114807
+Node: Other Versions1118811
+Node: Installation summary1125066
+Node: Notes1126122
+Node: Compatibility Mode1126987
+Node: Additions1127769
+Node: Accessing The Source1128694
+Node: Adding Code1130130
+Node: New Ports1136308
+Node: Derived Files1140789
+Ref: Derived Files-Footnote-11145870
+Ref: Derived Files-Footnote-21145904
+Ref: Derived Files-Footnote-31146500
+Node: Future Extensions1146614
+Node: Implementation Limitations1147220
+Node: Extension Design1148468
+Node: Old Extension Problems1149622
+Ref: Old Extension Problems-Footnote-11151139
+Node: Extension New Mechanism Goals1151196
+Ref: Extension New Mechanism Goals-Footnote-11154556
+Node: Extension Other Design Decisions1154745
+Node: Extension Future Growth1156851
+Node: Old Extension Mechanism1157687
+Node: Notes summary1159449
+Node: Basic Concepts1160635
+Node: Basic High Level1161316
+Ref: figure-general-flow1161588
+Ref: figure-process-flow1162187
+Ref: Basic High Level-Footnote-11165416
+Node: Basic Data Typing1165601
+Node: Glossary1168929
+Node: Copying1194081
+Node: GNU Free Documentation License1231637
+Node: Index1256773
 
 End Tag Table
diff --git a/doc/gawk.texi b/doc/gawk.texi
index c6520ba..ab98dda 100644
--- a/doc/gawk.texi
+++ b/doc/gawk.texi
@@ -9029,6 +9029,8 @@ and then to print the multibyte encoding of that 
character.
 Similarly, when printing a numeric value, @command{gawk} allows the
 value to be within the numeric range of values that can be held
 in a wide character.
+If the conversion to multibyte encoding fails, @command{gawk}
+uses the low eight bits of the value as the character to print.
 
 Other @command{awk} versions generally restrict themselves to printing
 the first byte of a string or to numeric values within the range of
diff --git a/doc/gawktexi.in b/doc/gawktexi.in
index d485a50..7039325 100644
--- a/doc/gawktexi.in
+++ b/doc/gawktexi.in
@@ -8648,6 +8648,8 @@ and then to print the multibyte encoding of that 
character.
 Similarly, when printing a numeric value, @command{gawk} allows the
 value to be within the numeric range of values that can be held
 in a wide character.
+If the conversion to multibyte encoding fails, @command{gawk}
+uses the low eight bits of the value as the character to print.
 
 Other @command{awk} versions generally restrict themselves to printing
 the first byte of a string or to numeric values within the range of

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

Summary of changes:
 ChangeLog       |   12 +
 builtin.c       |    3 +-
 doc/ChangeLog   |   10 +
 doc/gawk.info   |  864 ++++++++++++++++++++++++++++---------------------------
 doc/gawk.texi   |    6 +-
 doc/gawktexi.in |    6 +-
 gawkapi.h       |    4 +-
 interpret.h     |    7 +-
 io.c            |    6 +-
 9 files changed, 472 insertions(+), 446 deletions(-)


hooks/post-receive
-- 
gawk



reply via email to

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