aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--doc/ChangeLog5
-rw-r--r--doc/gawk.info228
-rw-r--r--doc/gawk.texi43
-rw-r--r--doc/gawktexi.in43
4 files changed, 216 insertions, 103 deletions
diff --git a/doc/ChangeLog b/doc/ChangeLog
index e9253187..2dec0795 100644
--- a/doc/ChangeLog
+++ b/doc/ChangeLog
@@ -1,3 +1,8 @@
+2017-11-17 Arnold D. Robbins <arnold@skeeve.com>
+
+ * gawktexi.in(Changes from API V1): Give a list of things
+ that changed, with xrefs. Thanks to Andrew Schorr for the push.
+
2017-11-09 Arnold D. Robbins <arnold@skeeve.com>
* gawktexi.in (For Statement): Small clarification in the text.
diff --git a/doc/gawk.info b/doc/gawk.info
index 226cc6ef..e1b18ba1 100644
--- a/doc/gawk.info
+++ b/doc/gawk.info
@@ -25960,7 +25960,33 @@ current version of 'gawk'.
the API remains source-code-compatible with the previous API. The major
differences are the additional members in the 'awk_ext_func_t'
structure, and the addition of the third argument to the C
-implementation function.
+implementation function (*note Extension Functions::).
+
+ Here is a list of individual features that changed from version 1 to
+version 2 of the API:
+
+ * Numeric values can now have MPFR/MPZ variants (*note General Data
+ Types::).
+
+ * There are new string types: 'AWK_REGEX' and 'AWK_STRNUM' (*note
+ General Data Types::).
+
+ * The 'ezalloc()' macro is new (*note Memory Allocation Functions::).
+
+ * The 'awk_ext_func_t' structure changed. Instead of
+ 'num_expected_args', it now has 'max_expected' and 'min_required'
+ (*note Extension Functions::).
+
+ * For 'get_record()', an input parser can now specify field widths
+ (*note Input Parsers::).
+
+ * Extensions can now produce nonfatal error messages (*note Printing
+ Messages::).
+
+ * When flattening an array, you can now specify the index and value
+ types (*note Array Functions::).
+
+ * The 'get_file()' API is new (*note Redirection API::).

