2018-10-31 02:09:11 +01:00
|
|
|
#include <stdio.h>
|
2018-11-08 01:23:23 +01:00
|
|
|
#include <string.h>
|
2018-10-22 14:06:22 +02:00
|
|
|
#include <Kernel/Syscall.h>
|
2018-10-28 09:36:21 +01:00
|
|
|
#include <AK/StringImpl.h>
|
2018-10-22 14:06:22 +02:00
|
|
|
|
2019-02-15 12:30:48 +01:00
|
|
|
extern "C" {
|
|
|
|
|
|
|
|
int main(int, char**);
|
2018-10-22 14:06:22 +02:00
|
|
|
|
2018-10-25 12:06:00 +02:00
|
|
|
int errno;
|
2018-10-31 17:50:43 +01:00
|
|
|
char** environ;
|
|
|
|
|
2019-02-15 12:30:48 +01:00
|
|
|
void __malloc_init();
|
|
|
|
void __stdio_init();
|
2018-10-25 12:06:00 +02:00
|
|
|
|
2019-02-22 01:55:22 +01:00
|
|
|
int _start(int argc, char** argv, char** env)
|
2018-10-22 14:06:22 +02:00
|
|
|
{
|
2018-10-25 12:06:00 +02:00
|
|
|
errno = 0;
|
2019-02-22 01:55:22 +01:00
|
|
|
environ = env;
|
2018-10-31 02:09:11 +01:00
|
|
|
|
2018-11-11 10:11:09 +01:00
|
|
|
__stdio_init();
|
2018-11-08 11:37:01 +01:00
|
|
|
__malloc_init();
|
|
|
|
|
2019-02-22 01:55:22 +01:00
|
|
|
int status = main(argc, argv);
|
2018-10-31 17:50:43 +01:00
|
|
|
|
2018-11-10 00:56:10 +01:00
|
|
|
fflush(stdout);
|
|
|
|
fflush(stderr);
|
|
|
|
|
2018-12-21 03:02:06 +01:00
|
|
|
syscall(SC_exit, status);
|
2018-10-22 14:06:22 +02:00
|
|
|
|
|
|
|
// Birger's birthday <3
|
|
|
|
return 20150614;
|
|
|
|
}
|
2019-02-10 11:07:13 +01:00
|
|
|
|
2019-02-15 12:30:48 +01:00
|
|
|
[[noreturn]] void __cxa_pure_virtual()
|
2019-02-10 11:07:13 +01:00
|
|
|
{
|
|
|
|
ASSERT_NOT_REACHED();
|
|
|
|
}
|
2019-02-15 12:30:48 +01:00
|
|
|
|
|
|
|
}
|