declaring C enum types

Keith Wansbrough Keith.Wansbrough at
Thu Oct 17 05:01:56 EDT 2002

> >     - If not, then how should enum values be declared in the FFI?
> What you need to do is run a little autoconf-like program which
> constructs a program containing a suitable example, runs it through a
> C compiler and tells you what's going on.
> hsc comes very close but I'm not certain if it does exactly what you
> need.  If not, compiling and running this program should tell you:

Hmm, careful.  The C compiler is free to be clever, and use a char if there are <=256 elements in the enum, and short or int otherwise.  You want to know the size of your particular enum, not any random enum.

(betraying my age, but didn't Turbo C do this?)

--KW 8-)
Keith Wansbrough <kw217 at>
University of Cambridge Computer Laboratory.

More information about the FFI mailing list