1 #define SETUP(NUM,TMODE) \ 2 v##NUM##TMODE g_v##NUM##TMODE; \ 3 TMODE g_##TMODE; \ 4 \ 5 extern void test_v##NUM##TMODE (void); \ 6 extern void checkp_##NUM##TMODE (TMODE *); \ 7 \ 8 void \ 9 pass_v##NUM##TMODE (v##NUM##TMODE v) \ 10 { \ 11 u##NUM##TMODE u; \ 12 int j; \ 13 TMODE a[NUM]; \ 14 \ 15 u.v = v; \ 16 for (j = 0; j < NUM; j++) \ 17 a[j] = u.a[j]; \ 18 checkp_##NUM##TMODE (a); \ 19 } \ 20 \ 21 v##NUM##TMODE \ 22 return_v##NUM##TMODE (void) \ 23 { \ 24 return g_v##NUM##TMODE; \ 25 } 26 27 #define CHECK(NUM,TMODE) \ 28 test_v##NUM##TMODE() 29