ref: a837405f1b0bb374a490bbd9fb458aa050a7074a
dir: /src/dos/platform.h/
#pragma once #define _XOPEN_SOURCE 700 #include <assert.h> #include <ctype.h> #include <errno.h> #include <fcntl.h> #include <float.h> #include <inttypes.h> #include <limits.h> #include <locale.h> #include <math.h> #include <setjmp.h> #include <stdbool.h> #include <stdarg.h> #include <stdio.h> #include <stddef.h> #include <stdint.h> #include <stdlib.h> #include <string.h> #include <strings.h> #include <sys/stat.h> #include <sys/time.h> #include <time.h> #include <unistd.h> #include <wchar.h> #define __os_name__ "dos" #define nil NULL #define USED(x) ((void)(x)) #define nelem(x) (int)(sizeof(x)/sizeof((x)[0])) typedef jmp_buf sl_jmp_buf; #define sl_setjmp(e) setjmp((e)) #define sl_longjmp(e, v) longjmp((e), (v)) #define exits(status) do{ \ const char *s = (status); \ exit(s == nil ? 0 : 1); \ }while(0) #define sysfatal(...) do{ \ fprintf(stderr, __VA_ARGS__); \ exit(1); \ }while(0) #define PATHSEP '\\' #define PATHSEPSTRING "\\" #define PATHLISTSEP ':' #define PATHLISTSEPSTRING ":" #define ISPATHSEP(c) ((c) == '\\') #define MEM_UNALIGNED_ACCESS #define sl_segalloc(sz) MEM_ALLOC((usize)sz) #define sl_segfree(s, sz) MEM_FREE(s) #define sl_segused(s, sz, used) do{}while(0) #include "cc_gnuc.h" #include "mem.h" #include "mp.h" #include "utf.h"