These types correspond to the native C integer types according to the ABI of the Lisp implementation’s host system.
:unsigned-long-long are not supported
natively on all implementations. However, they are emulated by
When those types are not available, the symbol
cffi-sys::no-long-long is pushed into
For convenience, the above types are provided as shortcuts for
Foreign integer types of specific sizes, corresponding to the C types
On all systems, the
:double types represent a
double, respectively. On most but not all
:double represent a Lisp
double-float, respectively. It is not
so useful to consider the relationship between Lisp types and C types
as isomorphic, as simply to recognize the relationship, and relative
precision, among each respective category.
This type is only supported on SCL.
A foreign pointer to an object of any type, corresponding to
void *. You can optionally specify type of pointer
(:pointer :char)). Although CFFI won’t do anything
with that information yet, it is useful for documentation purposes.
No type at all. Only valid as the return type of a function.