7 #define TTYPE(name,type,OP) \
8 type test_##name##type(void) { return val OP 7; } \
9 type test2_##name##type(type v) { return val OP v; } \
10 type testp_##name##type(void) { return 7 OP val; } \
11 type testp2_##name##type(type v) { return v OP val; }
13 int test_cmp_testset(int v, int v2) { return (v & 14) > 0; }
17 TTYPE(name,short,OP) \
33 int res1, res2, res3, res4;
36 #define TTYPE(name,type,OP) \
37 res1 = test_##name##type(); \
38 res2 = test2_##name##type(20); \
39 res3 = testp_##name##type(); \
40 res4 = testp2_##name##type(20); \
41 printf("Test %s: %d (should be %d)\n", #name, res1, (type) 11 OP (type) 7); \
42 printf("Test2 %s: %d (should be %d)\n", #name, res2, (type) 11 OP (type)20); \
43 printf("Testp %s: %d (should be %d)\n", #name, res3, (type) 7 OP (type)11); \
44 printf("Testp2 %s: %d (should be %d)\n", #name, res4, (type) 20 OP (type)11);
48 TTYPE(name,short,OP) \