#define _GNU_SOURCE #include #include #include #include #include #include #include "escheme.h" struct stat buf; #include "generated-choose.i" static Scheme_Object *ext_stat(int argc, Scheme_Object **argv) { int is_path = SCHEME_PATHP(argv[0]); int i; if (!is_path && !( SCHEME_INPUT_PORTP(argv[0]) || SCHEME_OUTPUT_PORTP(argv[0]))) scheme_wrong_type( "stat", "path or port", 0, argc, argv); if (!SCHEME_VECTORP(argv[1])) { scheme_wrong_type( "stat", "vector", 1, argc, argv); } Scheme_Object** flags = SCHEME_VEC_ELS(argv[1]); ssize_t len = SCHEME_VEC_SIZE(argv[1]); for(i=0;i