NULL is OK, both for passing and for returning.
Generics and defining elements of containers and arrays.
NULL may be passed as the value in, out, in-out; or as a return value.
Exposed in C code, not necessarily available in other languages.
Free data after the code is done.
Don't free data after the code is done.
Override the parsed C type with given type.