api: shorten function checks (and put each into a different scope)
[libc-test] / src / api / ndbm.c
1 #include <ndbm.h>
2 #define T(t) (t*)0;
3 #define F(t,n) {t *y = &x.n;}
4 #define C(n) switch(n){case n:;}
5 static void f()
6 {
7 T(size_t)
8 T(DBM)
9 {
10 datum x;
11 F(void*, dptr)
12 F(size_t, dsize)
13 }
14 C(DBM_INSERT)
15 C(DBM_REPLACE)
16 {int(*p)(DBM*) = dbm_clearerr;}
17 {void(*p)(DBM*) = dbm_close;}
18 {int(*p)(DBM*,datum) = dbm_delete;}
19 {int(*p)(DBM*) = dbm_error;}
20 {datum(*p)(DBM*,datum) = dbm_fetch;}
21 {datum(*p)(DBM*) = dbm_firstkey;}
22 {datum(*p)(DBM*) = dbm_nextkey;}
23 DBM*(*p)(const char*,int,mode_t) = dbm_open;
24 {int(*p)(DBM*,datum,datum,int) = dbm_store;}
25 }