#include #include void run_c_tests(void); typedef struct sub { unsigned long slot_1; unsigned long *slot_2; } minimal; typedef struct subminiature { char windows_dont_allow_empty_structs; } really_minimal; typedef struct max { minimal max_1; unsigned char max_2; minimal max_3[7]; /* unsigned max_4:4; unsigned max_5:12; */ unsigned char max_6; unsigned char *max_7; } maximal; void simplest_foreign_function(void); void ffi_no_result(unsigned short); unsigned short ffi_no_parameters(void); extern unsigned char ffi1(/* unsigned long p1, */ /* unsigned char p2, */ unsigned char *p3 /* , */ /* unsigned char *p4, */ /* minimal* p5, */ /* minimal* p6 */ ); extern void run_dylan_tests(void); extern void call_me_too(void); extern signed long dylan_int_identity(signed long); extern signed long dylan_always_one(void); extern unsigned char call_me_more(unsigned long p1, unsigned char p2, unsigned char* p3, unsigned char* p4, unsigned char* p5, minimal* p6); extern unsigned long foo; extern unsigned long failure_count; extern unsigned long test_count; #define report_losing_test(str, v1, v2) \ (printf("### losing test: " str "\n", (v1), (v2)), failure_count++) #define RUN_TEST(expr, string, v1, v2) \ (((expr)? 1 : (report_losing_test(string, (v1),(v2))), 1), test_count++) /* for bug 321 */ typedef union Tunion_test1 { unsigned short union_1; signed short union_2; unsigned char union_3; signed char union_4; } union_test; typedef struct Tunion_test2 { char struct_pad_1; union_test union_struct_1; char struct_pad_2; } union_test_2; /* for bug 394 */ typedef struct { unsigned short bAppReturnCode:8, reserved:6, fBusy:1, fAck:1; } DDEACK; /* for struct by value tests */ typedef struct { long width[6]; } OLEMENUGROUPWIDTHS; typedef struct { void *obj_handle; } test_dylan_object;