1 #include <glob.h> 2 #define T(t) (t*)0; 3 #define F(t,n) {t *y = &x.n;} 4 #define C(n) switch(n){case n:;} f()5static void f() 6 { 7 T(glob_t) 8 T(size_t) 9 { 10 glob_t x; 11 F(size_t, gl_pathc) 12 F(char**, gl_pathv) 13 F(size_t, gl_offs) 14 } 15 C(GLOB_APPEND) 16 C(GLOB_DOOFFS) 17 C(GLOB_ERR) 18 C(GLOB_MARK) 19 C(GLOB_NOCHECK) 20 C(GLOB_NOESCAPE) 21 C(GLOB_NOSORT) 22 C(GLOB_ABORTED) 23 C(GLOB_NOMATCH) 24 C(GLOB_NOSPACE) 25 {int(*p)(const char*restrict,int,int(*)(const char*,int),glob_t*restrict) = glob;} 26 {void(*p)(glob_t*) = globfree;} 27 } 28