New memory subcommands towinstring, fromwinstring, tounistring and fromunistring.
New base type uuid.
The nullifempty annotation may also be applied for types bytes, chars and unichars.
The nullifempty annotation may be used for optional out parameters to indicate they are optional.
New class Interface for modeling COM objects.
Integer values for enum types that are bitmasks are no longer automatically mapped to list of enum members. Note enum members are still implicitly converted to integer values. Incompatible change.
Added method size for structs and unions.
New syntax for comments within functions and stdcalls definitions.
pointer castable can now take multiple arguments.
New command memory arena for stack-like memory allocation at script level.
Enhanced help command.
New enum subcommand alias to couple an enum definition as an alias.
New enum subcommand names to return names of enum members.
New type subcommands tobinary and frombinary to construct or deconstruct a binary string for any type declaration.
Added saveerrors annotation to save errno and Win32 error values and the savederrors command to retrieve them.
The errorCode variable now includes the numeric error code when one of the error handling annotations is present.
New discard annotation to discard the result of a function call.
Output struct parameters can be passed as undefined variables.
Annotation retval can be applied to parameters to void functions.
New annotation multisz to support MULTI_SZ strings on Windows.
The dyncall backend is upgraded to 1.4 and now supports callbacks, variable arguments and passing of structs by value.
Built-in aliases are now loaded in the ::cffi::c namespace and implicitly included in the search path.
Added option -ignoremissing to Wrapper methods functions and stdcalls to not raise error in case of missing shared library functions.
New option -pack for Struct to control alignment and padding.
Pointer definitions within a struct or union have an implicit unsafe annotation.
New class Union to support C unions.
Added support for structs whose last field is variable size array.
Array type declarations can now use aliases as the base type.
Lengths of variable size array parameters can be passed through byref or inout parameters.