nitlanguage
/
nit.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Merge: serialization: safe formal types, fix warnings in generated code and more
[nit.git]
/
c_src
/
nitc__nith.main.1.c
diff --git
a/c_src/nitc__nith.main.1.c
b/c_src/nitc__nith.main.1.c
index
5666c84
..
7953c12
100644
(file)
--- a/
c_src/nitc__nith.main.1.c
+++ b/
c_src/nitc__nith.main.1.c
@@
-62,6
+62,7
@@
extern void nitni_global_ref_decr( struct nitni_ref *ref ) {
int glob_argc;
char **glob_argv;
val *glob_sys;
int glob_argc;
char **glob_argv;
val *glob_sys;
+struct catch_stack_t catchStack;
static void show_backtrace(void) {
#ifndef NO_STACKTRACE
char* opt = getenv("NIT_NO_STACK");
static void show_backtrace(void) {
#ifndef NO_STACKTRACE
char* opt = getenv("NIT_NO_STACK");
@@
-90,10
+91,16
@@
free(procname);
#endif /* NO_STACKTRACE */
}
void sig_handler(int signo){
#endif /* NO_STACKTRACE */
}
void sig_handler(int signo){
+#ifdef _WIN32
+PRINT_ERROR("Caught signal : %s\n", signo);
+#else
PRINT_ERROR("Caught signal : %s\n", strsignal(signo));
PRINT_ERROR("Caught signal : %s\n", strsignal(signo));
+#endif
show_backtrace();
signal(signo, SIG_DFL);
show_backtrace();
signal(signo, SIG_DFL);
+#ifndef _WIN32
kill(getpid(), signo);
kill(getpid(), signo);
+#endif
}
void fatal_exit(int status) {
show_backtrace();
}
void fatal_exit(int status) {
show_backtrace();
@@
-101,7
+108,7
@@
exit(status);
}
int main(int argc, char** argv) {
val* var /* : Sys */;
}
int main(int argc, char** argv) {
val* var /* : Sys */;
-#ifndef ANDROID
+#if !defined(__ANDROID__) && !defined(TARGET_OS_IPHONE)
signal(SIGABRT, sig_handler);
signal(SIGFPE, sig_handler);
signal(SIGILL, sig_handler);
signal(SIGABRT, sig_handler);
signal(SIGFPE, sig_handler);
signal(SIGILL, sig_handler);
@@
-109,8
+116,11
@@
signal(SIGINT, sig_handler);
signal(SIGTERM, sig_handler);
signal(SIGSEGV, sig_handler);
#endif
signal(SIGTERM, sig_handler);
signal(SIGSEGV, sig_handler);
#endif
+#ifndef _WIN32
signal(SIGPIPE, SIG_IGN);
signal(SIGPIPE, SIG_IGN);
+#endif
glob_argc = argc; glob_argv = argv;
glob_argc = argc; glob_argv = argv;
+catchStack.cursor = -1;
initialize_gc_option();
initialize_nitni_global_refs();
var = NEW_core__Sys(&type_core__Sys);
initialize_gc_option();
initialize_nitni_global_refs();
var = NEW_core__Sys(&type_core__Sys);
@@
-132,6
+142,8
@@
const char FILE_nitc__loader[] = "./loader.nit";
const char FILE_nitc__modelbuilder_base[] = "./modelbuilder_base.nit";
const char FILE_nitc__model[] = "./model/model.nit";
const char FILE_nitc__mmodule[] = "./model/mmodule.nit";
const char FILE_nitc__modelbuilder_base[] = "./modelbuilder_base.nit";
const char FILE_nitc__model[] = "./model/model.nit";
const char FILE_nitc__mmodule[] = "./model/mmodule.nit";
+const char FILE_nitc__mpackage[] = "./model/mpackage.nit";
+const char FILE_nitc__model_base[] = "./model/model_base.nit";
const char FILE_nitc__location[] = "./location.nit";
const char FILE_core[] = "../lib/core/core.nit";
const char FILE_core__posix[] = "../lib/core/posix.nit";
const char FILE_nitc__location[] = "./location.nit";
const char FILE_core[] = "../lib/core/core.nit";
const char FILE_core__posix[] = "../lib/core/posix.nit";
@@
-151,7
+163,9
@@
const char FILE_core__circular_array[] = "../lib/core/collection/circular_array.
const char FILE_core__sorter[] = "../lib/core/collection/sorter.nit";
const char FILE_core__hash_collection[] = "../lib/core/collection/hash_collection.nit";
const char FILE_core__union_find[] = "../lib/core/collection/union_find.nit";
const char FILE_core__sorter[] = "../lib/core/collection/sorter.nit";
const char FILE_core__hash_collection[] = "../lib/core/collection/hash_collection.nit";
const char FILE_core__union_find[] = "../lib/core/collection/union_find.nit";
+const char FILE_core__fixed_ints[] = "../lib/core/fixed_ints.nit";
const char FILE_core__string_search[] = "../lib/core/text/string_search.nit";
const char FILE_core__string_search[] = "../lib/core/text/string_search.nit";
+const char FILE_core__fixed_ints_text[] = "../lib/core/text/fixed_ints_text.nit";
const char FILE_core__environ[] = "../lib/core/environ.nit";
const char FILE_core__file[] = "../lib/core/file.nit";
const char FILE_core__stream[] = "../lib/core/stream.nit";
const char FILE_core__environ[] = "../lib/core/environ.nit";
const char FILE_core__file[] = "../lib/core/file.nit";
const char FILE_core__stream[] = "../lib/core/stream.nit";
@@
-160,6
+174,7
@@
const char FILE_core__bytes[] = "../lib/core/bytes.nit";
const char FILE_core__codecs[] = "../lib/core/codecs/codecs.nit";
const char FILE_core__codec_base[] = "../lib/core/codecs/codec_base.nit";
const char FILE_core__utf8[] = "../lib/core/codecs/utf8.nit";
const char FILE_core__codecs[] = "../lib/core/codecs/codecs.nit";
const char FILE_core__codec_base[] = "../lib/core/codecs/codec_base.nit";
const char FILE_core__utf8[] = "../lib/core/codecs/utf8.nit";
+const char FILE_core__iso8859_95d1[] = "../lib/core/codecs/iso8859_1.nit";
const char FILE_core__time[] = "../lib/core/time.nit";
const char FILE_core__gc[] = "../lib/core/gc.nit";
const char FILE_core__exec[] = "../lib/core/exec.nit";
const char FILE_core__time[] = "../lib/core/time.nit";
const char FILE_core__gc[] = "../lib/core/gc.nit";
const char FILE_core__exec[] = "../lib/core/exec.nit";
@@
-167,9
+182,6
@@
const char FILE_core__bitset[] = "../lib/core/bitset.nit";
const char FILE_core__queue[] = "../lib/core/queue.nit";
const char FILE_core__numeric[] = "../lib/core/numeric.nit";
const char FILE_core__re[] = "../lib/core/re.nit";
const char FILE_core__queue[] = "../lib/core/queue.nit";
const char FILE_core__numeric[] = "../lib/core/numeric.nit";
const char FILE_core__re[] = "../lib/core/re.nit";
-const char FILE_core__fixed_ints[] = "../lib/core/fixed_ints.nit";
-const char FILE_nitc__mpackage[] = "./model/mpackage.nit";
-const char FILE_nitc__model_base[] = "./model/model_base.nit";
const char FILE_more_collections[] = "../lib/more_collections.nit";
const char FILE_serialization[] = "../lib/serialization/serialization.nit";
const char FILE_poset[] = "../lib/poset.nit";
const char FILE_more_collections[] = "../lib/more_collections.nit";
const char FILE_serialization[] = "../lib/serialization/serialization.nit";
const char FILE_poset[] = "../lib/poset.nit";
@@
-183,6
+195,7
@@
const char FILE_nitc__parser[] = "./parser/parser.nit";
const char FILE_nitc__parser_prod[] = "./parser/parser_prod.nit";
const char FILE_nitc__lexer[] = "./parser/lexer.nit";
const char FILE_nitc__parser_nodes[] = "./parser/parser_nodes.nit";
const char FILE_nitc__parser_prod[] = "./parser/parser_prod.nit";
const char FILE_nitc__lexer[] = "./parser/lexer.nit";
const char FILE_nitc__parser_nodes[] = "./parser/parser_nodes.nit";
+const char FILE_console[] = "../lib/console.nit";
const char FILE_nitc__lexer_work[] = "./parser/lexer_work.nit";
const char FILE_nitc__tables[] = "./parser/tables.nit";
const char FILE_nitc__parser_work[] = "./parser/parser_work.nit";
const char FILE_nitc__lexer_work[] = "./parser/lexer_work.nit";
const char FILE_nitc__tables[] = "./parser/tables.nit";
const char FILE_nitc__parser_work[] = "./parser/parser_work.nit";