File: gawk.info, Node: Finding Extensions, Next: Extension Example, Prev: Extension API Description, Up: Dynamic Extensions
@@ -36354,105 +36380,105 @@ Node: Extension GMP/MPFR Versioning1050299
Node: Extension API Informational Variables1051927
Node: Extension API Boilerplate1053000
Node: Changes from API V11056974
-Node: Finding Extensions1057634
-Node: Extension Example1058193
-Node: Internal File Description1058991
-Node: Internal File Ops1063071
-Ref: Internal File Ops-Footnote-11074471
-Node: Using Internal File Ops1074611
-Ref: Using Internal File Ops-Footnote-11076994
-Node: Extension Samples1077268
-Node: Extension Sample File Functions1078797
-Node: Extension Sample Fnmatch1086446
-Node: Extension Sample Fork1087933
-Node: Extension Sample Inplace1089151
-Node: Extension Sample Ord1092368
-Node: Extension Sample Readdir1093204
-Ref: table-readdir-file-types1094093
-Node: Extension Sample Revout1094898
-Node: Extension Sample Rev2way1095487
-Node: Extension Sample Read write array1096227
-Node: Extension Sample Readfile1098169
-Node: Extension Sample Time1099264
-Node: Extension Sample API Tests1100612
-Node: gawkextlib1101104
-Node: Extension summary1103560
-Node: Extension Exercises1107262
-Node: Language History1108760
-Node: V7/SVR3.11110416
-Node: SVR41112568
-Node: POSIX1114002
-Node: BTL1115382
-Node: POSIX/GNU1116111
-Node: Feature History1121889
-Node: Common Extensions1137748
-Node: Ranges and Locales1139031
-Ref: Ranges and Locales-Footnote-11143647
-Ref: Ranges and Locales-Footnote-21143674
-Ref: Ranges and Locales-Footnote-31143909
-Node: Contributors1144130
-Node: History summary1150075
-Node: Installation1151455
-Node: Gawk Distribution1152399
-Node: Getting1152883
-Node: Extracting1153846
-Node: Distribution contents1155484
-Node: Unix Installation1161964
-Node: Quick Installation1162646
-Node: Shell Startup Files1165060
-Node: Additional Configuration Options1166149
-Node: Configuration Philosophy1168010
-Node: Non-Unix Installation1170379
-Node: PC Installation1170839
-Node: PC Binary Installation1171677
-Node: PC Compiling1172112
-Node: PC Using1173229
-Node: Cygwin1176274
-Node: MSYS1177044
-Node: VMS Installation1177545
-Node: VMS Compilation1178336
-Ref: VMS Compilation-Footnote-11179565
-Node: VMS Dynamic Extensions1179623
-Node: VMS Installation Details1181308
-Node: VMS Running1183561
-Node: VMS GNV1187840
-Node: VMS Old Gawk1188575
-Node: Bugs1189046
-Node: Bug address1189709
-Node: Usenet1192501
-Node: Maintainers1193278
-Node: Other Versions1194539
-Node: Installation summary1201301
-Node: Notes1202503
-Node: Compatibility Mode1203368
-Node: Additions1204150
-Node: Accessing The Source1205075
-Node: Adding Code1206512
-Node: New Ports1212731
-Node: Derived Files1217219
-Ref: Derived Files-Footnote-11222865
-Ref: Derived Files-Footnote-21222900
-Ref: Derived Files-Footnote-31223498
-Node: Future Extensions1223612
-Node: Implementation Limitations1224270
-Node: Extension Design1225453
-Node: Old Extension Problems1226607
-Ref: Old Extension Problems-Footnote-11228125
-Node: Extension New Mechanism Goals1228182
-Ref: Extension New Mechanism Goals-Footnote-11231546
-Node: Extension Other Design Decisions1231735
-Node: Extension Future Growth1233848
-Node: Old Extension Mechanism1234684
-Node: Notes summary1236447
-Node: Basic Concepts1237629
-Node: Basic High Level1238310
-Ref: figure-general-flow1238592
-Ref: figure-process-flow1239277
-Ref: Basic High Level-Footnote-11242578
-Node: Basic Data Typing1242763
-Node: Glossary1246091
-Node: Copying1277927
-Node: GNU Free Documentation License1315466
-Node: Index1340584
+Node: Finding Extensions1058546
+Node: Extension Example1059105
+Node: Internal File Description1059903
+Node: Internal File Ops1063983
+Ref: Internal File Ops-Footnote-11075383
+Node: Using Internal File Ops1075523
+Ref: Using Internal File Ops-Footnote-11077906
+Node: Extension Samples1078180
+Node: Extension Sample File Functions1079709
+Node: Extension Sample Fnmatch1087358
+Node: Extension Sample Fork1088845
+Node: Extension Sample Inplace1090063
+Node: Extension Sample Ord1093280
+Node: Extension Sample Readdir1094116
+Ref: table-readdir-file-types1095005
+Node: Extension Sample Revout1095810
+Node: Extension Sample Rev2way1096399
+Node: Extension Sample Read write array1097139
+Node: Extension Sample Readfile1099081
+Node: Extension Sample Time1100176
+Node: Extension Sample API Tests1101524
+Node: gawkextlib1102016
+Node: Extension summary1104472
+Node: Extension Exercises1108174
+Node: Language History1109672
+Node: V7/SVR3.11111328
+Node: SVR41113480
+Node: POSIX1114914
+Node: BTL1116294
+Node: POSIX/GNU1117023
+Node: Feature History1122801
+Node: Common Extensions1138660
+Node: Ranges and Locales1139943
+Ref: Ranges and Locales-Footnote-11144559
+Ref: Ranges and Locales-Footnote-21144586
+Ref: Ranges and Locales-Footnote-31144821
+Node: Contributors1145042
+Node: History summary1150987
+Node: Installation1152367
+Node: Gawk Distribution1153311
+Node: Getting1153795
+Node: Extracting1154758
+Node: Distribution contents1156396
+Node: Unix Installation1162876
+Node: Quick Installation1163558
+Node: Shell Startup Files1165972
+Node: Additional Configuration Options1167061
+Node: Configuration Philosophy1168922
+Node: Non-Unix Installation1171291
+Node: PC Installation1171751
+Node: PC Binary Installation1172589
+Node: PC Compiling1173024
+Node: PC Using1174141
+Node: Cygwin1177186
+Node: MSYS1177956
+Node: VMS Installation1178457
+Node: VMS Compilation1179248
+Ref: VMS Compilation-Footnote-11180477
+Node: VMS Dynamic Extensions1180535
+Node: VMS Installation Details1182220
+Node: VMS Running1184473
+Node: VMS GNV1188752
+Node: VMS Old Gawk1189487
+Node: Bugs1189958
+Node: Bug address1190621
+Node: Usenet1193413
+Node: Maintainers1194190
+Node: Other Versions1195451
+Node: Installation summary1202213
+Node: Notes1203415
+Node: Compatibility Mode1204280
+Node: Additions1205062
+Node: Accessing The Source1205987
+Node: Adding Code1207424
+Node: New Ports1213643
+Node: Derived Files1218131
+Ref: Derived Files-Footnote-11223777
+Ref: Derived Files-Footnote-21223812
+Ref: Derived Files-Footnote-31224410
+Node: Future Extensions1224524
+Node: Implementation Limitations1225182
+Node: Extension Design1226365
+Node: Old Extension Problems1227519
+Ref: Old Extension Problems-Footnote-11229037
+Node: Extension New Mechanism Goals1229094
+Ref: Extension New Mechanism Goals-Footnote-11232458
+Node: Extension Other Design Decisions1232647
+Node: Extension Future Growth1234760
+Node: Old Extension Mechanism1235596
+Node: Notes summary1237359
+Node: Basic Concepts1238541
+Node: Basic High Level1239222
+Ref: figure-general-flow1239504
+Ref: figure-process-flow1240189
+Ref: Basic High Level-Footnote-11243490
+Node: Basic Data Typing1243675
+Node: Glossary1247003
+Node: Copying1278839
+Node: GNU Free Documentation License1316378
+Node: Index1341496

