win32: fix implicit function warning
[tinycc.git] / win32 / lib / crt1.c
blob0be446f34f89d984847ded385f6bb3a740c9bbfa
1 // =============================================
2 // crt1.c
4 #include <stdlib.h>
5 // For ExitProcess
6 #include <windows.h>
8 #define __UNKNOWN_APP 0
9 #define __CONSOLE_APP 1
10 #define __GUI_APP 2
11 void __set_app_type(int);
12 void _controlfp(unsigned a, unsigned b);
14 typedef struct
16 int newmode;
17 } _startupinfo;
19 int __getmainargs(int *pargc, char ***pargv, char ***penv, int globb, _startupinfo*);
20 int main(int argc, char **argv, char **env);
22 int _start(void)
24 __TRY__
25 int argc; char **argv; char **env;
26 _startupinfo start_info = {0};
28 _controlfp(0x10000, 0x30000);
29 __set_app_type(__CONSOLE_APP);
31 if (! __getmainargs(&argc, &argv, &env, 0, &start_info))
33 int ret;
35 ret = main(argc, argv, env);
36 exit(ret);
38 // __getmainargs failed because possible few memory on the heap.
39 // end with exit code of 3, similar to abort()
40 ExitProcess(3);
43 // =============================================