factoring out startup routine for embedded use
This commit is contained in:
parent
eec95c17b8
commit
1dcc71ec82
|
@ -2258,7 +2258,7 @@ static value_t argv_list(int argc, char *argv[])
|
||||||
|
|
||||||
extern value_t fl_file(value_t *args, uint32_t nargs);
|
extern value_t fl_file(value_t *args, uint32_t nargs);
|
||||||
|
|
||||||
int main(int argc, char *argv[])
|
int fl_startup()
|
||||||
{
|
{
|
||||||
value_t e;
|
value_t e;
|
||||||
int saveSP;
|
int saveSP;
|
||||||
|
@ -2303,10 +2303,6 @@ int main(int argc, char *argv[])
|
||||||
}
|
}
|
||||||
ios_close(value2c(ios_t*,Stack[SP-1]));
|
ios_close(value2c(ios_t*,Stack[SP-1]));
|
||||||
POPN(1);
|
POPN(1);
|
||||||
|
|
||||||
PUSH(symbol_value(symbol("__start")));
|
|
||||||
PUSH(argv_list(argc, argv));
|
|
||||||
(void)_applyn(1);
|
|
||||||
}
|
}
|
||||||
FL_CATCH {
|
FL_CATCH {
|
||||||
ios_puts("fatal error during bootstrap:\n", ios_stderr);
|
ios_puts("fatal error during bootstrap:\n", ios_stderr);
|
||||||
|
@ -2314,6 +2310,24 @@ int main(int argc, char *argv[])
|
||||||
ios_putc('\n', ios_stderr);
|
ios_putc('\n', ios_stderr);
|
||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
int main(int argc, char *argv[])
|
||||||
|
{
|
||||||
|
if (fl_startup())
|
||||||
|
return 1;
|
||||||
|
|
||||||
|
FL_TRY {
|
||||||
|
PUSH(symbol_value(symbol("__start")));
|
||||||
|
PUSH(argv_list(argc, argv));
|
||||||
|
(void)_applyn(1);
|
||||||
|
}
|
||||||
|
FL_CATCH {
|
||||||
|
ios_puts("fatal error:\n", ios_stderr);
|
||||||
|
fl_print(ios_stderr, lasterror);
|
||||||
|
ios_putc('\n', ios_stderr);
|
||||||
|
return 1;
|
||||||
|
}
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
|
@ -322,4 +322,6 @@ value_t fl_hash(value_t *args, u_int32_t nargs);
|
||||||
value_t cvalue_byte(value_t *args, uint32_t nargs);
|
value_t cvalue_byte(value_t *args, uint32_t nargs);
|
||||||
value_t cvalue_wchar(value_t *args, uint32_t nargs);
|
value_t cvalue_wchar(value_t *args, uint32_t nargs);
|
||||||
|
|
||||||
|
int fl_startup();
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
|
Loading…
Reference in New Issue