End Tag Table
diff --git a/doc/gawk.texi b/doc/gawk.texi
index 8dc3b8b3..f9b52ff0 100644
--- a/doc/gawk.texi
+++ b/doc/gawk.texi
@@ -35330,7 +35330,48 @@ the current version of @command{gawk}.
Fortunately, at the possible expense of some compile-time warnings, the API remains
source-code--compatible with the previous API. The major differences are
the additional members in the @code{awk_ext_func_t} structure, and the
-addition of the third argument to the C implementation function.
+addition of the third argument to the C implementation function
+(@pxref{Extension Functions}).
+
+Here is a list of individual features that changed from version 1 to
+version 2 of the API:
+
+@itemize @bullet
+
+@item
+Numeric values can now have MPFR/MPZ variants
+(@pxref{General Data Types}).
+
+@item
+There are new string types: @code{AWK_REGEX} and @code{AWK_STRNUM}
+(@pxref{General Data Types}).
+
+@item
+The @code{ezalloc()} macro is new
+(@pxref{Memory Allocation Functions}).
+
+@item
+The @code{awk_ext_func_t} structure changed. Instead of
+@code{num_expected_args}, it now has @code{max_expected} and
+@code{min_required}
+(@pxref{Extension Functions}).
+
+@item
+For @code{get_record()}, an input parser can now specify field widths
+(@pxref{Input Parsers}).
+
+@item
+Extensions can now produce nonfatal error messages
+(@pxref{Printing Messages}).
+
+@item
+When flattening an array, you can now specify the index and value types
+(@pxref{Array Functions}).
+
+@item
+The @code{get_file()} API is new
+(@pxref{Redirection API}).
+@end itemize
@node Finding Extensions
@section How @command{gawk} Finds Extensions
diff --git a/doc/gawktexi.in b/doc/gawktexi.in
index 79c6adb3..0c7e7c66 100644
--- a/doc/gawktexi.in
+++ b/doc/gawktexi.in
@@ -34344,7 +34344,48 @@ the current version of @command{gawk}.
Fortunately, at the possible expense of some compile-time warnings, the API remains
source-code--compatible with the previous API. The major differences are
the additional members in the @code{awk_ext_func_t} structure, and the
-addition of the third argument to the C implementation function.
+addition of the third argument to the C implementation function
+(@pxref{Extension Functions}).
+
+Here is a list of individual features that changed from version 1 to
+version 2 of the API:
+
+@itemize @bullet
+
+@item
+Numeric values can now have MPFR/MPZ variants
+(@pxref{General Data Types}).
+
+@item
+There are new string types: @code{AWK_REGEX} and @code{AWK_STRNUM}
+(@pxref{General Data Types}).
+
+@item
+The @code{ezalloc()} macro is new
+(@pxref{Memory Allocation Functions}).
+
+@item
+The @code{awk_ext_func_t} structure changed. Instead of
+@code{num_expected_args}, it now has @code{max_expected} and
+@code{min_required}
+(@pxref{Extension Functions}).
+
+@item
+For @code{get_record()}, an input parser can now specify field widths
+(@pxref{Input Parsers}).
+
+@item
+Extensions can now produce nonfatal error messages
+(@pxref{Printing Messages}).
+
+@item
+When flattening an array, you can now specify the index and value types
+(@pxref{Array Functions}).
+
+@item
+The @code{get_file()} API is new
+(@pxref{Redirection API}).
+@end itemize
@node Finding Extensions
@section How @command{gawk} Finds Extensions