ocamllabs/ocaml-ctypes — pull request #238 by edwintorok (2014-12-26 12:22:53+00:00)
Title: typedef support (Closes #135)

Preserve the view type formatter when projecting types.
Also introduce a convenience wrapper that just typedefs.

With these changes it is possible to support "anonymous" types in C stubs
as in issue #135, for example given:
typedef struct { ... } SDL_JoystickGUID

let joystick_guid : joystick_guid typ = structure "_SDL_JoystickGUID"
(* ... *)
let joystick_guid =
typedef "SDL_JoystickGUID" joystick_guid

let joystick_get_guid_string =
foreign "SDL_JoystickGetGUIDString"
(joystick_guid @-> ptr char @-> int @-> returning void)

Ctypes should generate 'SDL_JoystickGUID x1696 = ...' instead of
'struct _SDL_JoystickGUID x1696 = ...' which would fail to compile.