function psi\glob(string $pattern, int $flags, array &$glob = NULL, callable $errfn = NULL) : int { let path = strval($pattern); let flags = intval($flags); let err = callback intval($errfn( to_string(errmsg), to_int(errno) )); let buf = &arrval($glob); return to_int(glob); set $glob = to_array(*buf, to_int(gl_matchc), to_int(gl_pathc), to_int(gl_offs), to_int(gl_flags), to_array(gl_pathv, gl_pathc + gl_offs, to_string(gl_pathv)) ); free globfree(buf); }