summaryrefslogtreecommitdiff
path: root/doc
diff options
context:
space:
mode:
authorTom Tromey <tom@tromey.com>2015-11-19 15:21:14 -0700
committerTom Tromey <tom@tromey.com>2015-11-19 15:21:14 -0700
commitf45e9e35700d7c547ba33b02c4186e746dea204a (patch)
treeeed6bfbd21689610b2321288a8d66f0d6a4d3e6a /doc
parent88deacdd4220b66805b6ad10abd61fa3640afb67 (diff)
downloadlibffi-f45e9e35700d7c547ba33b02c4186e746dea204a.tar.gz
document (lack of) enum handling in libffi
Diffstat (limited to 'doc')
-rw-r--r--doc/libffi.texi16
1 files changed, 13 insertions, 3 deletions
diff --git a/doc/libffi.texi b/doc/libffi.texi
index 0459899..073b8d4 100644
--- a/doc/libffi.texi
+++ b/doc/libffi.texi
@@ -269,7 +269,7 @@ int main()
* Primitive Types:: Built-in types.
* Structures:: Structure types.
* Size and Alignment:: Size and alignment of types.
-* Arrays and Unions:: Arrays and unions.
+* Arrays Unions Enums:: Arrays, unions, and enumerations.
* Type Example:: Structure type example.
* Complex:: Complex types.
* Complex Type Example:: Complex type example.
@@ -463,8 +463,8 @@ if (ffi_prep_cif (&cif, desired_abi, 0, desired_type, NULL) == FFI_OK)
@}
@end example
-@node Arrays and Unions
-@subsection Arrays and Unions
+@node Arrays Unions Enums
+@subsection Arrays, Unions, and Enumerations
@subsubsection Arrays
@@ -541,6 +541,16 @@ for (i = 0; union_elements[i]; ++i)
@}
@end example
+@subsubsection Enumerations
+
+@code{libffi} does not have any special support for C @code{enum}s.
+Although any given @code{enum} is implemented using a specific
+underlying integral type, exactly which type will be used cannot be
+determined by @code{libffi} -- it may depend on the values in the
+enumeration or on compiler flags such as @option{-fshort-enums}.
+@xref{Structures unions enumerations and bit-fields implementation, , , gcc},
+for more information about how GCC handles enumerations.
+
@node Type Example
@subsection Type Example