summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorXavier Leroy <xavier.leroy@inria.fr>1996-11-07 13:12:16 +0000
committerXavier Leroy <xavier.leroy@inria.fr>1996-11-07 13:12:16 +0000
commit497933ed8ae4a7ed6553929535b916e42020119e (patch)
tree7cf720f731626898fdef0ebbb614c8273ef3d77f
parentab737837060a6c45917a7cd37f0e7c57eac813f2 (diff)
Ajout de printexc.c
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@1176 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
-rw-r--r--asmrun/.depend26
-rw-r--r--asmrun/Makefile6
-rw-r--r--asmrun/Makefile.nt12
-rw-r--r--asmrun/startup.c9
4 files changed, 37 insertions, 16 deletions
diff --git a/asmrun/.depend b/asmrun/.depend
index 7c1008426..aa3daaca9 100644
--- a/asmrun/.depend
+++ b/asmrun/.depend
@@ -64,7 +64,8 @@ lexing.o: lexing.c ../byterun/fail.h ../byterun/misc.h \
../byterun/gc.h ../byterun/major_gc.h ../byterun/freelist.h \
../byterun/minor_gc.h ../byterun/str.h
main.o: main.c ../byterun/misc.h ../byterun/config.h \
- ../byterun/../config/m.h ../byterun/../config/s.h
+ ../byterun/../config/m.h ../byterun/../config/s.h \
+ ../byterun/mlvalues.h ../byterun/sys.h
major_gc.o: major_gc.c ../byterun/config.h ../byterun/../config/m.h \
../byterun/../config/s.h ../byterun/fail.h ../byterun/misc.h \
../byterun/mlvalues.h ../byterun/freelist.h ../byterun/gc.h \
@@ -93,6 +94,9 @@ parsing.o: parsing.c ../byterun/config.h ../byterun/../config/m.h \
../byterun/../config/s.h ../byterun/mlvalues.h ../byterun/misc.h \
../byterun/memory.h ../byterun/gc.h ../byterun/major_gc.h \
../byterun/freelist.h ../byterun/minor_gc.h ../byterun/alloc.h
+printexc.o: printexc.c ../byterun/fail.h ../byterun/misc.h \
+ ../byterun/config.h ../byterun/../config/m.h ../byterun/../config/s.h \
+ ../byterun/mlvalues.h
roots.o: roots.c ../byterun/memory.h ../byterun/config.h \
../byterun/../config/m.h ../byterun/../config/s.h ../byterun/gc.h \
../byterun/mlvalues.h ../byterun/misc.h ../byterun/major_gc.h \
@@ -103,9 +107,10 @@ signals.o: signals.c ../byterun/alloc.h ../byterun/misc.h \
../byterun/mlvalues.h ../byterun/memory.h ../byterun/gc.h \
../byterun/major_gc.h ../byterun/freelist.h ../byterun/minor_gc.h \
../byterun/fail.h ../byterun/signals.h
-startup.o: startup.c ../byterun/gc.h ../byterun/mlvalues.h \
+startup.o: startup.c ../byterun/fail.h ../byterun/misc.h \
../byterun/config.h ../byterun/../config/m.h ../byterun/../config/s.h \
- ../byterun/misc.h ../byterun/gc_ctrl.h ../byterun/sys.h
+ ../byterun/mlvalues.h ../byterun/gc.h ../byterun/gc_ctrl.h \
+ ../byterun/sys.h
str.o: str.c ../byterun/alloc.h ../byterun/misc.h ../byterun/config.h \
../byterun/../config/m.h ../byterun/../config/s.h \
../byterun/mlvalues.h ../byterun/fail.h
@@ -114,7 +119,7 @@ sys.o: sys.c ../byterun/config.h ../byterun/../config/m.h \
../byterun/mlvalues.h ../byterun/fail.h ../byterun/instruct.h \
../byterun/signals.h ../byterun/stacks.h ../byterun/memory.h \
../byterun/gc.h ../byterun/major_gc.h ../byterun/freelist.h \
- ../byterun/minor_gc.h
+ ../byterun/minor_gc.h ../byterun/str.h ../byterun/sys.h
terminfo.o: terminfo.c ../byterun/config.h ../byterun/../config/m.h \
../byterun/../config/s.h ../byterun/alloc.h ../byterun/misc.h \
../byterun/mlvalues.h ../byterun/fail.h ../byterun/io.h
@@ -184,7 +189,8 @@ lexing.d.o: lexing.c ../byterun/fail.h ../byterun/misc.h \
../byterun/gc.h ../byterun/major_gc.h ../byterun/freelist.h \
../byterun/minor_gc.h ../byterun/str.h
main.d.o: main.c ../byterun/misc.h ../byterun/config.h \
- ../byterun/../config/m.h ../byterun/../config/s.h
+ ../byterun/../config/m.h ../byterun/../config/s.h \
+ ../byterun/mlvalues.h ../byterun/sys.h
major_gc.d.o: major_gc.c ../byterun/config.h ../byterun/../config/m.h \
../byterun/../config/s.h ../byterun/fail.h ../byterun/misc.h \
../byterun/mlvalues.h ../byterun/freelist.h ../byterun/gc.h \
@@ -213,6 +219,9 @@ parsing.d.o: parsing.c ../byterun/config.h ../byterun/../config/m.h \
../byterun/../config/s.h ../byterun/mlvalues.h ../byterun/misc.h \
../byterun/memory.h ../byterun/gc.h ../byterun/major_gc.h \
../byterun/freelist.h ../byterun/minor_gc.h ../byterun/alloc.h
+printexc.d.o: printexc.c ../byterun/fail.h ../byterun/misc.h \
+ ../byterun/config.h ../byterun/../config/m.h ../byterun/../config/s.h \
+ ../byterun/mlvalues.h
roots.d.o: roots.c ../byterun/memory.h ../byterun/config.h \
../byterun/../config/m.h ../byterun/../config/s.h ../byterun/gc.h \
../byterun/mlvalues.h ../byterun/misc.h ../byterun/major_gc.h \
@@ -223,9 +232,10 @@ signals.d.o: signals.c ../byterun/alloc.h ../byterun/misc.h \
../byterun/mlvalues.h ../byterun/memory.h ../byterun/gc.h \
../byterun/major_gc.h ../byterun/freelist.h ../byterun/minor_gc.h \
../byterun/fail.h ../byterun/signals.h
-startup.d.o: startup.c ../byterun/gc.h ../byterun/mlvalues.h \
+startup.d.o: startup.c ../byterun/fail.h ../byterun/misc.h \
../byterun/config.h ../byterun/../config/m.h ../byterun/../config/s.h \
- ../byterun/misc.h ../byterun/gc_ctrl.h ../byterun/sys.h
+ ../byterun/mlvalues.h ../byterun/gc.h ../byterun/gc_ctrl.h \
+ ../byterun/sys.h
str.d.o: str.c ../byterun/alloc.h ../byterun/misc.h ../byterun/config.h \
../byterun/../config/m.h ../byterun/../config/s.h \
../byterun/mlvalues.h ../byterun/fail.h
@@ -234,7 +244,7 @@ sys.d.o: sys.c ../byterun/config.h ../byterun/../config/m.h \
../byterun/mlvalues.h ../byterun/fail.h ../byterun/instruct.h \
../byterun/signals.h ../byterun/stacks.h ../byterun/memory.h \
../byterun/gc.h ../byterun/major_gc.h ../byterun/freelist.h \
- ../byterun/minor_gc.h
+ ../byterun/minor_gc.h ../byterun/str.h ../byterun/sys.h
terminfo.d.o: terminfo.c ../byterun/config.h ../byterun/../config/m.h \
../byterun/../config/s.h ../byterun/alloc.h ../byterun/misc.h \
../byterun/mlvalues.h ../byterun/fail.h ../byterun/io.h
diff --git a/asmrun/Makefile b/asmrun/Makefile
index 510d25222..553cb2ff0 100644
--- a/asmrun/Makefile
+++ b/asmrun/Makefile
@@ -8,7 +8,7 @@ DFLAGS=$(FLAGS) -g -DDEBUG $(NATIVECCCOMPOPTS)
COBJS=startup.o main.o fail.o roots.o signals.o \
misc.o freelist.o major_gc.o minor_gc.o memory.o alloc.o compare.o ints.o \
floats.o str.o array.o io.o extern.o intern.o hash.o sys.o parsing.o \
- gc_ctrl.o terminfo.o md5.o obj.o lexing.o
+ gc_ctrl.o terminfo.o md5.o obj.o lexing.o printexc.o
ASMOBJS=$(ARCH).o
@@ -78,10 +78,12 @@ obj.c: ../byterun/obj.c
ln -s ../byterun/obj.c obj.c
lexing.c: ../byterun/lexing.c
ln -s ../byterun/lexing.c lexing.c
+printexc.c: ../byterun/printexc.c
+ ln -s ../byterun/printexc.c printexc.c
LINKEDFILES=misc.c freelist.c major_gc.c minor_gc.c memory.c alloc.c \
compare.c ints.c floats.c str.c io.c extern.c intern.c hash.c sys.c \
- parsing.c gc_ctrl.c terminfo.c md5.c obj.c lexing.c
+ parsing.c gc_ctrl.c terminfo.c md5.c obj.c lexing.c printexc.c
clean::
rm -f $(LINKEDFILES)
diff --git a/asmrun/Makefile.nt b/asmrun/Makefile.nt
index 9c900c05b..ed9de0325 100644
--- a/asmrun/Makefile.nt
+++ b/asmrun/Makefile.nt
@@ -7,8 +7,7 @@ COBJS=startup.obj main.obj fail.obj roots.obj signals.obj \
misc.obj freelist.obj major_gc.obj minor_gc.obj memory.obj alloc.obj \
compare.obj ints.obj floats.obj str.obj array.obj io.obj extern.obj \
intern.obj hash.obj sys.obj parsing.obj gc_ctrl.obj terminfo.obj \
- md5.obj obj.obj lexing.obj \
- wincmdline.obj
+ md5.obj obj.obj lexing.obj wincmdline.obj printexc.obj
ASMOBJS=$(ARCH)nt.obj
@@ -67,10 +66,19 @@ obj.c: ../byterun/obj.c
cp ../byterun/obj.c obj.c
lexing.c: ../byterun/lexing.c
cp ../byterun/lexing.c lexing.c
+printexc.c: ../byterun/printexc.c
+ cp ../byterun/printexc.c printexc.c
wincmdline.obj: ../byterun/wincmdline.c
$(CC) /c $(NATIVECCCOMPOPTS) ..\byterun\wincmdline.c
+LINKEDFILES=misc.c freelist.c major_gc.c minor_gc.c memory.c alloc.c \
+ compare.c ints.c floats.c str.c io.c extern.c intern.c hash.c sys.c \
+ parsing.c gc_ctrl.c terminfo.c md5.c obj.c lexing.c printexc.c
+
+clean::
+ rm -f $(LINKEDFILES)
+
clean::
rm -f *.obj *.lib *~
diff --git a/asmrun/startup.c b/asmrun/startup.c
index bf2a5b81b..e50b79177 100644
--- a/asmrun/startup.c
+++ b/asmrun/startup.c
@@ -15,11 +15,15 @@
#include <stdio.h>
#include <stdlib.h>
+#include "fail.h"
#include "gc.h"
#include "gc_ctrl.h"
#include "misc.h"
#include "mlvalues.h"
#include "sys.h"
+#ifdef HAS_UI
+#include "ui.h"
+#endif
header_t atom_table[256];
char * static_data_start, * static_data_end;
@@ -85,10 +89,7 @@ void caml_main(argv)
init_signals();
sys_init(argv);
retcode = caml_start_program();
- if (retcode != 0) {
- fatal_error_arg("Fatal error: uncaught exception %s.\n",
- String_val(Field(Field(retcode, 0), 0)));
- }
+ if (retcode != 0) fatal_uncaught_exception(retcode);
}
void caml_startup(argv)