The current API is not binary compatible with version 1 of the API.
You will have to recompile your extensions in order to use them with
the current version of 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 awk_ext_func_t
structure, and the
addition of the third argument to the C implementation function
(see Registering An Extension Function).
Here is a list of individual features that changed from version 1 to version 2 of the API:
AWK_REGEX
and AWK_STRNUM
(see General-Purpose Data Types).
ezalloc()
macro is new
(see Memory Allocation Functions and Convenience Macros).
awk_ext_func_t
structure changed. Instead of
num_expected_args
, it now has max_expected
and
min_required
(see Registering An Extension Function).
get_record()
, an input parser can now specify field widths
(see Customized Input Parsers).
get_file()
API is new
(see Accessing and Manipulating Redirections).