Interfacing to C with GNAT can use one of two approaches:
Interfaces.Cmay be used.
Convention C maybe applied to Ada types, but mostly has no
effect, since this is the default. The following table shows the
correspondence between Ada scalar types and the corresponding C types.
Convention Cis specified, which causes them to have int length. Without pragma
Convention C, Ada enumeration types map to 8, 16, or 32 bits (i.e. C types signed char, short, int respectively) depending on the number of values passed. This is the only case in which pragma
Convention Caffects the representation of an Ada type.
'Sizevalue in Ada.