%double

double

%long

DWORD
INT
LONG
MSVCRT_clock_t
MSVCRT_complex
MSVCRT_size_t
MSVCRT_time_t
WCHAR
int
long
unsigned int
unsigned long

%longlong

LONGLONG
ULONGLONG

%ptr

__non_rtti_object *
_HEAPINFO *
_INITTERMFUN *
_JUMP_BUFFER *
_onexit_t
_onexit_t **
MSVCRT_EXCEPTION_FRAME *
MSVCRT_FILE *
MSVCRT_compar_fn_t
MSVCRT_exception *
MSVCRT_fpos_t *
MSVCRT_free_func
MSVCRT_malloc_func
MSVCRT_matherr_func
MSVCRT_new_handler_func
MSVCRT_sig_handler_func
MSVCRT_time_t *
MSVCRT_wint_t
PCONTEXT
PEXCEPTION_FRAME
PEXCEPTION_FRAME *
PEXCEPTION_POINTERS
PEXCEPTION_RECORD
WCHAR *
WCHAR **
WCHAR ***
WORD **
bad_cast *
bad_typeid *
char *
char **
char ***
exception *
int *
struct __EXCEPTION_FRAME *
struct __EXCEPTION_FRAME **
struct _finddata_t *
struct _diskfree_t *
struct _stat *
struct _timeb *
struct _utimbuf *
struct _wfinddata_t *
struct MSVCRT_tm *
terminate_function
type_info *
unexpected_function
unsigned char *
unsigned int *
unsigned long *
va_list
void *

%ptr --extension

_beginthread_start_routine_t
_beginthreadex_start_routine_t

%unknown

MSVCRT_div_t
MSVCRT_ldiv_t

%void

void
VOID
