- (c-struct [<name>] <field-list> [<attributes>])procedure
- (c-union [<name>] <field-list> [<attributes>])procedure
- (c-class [<name>] <field-list> [<attributes>])procedure
- c-attribute <values> ...procedure
Composite type constructors. Attributes may be accessed as %attribute at the head of a list.
(fmt #f (c-struct 'employee '((short age) ((char *) name) ((struct (year month day)) dob)) (c-attribute 'packed)))
struct employee { short age; char* name; struct { int year; int month; int day; } dob; } __attribute__ ((packed));