gawk: Changes from API V1

 
 16.4.15 Changes From Version 1 of the API
 -----------------------------------------
 
 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 (SeeExtension 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 (SeeGeneral Data
      Types).
 
    * There are new string types: 'AWK_REGEX' and 'AWK_STRNUM' (See
      General Data Types).
 
    * The 'ezalloc()' macro is new (SeeMemory Allocation Functions).
 
    * The 'awk_ext_func_t' structure changed.  Instead of
      'num_expected_args', it now has 'max_expected' and 'min_required'
      (SeeExtension Functions).
 
    * For 'get_record()', an input parser can now specify field widths
      (SeeInput Parsers).
 
    * Extensions can now produce nonfatal error messages (SeePrinting
      Messages).
 
    * When flattening an array, you can now specify the index and value
      types (SeeArray Functions).
 
    * The 'get_file()' API is new (SeeRedirection API).