1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
|
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
#include <stdarg.h>
#include <sys/time.h>
#include <sys/types.h>
#include <sys/stat.h>
#include <unistd.h>
#if 0
int stat(const char *file_name, struct stat *buf) { return 0; }
int fstat(int filedes, struct stat *buf) { return 0; }
int lstat(const char *file_name, struct stat *buf) { return 0; }
// Varargs function definitions
int ioctl(int d, int request, ...) {return 0; }
int printf(const char *X) {return 0; }
int sscanf(const char *X, const char *Y, ...) { return 0; }
int fprintf(FILE *stream, const char *format, ...) { return 0; }
int gettimeofday(struct timeval *tv, void *tz) { return 0; }
void *xmalloc(size_t X) { return malloc(X); }
void srand(unsigned x) {}
double exp(double x) { return 0; }
double log(double x) { return 0; }
double sqrt(double x) { return 0; }
void exit(int x) {}
int puts(const char *x) { return 0; }
void __main() {}
int atoi(const char*x) { return 1; }
char *fgets(char*Ptr, int x, FILE*F) { return Ptr; }
char *gets(char *C) { return C; }
int fclose(FILE*F) { return 0; }
FILE *fopen(const char *n, const char*x) { return malloc(sizeof(FILE)); }
FILE *freopen(const char *path, const char *mode, FILE *stream) { return 0; }
int fflush(FILE *F) { return 0; }
size_t fwrite(const void* str, size_t N, size_t n, FILE *F) { return N; }
void *memset(void *P, int X, size_t N) { return P; }
void *memcpy(void *P, void *S, size_t N) { return P; }
void *memmove(void *P, void *S, size_t N) { return P; }
char *strcpy(char*Str1, const char *Str) { return Str1; }
char *strcat(char*Str1, const char *Str) { return Str1; }
size_t strlen(char *X) { return 0; }
#undef putchar
int putchar(int N) { return N; }
int putc(int c, FILE *stream) { return c; }
int fputc(int c, FILE *stream) { return c; }
int fgetc(FILE *S) { return 0; }
long ftell(FILE *F) { return 0; }
int getc(FILE *S) { return 0; }
size_t fread(void *ptr, size_t size, size_t nmemb, FILE *stream) { return 0; }
int fseek(FILE *stream, long offset, int whence) { return 0; }
int feof(FILE *stream) { return 0; }
int fputs(const char *s, char *stream) { return 0; }
int ferror(FILE *F) { return 0; }
FILE *fdopen(int fildes, const char *mode) { return 0;}
FILE *popen(const char *command, const char *type) { return 0; }
int pclose(FILE *stream) { return 0; }
int ungetc(int c, FILE *stream) { return 0; }
int setvbuf(FILE *stream, char *buf, int mode , size_t size) { return 0; }
void rewind(FILE*F) { }
int fileno(FILE *stream) { return 1; }
char *ttyname(int desc) { return 0; }
long sysconf(int name) { return 0; }
char *tmpnam(char *s) { return s; }
void *calloc(size_t A, size_t B) { return malloc(A*B); }
void *realloc(void *ptr, size_t N) { return ptr; }
const char *strerror(int N) { return 0; }
int unlink(const char *path) { return 0; }
void perror(const char *err) {}
char *strrchr(const char *S, int C) { return (char*)S; }
int memcmp(const char *A, const char *B, size_t N) { return 0; }
ssize_t read(int fildes, void *buf, size_t nbyte) { return nbyte; }
int close(int FD) { return 0; }
int rename(const char *oldpath, const char *newpath) { return 0; }
ssize_t write(int fd, const void *buf, size_t count) { return 0; }
pid_t getpid(void) { return 0; }
pid_t getppid(void) { return 0; }
void setbuf(FILE *stream, char *buf) {}
int isatty(int desc) { return 0; }
int vsprintf(char *str, const char *format, va_list ap) { return 0; }
char *getcwd(char *buf, size_t size) { return buf; }
void qsort(void *base, size_t nmemb, size_t size,
int(*compar)(const void *, const void *)) {
compar(base, base);
}
#include <sys/times.h>
clock_t times(struct tms *buf) { return 0; }
#include <setjmp.h>
int setjmp(jmp_buf env) { return 0; }
void longjmp(jmp_buf env, int val) {}
int kill(pid_t pid, int sig) { return 0; }
int system(const char *string) { return 0; }
char *getenv(const char *name) { return 0; }
typedef void (*sighandler_t)(int);
sighandler_t signal(int signum, sighandler_t handler) { return handler; }
char *strchr(const char *s, int c) { return (char*)s; }
int strcmp(const char *s1, const char *s2) { return 0; }
int strncmp(const char *s1, const char *s2, size_t n) { return 0; }
char *strncpy(char *s1, const char *s2, size_t n) { return s1; }
char *strpbrk(const char *s, const char *accept) { return (char*)s; }
char *strncat(char *dest, const char *src, size_t n) { return dest; }
double atof(const char *C) { return 0; }
long clock() { return 0; }
char *ctime(const time_t *timep) { return 0; }
time_t time(time_t *t) { return *t = 0; }
double sin(double x) { return x; }
double cos(double x) { return x; }
double tan(double x) { return x; }
double asin(double x) { return x; }
double acos(double x) { return x; }
double atan(double x) { return x; }
double cosh(double x) { return x; }
double sinh(double x) { return x; }
double ceil(double x) { return x; }
double floor(double x) { return x; }
double atan2(double x, double y) { return x; }
double fmod(double x, double y) { return x; }
double pow(double x, double y) { return x; }
int tolower(int x) { return x; }
int toupper(int x) { return x; }
#endif
|