diff options
-rw-r--r-- | .depend | 71 | ||||
-rw-r--r-- | Makefile | 2 | ||||
-rw-r--r-- | asmrun/.depend | 933 | ||||
-rwxr-xr-x | boot/ocamlc | bin | 886131 -> 887803 bytes | |||
-rw-r--r-- | byterun/.depend | 8 | ||||
-rw-r--r-- | driver/main.ml | 1 | ||||
-rw-r--r-- | driver/main_args.ml | 2 | ||||
-rw-r--r-- | driver/main_args.mli | 1 | ||||
-rw-r--r-- | emacs/caml-types.el | 89 | ||||
-rw-r--r-- | ocamldoc/Makefile | 1 | ||||
-rw-r--r-- | otherlibs/bigarray/.depend | 26 | ||||
-rw-r--r-- | otherlibs/graph/.depend | 83 | ||||
-rw-r--r-- | otherlibs/num/.depend | 12 | ||||
-rw-r--r-- | otherlibs/str/.depend | 6 | ||||
-rw-r--r-- | otherlibs/unix/.depend | 368 | ||||
-rw-r--r-- | tools/.depend | 2 | ||||
-rw-r--r-- | tools/ocamlcp.ml | 1 | ||||
-rw-r--r-- | typing/stypes.ml | 62 | ||||
-rw-r--r-- | typing/stypes.mli | 18 | ||||
-rw-r--r-- | typing/typecore.ml | 160 | ||||
-rw-r--r-- | typing/typemod.ml | 5 | ||||
-rw-r--r-- | utils/clflags.ml | 1 | ||||
-rw-r--r-- | utils/misc.ml | 10 | ||||
-rw-r--r-- | utils/misc.mli | 2 |
24 files changed, 1157 insertions, 707 deletions
@@ -73,6 +73,7 @@ typing/path.cmi: typing/ident.cmi typing/predef.cmi: typing/ident.cmi typing/path.cmi typing/types.cmi typing/printtyp.cmi: typing/ident.cmi parsing/longident.cmi \ typing/outcometree.cmi typing/path.cmi typing/types.cmi +typing/stypes.cmi: parsing/location.cmi typing/types.cmi typing/subst.cmi: typing/ident.cmi typing/path.cmi typing/types.cmi typing/typeclass.cmi: parsing/asttypes.cmi typing/ctype.cmi typing/env.cmi \ typing/ident.cmi parsing/location.cmi parsing/longident.cmi \ @@ -168,6 +169,10 @@ typing/printtyp.cmx: parsing/asttypes.cmi typing/btype.cmx utils/clflags.cmx \ utils/misc.cmx typing/oprint.cmx typing/outcometree.cmi typing/path.cmx \ typing/predef.cmx typing/primitive.cmx typing/types.cmx \ typing/printtyp.cmi +typing/stypes.cmo: utils/clflags.cmo parsing/location.cmi typing/printtyp.cmi \ + typing/stypes.cmi +typing/stypes.cmx: utils/clflags.cmx parsing/location.cmx typing/printtyp.cmx \ + typing/stypes.cmi typing/subst.cmo: typing/btype.cmi typing/ident.cmi utils/misc.cmi \ typing/path.cmi utils/tbl.cmi typing/types.cmi typing/subst.cmi typing/subst.cmx: typing/btype.cmx typing/ident.cmx utils/misc.cmx \ @@ -190,16 +195,16 @@ typing/typecore.cmo: parsing/asttypes.cmi typing/btype.cmi utils/clflags.cmo \ typing/ctype.cmi typing/env.cmi typing/ident.cmi parsing/location.cmi \ parsing/longident.cmi utils/misc.cmi typing/parmatch.cmi \ parsing/parsetree.cmi typing/path.cmi typing/predef.cmi \ - typing/primitive.cmi typing/printtyp.cmi typing/typedtree.cmi \ - typing/types.cmi typing/typetexp.cmi utils/warnings.cmi \ - typing/typecore.cmi + typing/primitive.cmi typing/printtyp.cmi typing/stypes.cmi \ + typing/typedtree.cmi typing/types.cmi typing/typetexp.cmi \ + utils/warnings.cmi typing/typecore.cmi typing/typecore.cmx: parsing/asttypes.cmi typing/btype.cmx utils/clflags.cmx \ typing/ctype.cmx typing/env.cmx typing/ident.cmx parsing/location.cmx \ parsing/longident.cmx utils/misc.cmx typing/parmatch.cmx \ parsing/parsetree.cmi typing/path.cmx typing/predef.cmx \ - typing/primitive.cmx typing/printtyp.cmx typing/typedtree.cmx \ - typing/types.cmx typing/typetexp.cmx utils/warnings.cmx \ - typing/typecore.cmi + typing/primitive.cmx typing/printtyp.cmx typing/stypes.cmx \ + typing/typedtree.cmx typing/types.cmx typing/typetexp.cmx \ + utils/warnings.cmx typing/typecore.cmi typing/typedecl.cmo: parsing/asttypes.cmi typing/btype.cmi utils/clflags.cmo \ utils/config.cmi typing/ctype.cmi typing/env.cmi typing/ident.cmi \ typing/includecore.cmi parsing/location.cmi parsing/longident.cmi \ @@ -224,16 +229,16 @@ typing/typemod.cmo: utils/clflags.cmo utils/config.cmi typing/ctype.cmi \ typing/env.cmi typing/ident.cmi typing/includemod.cmi \ parsing/location.cmi parsing/longident.cmi utils/misc.cmi \ typing/mtype.cmi parsing/parsetree.cmi typing/path.cmi \ - typing/printtyp.cmi typing/subst.cmi typing/typeclass.cmi \ - typing/typecore.cmi typing/typedecl.cmi typing/typedtree.cmi \ - typing/types.cmi typing/typemod.cmi + typing/printtyp.cmi typing/stypes.cmi typing/subst.cmi \ + typing/typeclass.cmi typing/typecore.cmi typing/typedecl.cmi \ + typing/typedtree.cmi typing/types.cmi typing/typemod.cmi typing/typemod.cmx: utils/clflags.cmx utils/config.cmx typing/ctype.cmx \ typing/env.cmx typing/ident.cmx typing/includemod.cmx \ parsing/location.cmx parsing/longident.cmx utils/misc.cmx \ typing/mtype.cmx parsing/parsetree.cmi typing/path.cmx \ - typing/printtyp.cmx typing/subst.cmx typing/typeclass.cmx \ - typing/typecore.cmx typing/typedecl.cmx typing/typedtree.cmx \ - typing/types.cmx typing/typemod.cmi + typing/printtyp.cmx typing/stypes.cmx typing/subst.cmx \ + typing/typeclass.cmx typing/typecore.cmx typing/typedecl.cmx \ + typing/typedtree.cmx typing/types.cmx typing/typemod.cmi typing/types.cmo: parsing/asttypes.cmi typing/ident.cmi utils/misc.cmi \ typing/path.cmi typing/primitive.cmi typing/types.cmi typing/types.cmx: parsing/asttypes.cmi typing/ident.cmx utils/misc.cmx \ @@ -295,14 +300,14 @@ bytecomp/bytelink.cmx: bytecomp/bytesections.cmx utils/ccomp.cmx \ bytecomp/emitcode.cmx typing/ident.cmx bytecomp/instruct.cmx \ utils/misc.cmx bytecomp/opcodes.cmx bytecomp/symtable.cmx \ bytecomp/bytelink.cmi -bytecomp/bytepackager.cmo: bytecomp/bytelink.cmi utils/clflags.cmo \ - utils/config.cmi bytecomp/emitcode.cmi typing/env.cmi typing/ident.cmi \ - bytecomp/instruct.cmi utils/misc.cmi bytecomp/opcodes.cmo \ - typing/typemod.cmi bytecomp/bytepackager.cmi -bytecomp/bytepackager.cmx: bytecomp/bytelink.cmx utils/clflags.cmx \ - utils/config.cmx bytecomp/emitcode.cmx typing/env.cmx typing/ident.cmx \ - bytecomp/instruct.cmx utils/misc.cmx bytecomp/opcodes.cmx \ - typing/typemod.cmx bytecomp/bytepackager.cmi +bytecomp/bytepackager.cmo: bytecomp/bytegen.cmi bytecomp/bytelink.cmi \ + utils/clflags.cmo utils/config.cmi bytecomp/emitcode.cmi typing/env.cmi \ + typing/ident.cmi bytecomp/instruct.cmi utils/misc.cmi \ + bytecomp/translmod.cmi typing/typemod.cmi bytecomp/bytepackager.cmi +bytecomp/bytepackager.cmx: bytecomp/bytegen.cmx bytecomp/bytelink.cmx \ + utils/clflags.cmx utils/config.cmx bytecomp/emitcode.cmx typing/env.cmx \ + typing/ident.cmx bytecomp/instruct.cmx utils/misc.cmx \ + bytecomp/translmod.cmx typing/typemod.cmx bytecomp/bytepackager.cmi bytecomp/bytesections.cmo: utils/config.cmi bytecomp/bytesections.cmi bytecomp/bytesections.cmx: utils/config.cmx bytecomp/bytesections.cmi bytecomp/dll.cmo: utils/config.cmi utils/misc.cmi bytecomp/dll.cmi @@ -473,16 +478,14 @@ asmcomp/asmlink.cmx: asmcomp/asmgen.cmx utils/ccomp.cmx utils/clflags.cmx \ parsing/location.cmx utils/misc.cmx asmcomp/proc.cmx \ bytecomp/runtimedef.cmx asmcomp/asmlink.cmi asmcomp/asmpackager.cmo: asmcomp/asmgen.cmi asmcomp/asmlink.cmi \ - utils/ccomp.cmi asmcomp/clambda.cmi asmcomp/cmmgen.cmi \ - asmcomp/compilenv.cmi utils/config.cmi asmcomp/emit.cmi \ - asmcomp/emitaux.cmi typing/env.cmi typing/ident.cmi bytecomp/lambda.cmi \ - parsing/location.cmi utils/misc.cmi asmcomp/proc.cmi utils/tbl.cmi \ + utils/ccomp.cmi asmcomp/clambda.cmi asmcomp/compilenv.cmi \ + utils/config.cmi typing/env.cmi typing/ident.cmi bytecomp/lambda.cmi \ + parsing/location.cmi utils/misc.cmi utils/tbl.cmi bytecomp/translmod.cmi \ typing/typemod.cmi asmcomp/asmpackager.cmi asmcomp/asmpackager.cmx: asmcomp/asmgen.cmx asmcomp/asmlink.cmx \ - utils/ccomp.cmx asmcomp/clambda.cmx asmcomp/cmmgen.cmx \ - asmcomp/compilenv.cmx utils/config.cmx asmcomp/emit.cmx \ - asmcomp/emitaux.cmx typing/env.cmx typing/ident.cmx bytecomp/lambda.cmx \ - parsing/location.cmx utils/misc.cmx asmcomp/proc.cmx utils/tbl.cmx \ + utils/ccomp.cmx asmcomp/clambda.cmx asmcomp/compilenv.cmx \ + utils/config.cmx typing/env.cmx typing/ident.cmx bytecomp/lambda.cmx \ + parsing/location.cmx utils/misc.cmx utils/tbl.cmx bytecomp/translmod.cmx \ typing/typemod.cmx asmcomp/asmpackager.cmi asmcomp/clambda.cmo: parsing/asttypes.cmi typing/ident.cmi \ bytecomp/lambda.cmi asmcomp/clambda.cmi @@ -499,13 +502,13 @@ asmcomp/closure.cmx: parsing/asttypes.cmi asmcomp/clambda.cmx \ asmcomp/cmm.cmo: asmcomp/arch.cmo typing/ident.cmi asmcomp/cmm.cmi asmcomp/cmm.cmx: asmcomp/arch.cmx typing/ident.cmx asmcomp/cmm.cmi asmcomp/cmmgen.cmo: asmcomp/arch.cmo parsing/asttypes.cmi asmcomp/clambda.cmi \ - utils/clflags.cmo asmcomp/cmm.cmi asmcomp/compilenv.cmi typing/ident.cmi \ - bytecomp/lambda.cmi utils/misc.cmi typing/primitive.cmi asmcomp/proc.cmi \ - bytecomp/switch.cmi typing/types.cmi asmcomp/cmmgen.cmi + utils/clflags.cmo asmcomp/cmm.cmi asmcomp/compilenv.cmi utils/config.cmi \ + typing/ident.cmi bytecomp/lambda.cmi utils/misc.cmi typing/primitive.cmi \ + asmcomp/proc.cmi bytecomp/switch.cmi typing/types.cmi asmcomp/cmmgen.cmi asmcomp/cmmgen.cmx: asmcomp/arch.cmx parsing/asttypes.cmi asmcomp/clambda.cmx \ - utils/clflags.cmx asmcomp/cmm.cmx asmcomp/compilenv.cmx typing/ident.cmx \ - bytecomp/lambda.cmx utils/misc.cmx typing/primitive.cmx asmcomp/proc.cmx \ - bytecomp/switch.cmx typing/types.cmx asmcomp/cmmgen.cmi + utils/clflags.cmx asmcomp/cmm.cmx asmcomp/compilenv.cmx utils/config.cmx \ + typing/ident.cmx bytecomp/lambda.cmx utils/misc.cmx typing/primitive.cmx \ + asmcomp/proc.cmx bytecomp/switch.cmx typing/types.cmx asmcomp/cmmgen.cmi asmcomp/codegen.cmo: asmcomp/cmm.cmi asmcomp/coloring.cmi asmcomp/emit.cmi \ asmcomp/interf.cmi asmcomp/linearize.cmi asmcomp/liveness.cmi \ asmcomp/printcmm.cmi asmcomp/printlinear.cmi asmcomp/printmach.cmi \ @@ -52,7 +52,7 @@ TYPING=typing/ident.cmo typing/path.cmo \ typing/printtyp.cmo typing/includeclass.cmo \ typing/mtype.cmo typing/includecore.cmo \ typing/includemod.cmo typing/parmatch.cmo \ - typing/typetexp.cmo typing/typecore.cmo \ + typing/typetexp.cmo typing/stypes.cmo typing/typecore.cmo \ typing/typedecl.cmo typing/typeclass.cmo \ typing/typemod.cmo diff --git a/asmrun/.depend b/asmrun/.depend index 270f77ba9..63c99b5b4 100644 --- a/asmrun/.depend +++ b/asmrun/.depend @@ -1,549 +1,498 @@ -alloc.o: alloc.c ../byterun/alloc.h ../byterun/misc.h \ - ../byterun/config.h ../byterun/../config/m.h ../byterun/../config/s.h \ - ../byterun/mlvalues.h ../byterun/custom.h ../byterun/major_gc.h \ - ../byterun/freelist.h ../byterun/memory.h ../byterun/gc.h \ - ../byterun/minor_gc.h ../byterun/stacks.h -array.o: array.c ../byterun/alloc.h ../byterun/misc.h \ - ../byterun/config.h ../byterun/../config/m.h ../byterun/../config/s.h \ - ../byterun/mlvalues.h ../byterun/fail.h ../byterun/memory.h \ - ../byterun/gc.h ../byterun/major_gc.h ../byterun/freelist.h \ - ../byterun/minor_gc.h +alloc.o: alloc.c ../byterun/alloc.h ../byterun/misc.h ../byterun/config.h \ + ../config/m.h ../config/s.h ../byterun/mlvalues.h ../byterun/custom.h \ + ../byterun/major_gc.h ../byterun/freelist.h ../byterun/memory.h \ + ../byterun/gc.h ../byterun/minor_gc.h ../byterun/stacks.h +array.o: array.c ../byterun/alloc.h ../byterun/misc.h ../byterun/config.h \ + ../config/m.h ../config/s.h ../byterun/mlvalues.h ../byterun/fail.h \ + ../byterun/memory.h ../byterun/gc.h ../byterun/major_gc.h \ + ../byterun/freelist.h ../byterun/minor_gc.h callback.o: callback.c ../byterun/callback.h ../byterun/mlvalues.h \ - ../byterun/config.h ../byterun/../config/m.h ../byterun/../config/s.h \ - ../byterun/misc.h ../byterun/fail.h ../byterun/memory.h \ - ../byterun/gc.h ../byterun/major_gc.h ../byterun/freelist.h \ - ../byterun/minor_gc.h -compact.o: compact.c ../byterun/config.h ../byterun/../config/m.h \ - ../byterun/../config/s.h ../byterun/finalise.h ../byterun/roots.h \ - ../byterun/misc.h ../byterun/memory.h ../byterun/gc.h \ - ../byterun/mlvalues.h ../byterun/major_gc.h ../byterun/freelist.h \ - ../byterun/minor_gc.h ../byterun/gc_ctrl.h ../byterun/weak.h + ../byterun/config.h ../config/m.h ../config/s.h ../byterun/misc.h \ + ../byterun/fail.h ../byterun/memory.h ../byterun/gc.h \ + ../byterun/major_gc.h ../byterun/freelist.h ../byterun/minor_gc.h +compact.o: compact.c ../byterun/config.h ../config/m.h ../config/s.h \ + ../byterun/finalise.h ../byterun/roots.h ../byterun/misc.h \ + ../byterun/memory.h ../byterun/gc.h ../byterun/mlvalues.h \ + ../byterun/major_gc.h ../byterun/freelist.h ../byterun/minor_gc.h \ + ../byterun/gc_ctrl.h ../byterun/weak.h compare.o: compare.c ../byterun/custom.h ../byterun/mlvalues.h \ - ../byterun/config.h ../byterun/../config/m.h ../byterun/../config/s.h \ - ../byterun/misc.h ../byterun/fail.h ../byterun/memory.h \ - ../byterun/gc.h ../byterun/major_gc.h ../byterun/freelist.h \ - ../byterun/minor_gc.h + ../byterun/config.h ../config/m.h ../config/s.h ../byterun/misc.h \ + ../byterun/fail.h ../byterun/memory.h ../byterun/gc.h \ + ../byterun/major_gc.h ../byterun/freelist.h ../byterun/minor_gc.h custom.o: custom.c ../byterun/alloc.h ../byterun/misc.h \ - ../byterun/config.h ../byterun/../config/m.h ../byterun/../config/s.h \ - ../byterun/mlvalues.h ../byterun/custom.h ../byterun/fail.h \ - ../byterun/memory.h ../byterun/gc.h ../byterun/major_gc.h \ - ../byterun/freelist.h ../byterun/minor_gc.h -dynlink.o: dynlink.c ../byterun/config.h ../byterun/../config/m.h \ - ../byterun/../config/s.h ../byterun/alloc.h ../byterun/misc.h \ - ../byterun/mlvalues.h ../byterun/dynlink.h ../byterun/fail.h \ - ../byterun/memory.h ../byterun/gc.h ../byterun/major_gc.h \ - ../byterun/freelist.h ../byterun/minor_gc.h ../byterun/osdeps.h \ - ../byterun/prims.h + ../byterun/config.h ../config/m.h ../config/s.h ../byterun/mlvalues.h \ + ../byterun/custom.h ../byterun/fail.h ../byterun/memory.h \ + ../byterun/gc.h ../byterun/major_gc.h ../byterun/freelist.h \ + ../byterun/minor_gc.h +dynlink.o: dynlink.c ../byterun/config.h ../config/m.h ../config/s.h \ + ../byterun/alloc.h ../byterun/misc.h ../byterun/mlvalues.h \ + ../byterun/dynlink.h ../byterun/fail.h ../byterun/memory.h \ + ../byterun/gc.h ../byterun/major_gc.h ../byterun/freelist.h \ + ../byterun/minor_gc.h ../byterun/osdeps.h ../byterun/prims.h extern.o: extern.c ../byterun/alloc.h ../byterun/misc.h \ - ../byterun/config.h ../byterun/../config/m.h ../byterun/../config/s.h \ - ../byterun/mlvalues.h ../byterun/custom.h ../byterun/fail.h \ - ../byterun/gc.h ../byterun/intext.h ../byterun/io.h \ - ../byterun/memory.h ../byterun/major_gc.h ../byterun/freelist.h \ - ../byterun/minor_gc.h ../byterun/reverse.h -fail.o: fail.c ../byterun/alloc.h ../byterun/misc.h \ - ../byterun/config.h ../byterun/../config/m.h ../byterun/../config/s.h \ - ../byterun/mlvalues.h ../byterun/fail.h ../byterun/io.h \ - ../byterun/gc.h ../byterun/memory.h ../byterun/major_gc.h \ - ../byterun/freelist.h ../byterun/minor_gc.h ../byterun/printexc.h \ - ../byterun/signals.h stack.h ../byterun/roots.h + ../byterun/config.h ../config/m.h ../config/s.h ../byterun/mlvalues.h \ + ../byterun/custom.h ../byterun/fail.h ../byterun/gc.h \ + ../byterun/intext.h ../byterun/io.h ../byterun/memory.h \ + ../byterun/major_gc.h ../byterun/freelist.h ../byterun/minor_gc.h \ + ../byterun/reverse.h +fail.o: fail.c ../byterun/alloc.h ../byterun/misc.h ../byterun/config.h \ + ../config/m.h ../config/s.h ../byterun/mlvalues.h ../byterun/fail.h \ + ../byterun/io.h ../byterun/gc.h ../byterun/memory.h \ + ../byterun/major_gc.h ../byterun/freelist.h ../byterun/minor_gc.h \ + ../byterun/printexc.h ../byterun/signals.h stack.h ../byterun/roots.h finalise.o: finalise.c ../byterun/callback.h ../byterun/mlvalues.h \ - ../byterun/config.h ../byterun/../config/m.h ../byterun/../config/s.h \ - ../byterun/misc.h ../byterun/fail.h ../byterun/roots.h \ - ../byterun/memory.h ../byterun/gc.h ../byterun/major_gc.h \ - ../byterun/freelist.h ../byterun/minor_gc.h ../byterun/signals.h + ../byterun/config.h ../config/m.h ../config/s.h ../byterun/misc.h \ + ../byterun/fail.h ../byterun/roots.h ../byterun/memory.h \ + ../byterun/gc.h ../byterun/major_gc.h ../byterun/freelist.h \ + ../byterun/minor_gc.h ../byterun/signals.h floats.o: floats.c ../byterun/alloc.h ../byterun/misc.h \ - ../byterun/config.h ../byterun/../config/m.h ../byterun/../config/s.h \ - ../byterun/mlvalues.h ../byterun/fail.h ../byterun/memory.h \ - ../byterun/gc.h ../byterun/major_gc.h ../byterun/freelist.h \ - ../byterun/minor_gc.h ../byterun/reverse.h ../byterun/stacks.h -freelist.o: freelist.c ../byterun/config.h ../byterun/../config/m.h \ - ../byterun/../config/s.h ../byterun/freelist.h ../byterun/misc.h \ - ../byterun/mlvalues.h ../byterun/gc.h ../byterun/gc_ctrl.h \ - ../byterun/major_gc.h + ../byterun/config.h ../config/m.h ../config/s.h ../byterun/mlvalues.h \ + ../byterun/fail.h ../byterun/memory.h ../byterun/gc.h \ + ../byterun/major_gc.h ../byterun/freelist.h ../byterun/minor_gc.h \ + ../byterun/reverse.h ../byterun/stacks.h +freelist.o: freelist.c ../byterun/config.h ../config/m.h ../config/s.h \ + ../byterun/freelist.h ../byterun/misc.h ../byterun/mlvalues.h \ + ../byterun/gc.h ../byterun/gc_ctrl.h ../byterun/major_gc.h gc_ctrl.o: gc_ctrl.c ../byterun/alloc.h ../byterun/misc.h \ - ../byterun/config.h ../byterun/../config/m.h ../byterun/../config/s.h \ - ../byterun/mlvalues.h ../byterun/compact.h ../byterun/custom.h \ - ../byterun/finalise.h ../byterun/roots.h ../byterun/memory.h \ - ../byterun/gc.h ../byterun/major_gc.h ../byterun/freelist.h \ - ../byterun/minor_gc.h ../byterun/gc_ctrl.h ../byterun/stacks.h + ../byterun/config.h ../config/m.h ../config/s.h ../byterun/mlvalues.h \ + ../byterun/compact.h ../byterun/custom.h ../byterun/finalise.h \ + ../byterun/roots.h ../byterun/memory.h ../byterun/gc.h \ + ../byterun/major_gc.h ../byterun/freelist.h ../byterun/minor_gc.h \ + ../byterun/gc_ctrl.h ../byterun/stacks.h globroots.o: globroots.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 \ - ../byterun/freelist.h ../byterun/minor_gc.h ../byterun/globroots.h -hash.o: hash.c ../byterun/mlvalues.h ../byterun/config.h \ - ../byterun/../config/m.h ../byterun/../config/s.h ../byterun/misc.h \ - ../byterun/custom.h ../byterun/memory.h ../byterun/gc.h \ - ../byterun/major_gc.h ../byterun/freelist.h ../byterun/minor_gc.h + ../config/m.h ../config/s.h ../byterun/gc.h ../byterun/mlvalues.h \ + ../byterun/misc.h ../byterun/major_gc.h ../byterun/freelist.h \ + ../byterun/minor_gc.h ../byterun/globroots.h +hash.o: hash.c ../byterun/mlvalues.h ../byterun/config.h ../config/m.h \ + ../config/s.h ../byterun/misc.h ../byterun/custom.h ../byterun/memory.h \ + ../byterun/gc.h ../byterun/major_gc.h ../byterun/freelist.h \ + ../byterun/minor_gc.h intern.o: intern.c ../byterun/alloc.h ../byterun/misc.h \ - ../byterun/config.h ../byterun/../config/m.h ../byterun/../config/s.h \ - ../byterun/mlvalues.h ../byterun/custom.h ../byterun/fail.h \ - ../byterun/gc.h ../byterun/intext.h ../byterun/io.h \ - ../byterun/memory.h ../byterun/major_gc.h ../byterun/freelist.h \ - ../byterun/minor_gc.h ../byterun/reverse.h ../byterun/md5.h -ints.o: ints.c ../byterun/alloc.h ../byterun/misc.h \ - ../byterun/config.h ../byterun/../config/m.h ../byterun/../config/s.h \ - ../byterun/mlvalues.h ../byterun/custom.h ../byterun/fail.h \ - ../byterun/intext.h ../byterun/io.h ../byterun/memory.h \ - ../byterun/gc.h ../byterun/major_gc.h ../byterun/freelist.h \ - ../byterun/minor_gc.h ../byterun/int64_native.h -io.o: io.c ../byterun/config.h ../byterun/../config/m.h \ - ../byterun/../config/s.h ../byterun/alloc.h ../byterun/misc.h \ - ../byterun/mlvalues.h ../byterun/custom.h ../byterun/fail.h \ - ../byterun/io.h ../byterun/memory.h ../byterun/gc.h \ - ../byterun/major_gc.h ../byterun/freelist.h ../byterun/minor_gc.h \ - ../byterun/signals.h ../byterun/sys.h + ../byterun/config.h ../config/m.h ../config/s.h ../byterun/mlvalues.h \ + ../byterun/custom.h ../byterun/fail.h ../byterun/gc.h \ + ../byterun/intext.h ../byterun/io.h ../byterun/memory.h \ + ../byterun/major_gc.h ../byterun/freelist.h ../byterun/minor_gc.h \ + ../byterun/reverse.h ../byterun/md5.h +ints.o: ints.c ../byterun/alloc.h ../byterun/misc.h ../byterun/config.h \ + ../config/m.h ../config/s.h ../byterun/mlvalues.h ../byterun/custom.h \ + ../byterun/fail.h ../byterun/intext.h ../byterun/io.h \ + ../byterun/memory.h ../byterun/gc.h ../byterun/major_gc.h \ + ../byterun/freelist.h ../byterun/minor_gc.h ../byterun/int64_native.h +io.o: io.c ../byterun/config.h ../config/m.h ../config/s.h \ + ../byterun/alloc.h ../byterun/misc.h ../byterun/mlvalues.h \ + ../byterun/custom.h ../byterun/fail.h ../byterun/io.h \ + ../byterun/memory.h ../byterun/gc.h ../byterun/major_gc.h \ + ../byterun/freelist.h ../byterun/minor_gc.h ../byterun/signals.h \ + ../byterun/sys.h lexing.o: lexing.c ../byterun/fail.h ../byterun/misc.h \ - ../byterun/config.h ../byterun/../config/m.h ../byterun/../config/s.h \ - ../byterun/mlvalues.h ../byterun/stacks.h ../byterun/memory.h \ - ../byterun/gc.h ../byterun/major_gc.h ../byterun/freelist.h \ - ../byterun/minor_gc.h -main.o: main.c ../byterun/misc.h ../byterun/config.h \ - ../byterun/../config/m.h ../byterun/../config/s.h \ - ../byterun/mlvalues.h ../byterun/sys.h + ../byterun/config.h ../config/m.h ../config/s.h ../byterun/mlvalues.h \ + ../byterun/stacks.h ../byterun/memory.h ../byterun/gc.h \ + ../byterun/major_gc.h ../byterun/freelist.h ../byterun/minor_gc.h +main.o: main.c ../byterun/misc.h ../byterun/config.h ../config/m.h \ + ../config/s.h ../byterun/mlvalues.h ../byterun/sys.h major_gc.o: major_gc.c ../byterun/compact.h ../byterun/config.h \ - ../byterun/../config/m.h ../byterun/../config/s.h ../byterun/misc.h \ - ../byterun/custom.h ../byterun/mlvalues.h ../byterun/fail.h \ - ../byterun/finalise.h ../byterun/roots.h ../byterun/memory.h \ - ../byterun/gc.h ../byterun/major_gc.h ../byterun/freelist.h \ - ../byterun/minor_gc.h ../byterun/gc_ctrl.h ../byterun/weak.h + ../config/m.h ../config/s.h ../byterun/misc.h ../byterun/custom.h \ + ../byterun/mlvalues.h ../byterun/fail.h ../byterun/finalise.h \ + ../byterun/roots.h ../byterun/memory.h ../byterun/gc.h \ + ../byterun/major_gc.h ../byterun/freelist.h ../byterun/minor_gc.h \ + ../byterun/gc_ctrl.h ../byterun/weak.h md5.o: md5.c ../byterun/alloc.h ../byterun/misc.h ../byterun/config.h \ - ../byterun/../config/m.h ../byterun/../config/s.h \ - ../byterun/mlvalues.h ../byterun/fail.h ../byterun/md5.h \ - ../byterun/io.h ../byterun/reverse.h + ../config/m.h ../config/s.h ../byterun/mlvalues.h ../byterun/fail.h \ + ../byterun/md5.h ../byterun/io.h ../byterun/reverse.h memory.o: memory.c ../byterun/fail.h ../byterun/misc.h \ - ../byterun/config.h ../byterun/../config/m.h ../byterun/../config/s.h \ - ../byterun/mlvalues.h ../byterun/freelist.h ../byterun/gc.h \ - ../byterun/gc_ctrl.h ../byterun/major_gc.h ../byterun/memory.h \ - ../byterun/minor_gc.h ../byterun/signals.h -meta.o: meta.c ../byterun/alloc.h ../byterun/misc.h \ - ../byterun/config.h ../byterun/../config/m.h ../byterun/../config/s.h \ - ../byterun/mlvalues.h ../byterun/fail.h ../byterun/fix_code.h \ - ../byterun/interp.h ../byterun/major_gc.h ../byterun/freelist.h \ - ../byterun/memory.h ../byterun/gc.h ../byterun/minor_gc.h \ - ../byterun/prims.h ../byterun/stacks.h -minor_gc.o: minor_gc.c ../byterun/config.h ../byterun/../config/m.h \ - ../byterun/../config/s.h ../byterun/fail.h ../byterun/misc.h \ - ../byterun/mlvalues.h ../byterun/finalise.h ../byterun/roots.h \ - ../byterun/memory.h ../byterun/gc.h ../byterun/major_gc.h \ - ../byterun/freelist.h ../byterun/minor_gc.h ../byterun/gc_ctrl.h \ - ../byterun/signals.h -misc.o: misc.c ../byterun/config.h ../byterun/../config/m.h \ - ../byterun/../config/s.h ../byterun/misc.h ../byterun/memory.h \ - ../byterun/gc.h ../byterun/mlvalues.h ../byterun/major_gc.h \ - ../byterun/freelist.h ../byterun/minor_gc.h + ../byterun/config.h ../config/m.h ../config/s.h ../byterun/mlvalues.h \ + ../byterun/freelist.h ../byterun/gc.h ../byterun/gc_ctrl.h \ + ../byterun/major_gc.h ../byterun/memory.h ../byterun/minor_gc.h \ + ../byterun/signals.h +meta.o: meta.c ../byterun/alloc.h ../byterun/misc.h ../byterun/config.h \ + ../config/m.h ../config/s.h ../byterun/mlvalues.h ../byterun/fail.h \ + ../byterun/fix_code.h ../byterun/interp.h ../byterun/major_gc.h \ + ../byterun/freelist.h ../byterun/memory.h ../byterun/gc.h \ + ../byterun/minor_gc.h ../byterun/prims.h ../byterun/stacks.h +minor_gc.o: minor_gc.c ../byterun/config.h ../config/m.h ../config/s.h \ + ../byterun/fail.h ../byterun/misc.h ../byterun/mlvalues.h \ + ../byterun/finalise.h ../byterun/roots.h ../byterun/memory.h \ + ../byterun/gc.h ../byterun/major_gc.h ../byterun/freelist.h \ + ../byterun/minor_gc.h ../byterun/gc_ctrl.h ../byterun/signals.h +misc.o: misc.c ../byterun/config.h ../config/m.h ../config/s.h \ + ../byterun/misc.h ../byterun/memory.h ../byterun/gc.h \ + ../byterun/mlvalues.h ../byterun/major_gc.h ../byterun/freelist.h \ + ../byterun/minor_gc.h obj.o: obj.c ../byterun/alloc.h ../byterun/misc.h ../byterun/config.h \ - ../byterun/../config/m.h ../byterun/../config/s.h \ - ../byterun/mlvalues.h ../byterun/fail.h ../byterun/gc.h \ - ../byterun/major_gc.h ../byterun/freelist.h ../byterun/memory.h \ - ../byterun/minor_gc.h ../byterun/prims.h -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 + ../config/m.h ../config/s.h ../byterun/mlvalues.h ../byterun/fail.h \ + ../byterun/gc.h ../byterun/major_gc.h ../byterun/freelist.h \ + ../byterun/memory.h ../byterun/minor_gc.h ../byterun/prims.h +parsing.o: parsing.c ../byterun/config.h ../config/m.h ../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/backtrace.h ../byterun/mlvalues.h \ - ../byterun/config.h ../byterun/../config/m.h ../byterun/../config/s.h \ - ../byterun/misc.h ../byterun/callback.h ../byterun/debugger.h \ - ../byterun/fail.h ../byterun/printexc.h + ../byterun/config.h ../config/m.h ../config/s.h ../byterun/misc.h \ + ../byterun/callback.h ../byterun/debugger.h ../byterun/fail.h \ + ../byterun/printexc.h roots.o: roots.c ../byterun/finalise.h ../byterun/roots.h \ - ../byterun/misc.h ../byterun/config.h ../byterun/../config/m.h \ - ../byterun/../config/s.h ../byterun/memory.h ../byterun/gc.h \ - ../byterun/mlvalues.h ../byterun/major_gc.h ../byterun/freelist.h \ - ../byterun/minor_gc.h ../byterun/globroots.h stack.h + ../byterun/misc.h ../byterun/config.h ../config/m.h ../config/s.h \ + ../byterun/memory.h ../byterun/gc.h ../byterun/mlvalues.h \ + ../byterun/major_gc.h ../byterun/freelist.h ../byterun/minor_gc.h \ + ../byterun/globroots.h stack.h signals.o: signals.c ../byterun/alloc.h ../byterun/misc.h \ - ../byterun/config.h ../byterun/../config/m.h ../byterun/../config/s.h \ - ../byterun/mlvalues.h ../byterun/callback.h ../byterun/memory.h \ - ../byterun/gc.h ../byterun/major_gc.h ../byterun/freelist.h \ - ../byterun/minor_gc.h ../byterun/fail.h ../byterun/signals.h stack.h \ - ../byterun/sys.h + ../byterun/config.h ../config/m.h ../config/s.h ../byterun/mlvalues.h \ + ../byterun/callback.h ../byterun/memory.h ../byterun/gc.h \ + ../byterun/major_gc.h ../byterun/freelist.h ../byterun/minor_gc.h \ + ../byterun/fail.h ../byterun/signals.h stack.h ../byterun/sys.h startup.o: startup.c ../byterun/callback.h ../byterun/mlvalues.h \ - ../byterun/config.h ../byterun/../config/m.h ../byterun/../config/s.h \ - ../byterun/misc.h ../byterun/custom.h ../byterun/fail.h \ - ../byterun/gc.h ../byterun/gc_ctrl.h ../byterun/osdeps.h \ - ../byterun/printexc.h ../byterun/sys.h + ../byterun/config.h ../config/m.h ../config/s.h ../byterun/misc.h \ + ../byterun/custom.h ../byterun/fail.h ../byterun/gc.h \ + ../byterun/gc_ctrl.h ../byterun/osdeps.h ../byterun/printexc.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 -sys.o: sys.c ../byterun/config.h ../byterun/../config/m.h \ - ../byterun/../config/s.h ../byterun/alloc.h ../byterun/misc.h \ - ../byterun/mlvalues.h ../byterun/debugger.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/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 -unix.o: unix.c ../byterun/config.h ../byterun/../config/m.h \ - ../byterun/../config/s.h ../byterun/memory.h ../byterun/gc.h \ - ../byterun/mlvalues.h ../byterun/misc.h ../byterun/major_gc.h \ - ../byterun/freelist.h ../byterun/minor_gc.h ../byterun/osdeps.h -weak.o: weak.c ../byterun/alloc.h ../byterun/misc.h \ - ../byterun/config.h ../byterun/../config/m.h ../byterun/../config/s.h \ - ../byterun/mlvalues.h ../byterun/fail.h ../byterun/memory.h \ - ../byterun/gc.h ../byterun/major_gc.h ../byterun/freelist.h \ - ../byterun/minor_gc.h -alloc.d.o: alloc.c ../byterun/alloc.h ../byterun/misc.h \ - ../byterun/config.h ../byterun/../config/m.h ../byterun/../config/s.h \ - ../byterun/mlvalues.h ../byterun/custom.h ../byterun/major_gc.h \ - ../byterun/freelist.h ../byterun/memory.h ../byterun/gc.h \ - ../byterun/minor_gc.h ../byterun/stacks.h -array.d.o: array.c ../byterun/alloc.h ../byterun/misc.h \ - ../byterun/config.h ../byterun/../config/m.h ../byterun/../config/s.h \ - ../byterun/mlvalues.h ../byterun/fail.h ../byterun/memory.h \ - ../byterun/gc.h ../byterun/major_gc.h ../byterun/freelist.h \ - ../byterun/minor_gc.h + ../config/m.h ../config/s.h ../byterun/mlvalues.h ../byterun/fail.h +sys.o: sys.c ../byterun/config.h ../config/m.h ../config/s.h \ + ../byterun/alloc.h ../byterun/misc.h ../byterun/mlvalues.h \ + ../byterun/debugger.h ../byterun/fail.h ../byterun/instruct.h \ + ../byterun/osdeps.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/sys.h +terminfo.o: terminfo.c ../byterun/config.h ../config/m.h ../config/s.h \ + ../byterun/alloc.h ../byterun/misc.h ../byterun/mlvalues.h \ + ../byterun/fail.h ../byterun/io.h +unix.o: unix.c ../byterun/config.h ../config/m.h ../config/s.h \ + ../byterun/memory.h ../byterun/gc.h ../byterun/mlvalues.h \ + ../byterun/misc.h ../byterun/major_gc.h ../byterun/freelist.h \ + ../byterun/minor_gc.h ../byterun/osdeps.h +weak.o: weak.c ../byterun/alloc.h ../byterun/misc.h ../byterun/config.h \ + ../config/m.h ../config/s.h ../byterun/mlvalues.h ../byterun/fail.h \ + ../byterun/memory.h ../byterun/gc.h ../byterun/major_gc.h \ + ../byterun/freelist.h ../byterun/minor_gc.h +alloc.d.o: alloc.c ../byterun/alloc.h ../byterun/misc.h ../byterun/config.h \ + ../config/m.h ../config/s.h ../byterun/mlvalues.h ../byterun/custom.h \ + ../byterun/major_gc.h ../byterun/freelist.h ../byterun/memory.h \ + ../byterun/gc.h ../byterun/minor_gc.h ../byterun/stacks.h +array.d.o: array.c ../byterun/alloc.h ../byterun/misc.h ../byterun/config.h \ + ../config/m.h ../config/s.h ../byterun/mlvalues.h ../byterun/fail.h \ + ../byterun/memory.h ../byterun/gc.h ../byterun/major_gc.h \ + ../byterun/freelist.h ../byterun/minor_gc.h callback.d.o: callback.c ../byterun/callback.h ../byterun/mlvalues.h \ - ../byterun/config.h ../byterun/../config/m.h ../byterun/../config/s.h \ - ../byterun/misc.h ../byterun/fail.h ../byterun/memory.h \ - ../byterun/gc.h ../byterun/major_gc.h ../byterun/freelist.h \ - ../byterun/minor_gc.h -compact.d.o: compact.c ../byterun/config.h ../byterun/../config/m.h \ - ../byterun/../config/s.h ../byterun/finalise.h ../byterun/roots.h \ - ../byterun/misc.h ../byterun/memory.h ../byterun/gc.h \ - ../byterun/mlvalues.h ../byterun/major_gc.h ../byterun/freelist.h \ - ../byterun/minor_gc.h ../byterun/gc_ctrl.h ../byterun/weak.h + ../byterun/config.h ../config/m.h ../config/s.h ../byterun/misc.h \ + ../byterun/fail.h ../byterun/memory.h ../byterun/gc.h \ + ../byterun/major_gc.h ../byterun/freelist.h ../byterun/minor_gc.h +compact.d.o: compact.c ../byterun/config.h ../config/m.h ../config/s.h \ + ../byterun/finalise.h ../byterun/roots.h ../byterun/misc.h \ + ../byterun/memory.h ../byterun/gc.h ../byterun/mlvalues.h \ + ../byterun/major_gc.h ../byterun/freelist.h ../byterun/minor_gc.h \ + ../byterun/gc_ctrl.h ../byterun/weak.h compare.d.o: compare.c ../byterun/custom.h ../byterun/mlvalues.h \ - ../byterun/config.h ../byterun/../config/m.h ../byterun/../config/s.h \ - ../byterun/misc.h ../byterun/fail.h ../byterun/memory.h \ - ../byterun/gc.h ../byterun/major_gc.h ../byterun/freelist.h \ - ../byterun/minor_gc.h + ../byterun/config.h ../config/m.h ../config/s.h ../byterun/misc.h \ + ../byterun/fail.h ../byterun/memory.h ../byterun/gc.h \ + ../byterun/major_gc.h ../byterun/freelist.h ../byterun/minor_gc.h custom.d.o: custom.c ../byterun/alloc.h ../byterun/misc.h \ - ../byterun/config.h ../byterun/../config/m.h ../byterun/../config/s.h \ - ../byterun/mlvalues.h ../byterun/custom.h ../byterun/fail.h \ - ../byterun/memory.h ../byterun/gc.h ../byterun/major_gc.h \ - ../byterun/freelist.h ../byterun/minor_gc.h -dynlink.d.o: dynlink.c ../byterun/config.h ../byterun/../config/m.h \ - ../byterun/../config/s.h ../byterun/alloc.h ../byterun/misc.h \ - ../byterun/mlvalues.h ../byterun/dynlink.h ../byterun/fail.h \ - ../byterun/memory.h ../byterun/gc.h ../byterun/major_gc.h \ - ../byterun/freelist.h ../byterun/minor_gc.h ../byterun/osdeps.h \ - ../byterun/prims.h + ../byterun/config.h ../config/m.h ../config/s.h ../byterun/mlvalues.h \ + ../byterun/custom.h ../byterun/fail.h ../byterun/memory.h \ + ../byterun/gc.h ../byterun/major_gc.h ../byterun/freelist.h \ + ../byterun/minor_gc.h +dynlink.d.o: dynlink.c ../byterun/config.h ../config/m.h ../config/s.h \ + ../byterun/alloc.h ../byterun/misc.h ../byterun/mlvalues.h \ + ../byterun/dynlink.h ../byterun/fail.h ../byterun/memory.h \ + ../byterun/gc.h ../byterun/major_gc.h ../byterun/freelist.h \ + ../byterun/minor_gc.h ../byterun/osdeps.h ../byterun/prims.h extern.d.o: extern.c ../byterun/alloc.h ../byterun/misc.h \ - ../byterun/config.h ../byterun/../config/m.h ../byterun/../config/s.h \ - ../byterun/mlvalues.h ../byterun/custom.h ../byterun/fail.h \ - ../byterun/gc.h ../byterun/intext.h ../byterun/io.h \ - ../byterun/memory.h ../byterun/major_gc.h ../byterun/freelist.h \ - ../byterun/minor_gc.h ../byterun/reverse.h -fail.d.o: fail.c ../byterun/alloc.h ../byterun/misc.h \ - ../byterun/config.h ../byterun/../config/m.h ../byterun/../config/s.h \ - ../byterun/mlvalues.h ../byterun/fail.h ../byterun/io.h \ - ../byterun/gc.h ../byterun/memory.h ../byterun/major_gc.h \ - ../byterun/freelist.h ../byterun/minor_gc.h ../byterun/printexc.h \ - ../byterun/signals.h stack.h ../byterun/roots.h + ../byterun/config.h ../config/m.h ../config/s.h ../byterun/mlvalues.h \ + ../byterun/custom.h ../byterun/fail.h ../byterun/gc.h \ + ../byterun/intext.h ../byterun/io.h ../byterun/memory.h \ + ../byterun/major_gc.h ../byterun/freelist.h ../byterun/minor_gc.h \ + ../byterun/reverse.h +fail.d.o: fail.c ../byterun/alloc.h ../byterun/misc.h ../byterun/config.h \ + ../config/m.h ../config/s.h ../byterun/mlvalues.h ../byterun/fail.h \ + ../byterun/io.h ../byterun/gc.h ../byterun/memory.h \ + ../byterun/major_gc.h ../byterun/freelist.h ../byterun/minor_gc.h \ + ../byterun/printexc.h ../byterun/signals.h stack.h ../byterun/roots.h finalise.d.o: finalise.c ../byterun/callback.h ../byterun/mlvalues.h \ - ../byterun/config.h ../byterun/../config/m.h ../byterun/../config/s.h \ - ../byterun/misc.h ../byterun/fail.h ../byterun/roots.h \ - ../byterun/memory.h ../byterun/gc.h ../byterun/major_gc.h \ - ../byterun/freelist.h ../byterun/minor_gc.h ../byterun/signals.h + ../byterun/config.h ../config/m.h ../config/s.h ../byterun/misc.h \ + ../byterun/fail.h ../byterun/roots.h ../byterun/memory.h \ + ../byterun/gc.h ../byterun/major_gc.h ../byterun/freelist.h \ + ../byterun/minor_gc.h ../byterun/signals.h floats.d.o: floats.c ../byterun/alloc.h ../byterun/misc.h \ - ../byterun/config.h ../byterun/../config/m.h ../byterun/../config/s.h \ - ../byterun/mlvalues.h ../byterun/fail.h ../byterun/memory.h \ - ../byterun/gc.h ../byterun/major_gc.h ../byterun/freelist.h \ - ../byterun/minor_gc.h ../byterun/reverse.h ../byterun/stacks.h -freelist.d.o: freelist.c ../byterun/config.h ../byterun/../config/m.h \ - ../byterun/../config/s.h ../byterun/freelist.h ../byterun/misc.h \ - ../byterun/mlvalues.h ../byterun/gc.h ../byterun/gc_ctrl.h \ - ../byterun/major_gc.h + ../byterun/config.h ../config/m.h ../config/s.h ../byterun/mlvalues.h \ + ../byterun/fail.h ../byterun/memory.h ../byterun/gc.h \ + ../byterun/major_gc.h ../byterun/freelist.h ../byterun/minor_gc.h \ + ../byterun/reverse.h ../byterun/stacks.h +freelist.d.o: freelist.c ../byterun/config.h ../config/m.h ../config/s.h \ + ../byterun/freelist.h ../byterun/misc.h ../byterun/mlvalues.h \ + ../byterun/gc.h ../byterun/gc_ctrl.h ../byterun/major_gc.h gc_ctrl.d.o: gc_ctrl.c ../byterun/alloc.h ../byterun/misc.h \ - ../byterun/config.h ../byterun/../config/m.h ../byterun/../config/s.h \ - ../byterun/mlvalues.h ../byterun/compact.h ../byterun/custom.h \ - ../byterun/finalise.h ../byterun/roots.h ../byterun/memory.h \ - ../byterun/gc.h ../byterun/major_gc.h ../byterun/freelist.h \ - ../byterun/minor_gc.h ../byterun/gc_ctrl.h ../byterun/stacks.h + ../byterun/config.h ../config/m.h ../config/s.h ../byterun/mlvalues.h \ + ../byterun/compact.h ../byterun/custom.h ../byterun/finalise.h \ + ../byterun/roots.h ../byterun/memory.h ../byterun/gc.h \ + ../byterun/major_gc.h ../byterun/freelist.h ../byterun/minor_gc.h \ + ../byterun/gc_ctrl.h ../byterun/stacks.h globroots.d.o: globroots.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 \ - ../byterun/freelist.h ../byterun/minor_gc.h ../byterun/globroots.h -hash.d.o: hash.c ../byterun/mlvalues.h ../byterun/config.h \ - ../byterun/../config/m.h ../byterun/../config/s.h ../byterun/misc.h \ - ../byterun/custom.h ../byterun/memory.h ../byterun/gc.h \ - ../byterun/major_gc.h ../byterun/freelist.h ../byterun/minor_gc.h + ../config/m.h ../config/s.h ../byterun/gc.h ../byterun/mlvalues.h \ + ../byterun/misc.h ../byterun/major_gc.h ../byterun/freelist.h \ + ../byterun/minor_gc.h ../byterun/globroots.h +hash.d.o: hash.c ../byterun/mlvalues.h ../byterun/config.h ../config/m.h \ + ../config/s.h ../byterun/misc.h ../byterun/custom.h ../byterun/memory.h \ + ../byterun/gc.h ../byterun/major_gc.h ../byterun/freelist.h \ + ../byterun/minor_gc.h intern.d.o: intern.c ../byterun/alloc.h ../byterun/misc.h \ - ../byterun/config.h ../byterun/../config/m.h ../byterun/../config/s.h \ - ../byterun/mlvalues.h ../byterun/custom.h ../byterun/fail.h \ - ../byterun/gc.h ../byterun/intext.h ../byterun/io.h \ - ../byterun/memory.h ../byterun/major_gc.h ../byterun/freelist.h \ - ../byterun/minor_gc.h ../byterun/reverse.h ../byterun/md5.h -ints.d.o: ints.c ../byterun/alloc.h ../byterun/misc.h \ - ../byterun/config.h ../byterun/../config/m.h ../byterun/../config/s.h \ - ../byterun/mlvalues.h ../byterun/custom.h ../byterun/fail.h \ - ../byterun/intext.h ../byterun/io.h ../byterun/memory.h \ - ../byterun/gc.h ../byterun/major_gc.h ../byterun/freelist.h \ - ../byterun/minor_gc.h ../byterun/int64_native.h -io.d.o: io.c ../byterun/config.h ../byterun/../config/m.h \ - ../byterun/../config/s.h ../byterun/alloc.h ../byterun/misc.h \ - ../byterun/mlvalues.h ../byterun/custom.h ../byterun/fail.h \ - ../byterun/io.h ../byterun/memory.h ../byterun/gc.h \ - ../byterun/major_gc.h ../byterun/freelist.h ../byterun/minor_gc.h \ - ../byterun/signals.h ../byterun/sys.h + ../byterun/config.h ../config/m.h ../config/s.h ../byterun/mlvalues.h \ + ../byterun/custom.h ../byterun/fail.h ../byterun/gc.h \ + ../byterun/intext.h ../byterun/io.h ../byterun/memory.h \ + ../byterun/major_gc.h ../byterun/freelist.h ../byterun/minor_gc.h \ + ../byterun/reverse.h ../byterun/md5.h +ints.d.o: ints.c ../byterun/alloc.h ../byterun/misc.h ../byterun/config.h \ + ../config/m.h ../config/s.h ../byterun/mlvalues.h ../byterun/custom.h \ + ../byterun/fail.h ../byterun/intext.h ../byterun/io.h \ + ../byterun/memory.h ../byterun/gc.h ../byterun/major_gc.h \ + ../byterun/freelist.h ../byterun/minor_gc.h ../byterun/int64_native.h +io.d.o: io.c ../byterun/config.h ../config/m.h ../config/s.h \ + ../byterun/alloc.h ../byterun/misc.h ../byterun/mlvalues.h \ + ../byterun/custom.h ../byterun/fail.h ../byterun/io.h \ + ../byterun/memory.h ../byterun/gc.h ../byterun/major_gc.h \ + ../byterun/freelist.h ../byterun/minor_gc.h ../byterun/signals.h \ + ../byterun/sys.h lexing.d.o: lexing.c ../byterun/fail.h ../byterun/misc.h \ - ../byterun/config.h ../byterun/../config/m.h ../byterun/../config/s.h \ - ../byterun/mlvalues.h ../byterun/stacks.h ../byterun/memory.h \ - ../byterun/gc.h ../byterun/major_gc.h ../byterun/freelist.h \ - ../byterun/minor_gc.h -main.d.o: main.c ../byterun/misc.h ../byterun/config.h \ - ../byterun/../config/m.h ../byterun/../config/s.h \ - ../byterun/mlvalues.h ../byterun/sys.h + ../byterun/config.h ../config/m.h ../config/s.h ../byterun/mlvalues.h \ + ../byterun/stacks.h ../byterun/memory.h ../byterun/gc.h \ + ../byterun/major_gc.h ../byterun/freelist.h ../byterun/minor_gc.h +main.d.o: main.c ../byterun/misc.h ../byterun/config.h ../config/m.h \ + ../config/s.h ../byterun/mlvalues.h ../byterun/sys.h major_gc.d.o: major_gc.c ../byterun/compact.h ../byterun/config.h \ - ../byterun/../config/m.h ../byterun/../config/s.h ../byterun/misc.h \ - ../byterun/custom.h ../byterun/mlvalues.h ../byterun/fail.h \ - ../byterun/finalise.h ../byterun/roots.h ../byterun/memory.h \ - ../byterun/gc.h ../byterun/major_gc.h ../byterun/freelist.h \ - ../byterun/minor_gc.h ../byterun/gc_ctrl.h ../byterun/weak.h + ../config/m.h ../config/s.h ../byterun/misc.h ../byterun/custom.h \ + ../byterun/mlvalues.h ../byterun/fail.h ../byterun/finalise.h \ + ../byterun/roots.h ../byterun/memory.h ../byterun/gc.h \ + ../byterun/major_gc.h ../byterun/freelist.h ../byterun/minor_gc.h \ + ../byterun/gc_ctrl.h ../byterun/weak.h md5.d.o: md5.c ../byterun/alloc.h ../byterun/misc.h ../byterun/config.h \ - ../byterun/../config/m.h ../byterun/../config/s.h \ - ../byterun/mlvalues.h ../byterun/fail.h ../byterun/md5.h \ - ../byterun/io.h ../byterun/reverse.h + ../config/m.h ../config/s.h ../byterun/mlvalues.h ../byterun/fail.h \ + ../byterun/md5.h ../byterun/io.h ../byterun/reverse.h memory.d.o: memory.c ../byterun/fail.h ../byterun/misc.h \ - ../byterun/config.h ../byterun/../config/m.h ../byterun/../config/s.h \ - ../byterun/mlvalues.h ../byterun/freelist.h ../byterun/gc.h \ - ../byterun/gc_ctrl.h ../byterun/major_gc.h ../byterun/memory.h \ - ../byterun/minor_gc.h ../byterun/signals.h -meta.d.o: meta.c ../byterun/alloc.h ../byterun/misc.h \ - ../byterun/config.h ../byterun/../config/m.h ../byterun/../config/s.h \ - ../byterun/mlvalues.h ../byterun/fail.h ../byterun/fix_code.h \ - ../byterun/interp.h ../byterun/major_gc.h ../byterun/freelist.h \ - ../byterun/memory.h ../byterun/gc.h ../byterun/minor_gc.h \ - ../byterun/prims.h ../byterun/stacks.h -minor_gc.d.o: minor_gc.c ../byterun/config.h ../byterun/../config/m.h \ - ../byterun/../config/s.h ../byterun/fail.h ../byterun/misc.h \ - ../byterun/mlvalues.h ../byterun/finalise.h ../byterun/roots.h \ - ../byterun/memory.h ../byterun/gc.h ../byterun/major_gc.h \ - ../byterun/freelist.h ../byterun/minor_gc.h ../byterun/gc_ctrl.h \ - ../byterun/signals.h -misc.d.o: misc.c ../byterun/config.h ../byterun/../config/m.h \ - ../byterun/../config/s.h ../byterun/misc.h ../byterun/memory.h \ - ../byterun/gc.h ../byterun/mlvalues.h ../byterun/major_gc.h \ - ../byterun/freelist.h ../byterun/minor_gc.h + ../byterun/config.h ../config/m.h ../config/s.h ../byterun/mlvalues.h \ + ../byterun/freelist.h ../byterun/gc.h ../byterun/gc_ctrl.h \ + ../byterun/major_gc.h ../byterun/memory.h ../byterun/minor_gc.h \ + ../byterun/signals.h +meta.d.o: meta.c ../byterun/alloc.h ../byterun/misc.h ../byterun/config.h \ + ../config/m.h ../config/s.h ../byterun/mlvalues.h ../byterun/fail.h \ + ../byterun/fix_code.h ../byterun/interp.h ../byterun/major_gc.h \ + ../byterun/freelist.h ../byterun/memory.h ../byterun/gc.h \ + ../byterun/minor_gc.h ../byterun/prims.h ../byterun/stacks.h +minor_gc.d.o: minor_gc.c ../byterun/config.h ../config/m.h ../config/s.h \ + ../byterun/fail.h ../byterun/misc.h ../byterun/mlvalues.h \ + ../byterun/finalise.h ../byterun/roots.h ../byterun/memory.h \ + ../byterun/gc.h ../byterun/major_gc.h ../byterun/freelist.h \ + ../byterun/minor_gc.h ../byterun/gc_ctrl.h ../byterun/signals.h +misc.d.o: misc.c ../byterun/config.h ../config/m.h ../config/s.h \ + ../byterun/misc.h ../byterun/memory.h ../byterun/gc.h \ + ../byterun/mlvalues.h ../byterun/major_gc.h ../byterun/freelist.h \ + ../byterun/minor_gc.h obj.d.o: obj.c ../byterun/alloc.h ../byterun/misc.h ../byterun/config.h \ - ../byterun/../config/m.h ../byterun/../config/s.h \ - ../byterun/mlvalues.h ../byterun/fail.h ../byterun/gc.h \ - ../byterun/major_gc.h ../byterun/freelist.h ../byterun/memory.h \ - ../byterun/minor_gc.h ../byterun/prims.h -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 + ../config/m.h ../config/s.h ../byterun/mlvalues.h ../byterun/fail.h \ + ../byterun/gc.h ../byterun/major_gc.h ../byterun/freelist.h \ + ../byterun/memory.h ../byterun/minor_gc.h ../byterun/prims.h +parsing.d.o: parsing.c ../byterun/config.h ../config/m.h ../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/backtrace.h ../byterun/mlvalues.h \ - ../byterun/config.h ../byterun/../config/m.h ../byterun/../config/s.h \ - ../byterun/misc.h ../byterun/callback.h ../byterun/debugger.h \ - ../byterun/fail.h ../byterun/printexc.h + ../byterun/config.h ../config/m.h ../config/s.h ../byterun/misc.h \ + ../byterun/callback.h ../byterun/debugger.h ../byterun/fail.h \ + ../byterun/printexc.h roots.d.o: roots.c ../byterun/finalise.h ../byterun/roots.h \ - ../byterun/misc.h ../byterun/config.h ../byterun/../config/m.h \ - ../byterun/../config/s.h ../byterun/memory.h ../byterun/gc.h \ - ../byterun/mlvalues.h ../byterun/major_gc.h ../byterun/freelist.h \ - ../byterun/minor_gc.h ../byterun/globroots.h stack.h + ../byterun/misc.h ../byterun/config.h ../config/m.h ../config/s.h \ + ../byterun/memory.h ../byterun/gc.h ../byterun/mlvalues.h \ + ../byterun/major_gc.h ../byterun/freelist.h ../byterun/minor_gc.h \ + ../byterun/globroots.h stack.h signals.d.o: signals.c ../byterun/alloc.h ../byterun/misc.h \ - ../byterun/config.h ../byterun/../config/m.h ../byterun/../config/s.h \ - ../byterun/mlvalues.h ../byterun/callback.h ../byterun/memory.h \ - ../byterun/gc.h ../byterun/major_gc.h ../byterun/freelist.h \ - ../byterun/minor_gc.h ../byterun/fail.h ../byterun/signals.h stack.h \ - ../byterun/sys.h + ../byterun/config.h ../config/m.h ../config/s.h ../byterun/mlvalues.h \ + ../byterun/callback.h ../byterun/memory.h ../byterun/gc.h \ + ../byterun/major_gc.h ../byterun/freelist.h ../byterun/minor_gc.h \ + ../byterun/fail.h ../byterun/signals.h stack.h ../byterun/sys.h startup.d.o: startup.c ../byterun/callback.h ../byterun/mlvalues.h \ - ../byterun/config.h ../byterun/../config/m.h ../byterun/../config/s.h \ - ../byterun/misc.h ../byterun/custom.h ../byterun/fail.h \ - ../byterun/gc.h ../byterun/gc_ctrl.h ../byterun/osdeps.h \ - ../byterun/printexc.h ../byterun/sys.h + ../byterun/config.h ../config/m.h ../config/s.h ../byterun/misc.h \ + ../byterun/custom.h ../byterun/fail.h ../byterun/gc.h \ + ../byterun/gc_ctrl.h ../byterun/osdeps.h ../byterun/printexc.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 -sys.d.o: sys.c ../byterun/config.h ../byterun/../config/m.h \ - ../byterun/../config/s.h ../byterun/alloc.h ../byterun/misc.h \ - ../byterun/mlvalues.h ../byterun/debugger.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/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 -unix.d.o: unix.c ../byterun/config.h ../byterun/../config/m.h \ - ../byterun/../config/s.h ../byterun/memory.h ../byterun/gc.h \ - ../byterun/mlvalues.h ../byterun/misc.h ../byterun/major_gc.h \ - ../byterun/freelist.h ../byterun/minor_gc.h ../byterun/osdeps.h -weak.d.o: weak.c ../byterun/alloc.h ../byterun/misc.h \ - ../byterun/config.h ../byterun/../config/m.h ../byterun/../config/s.h \ - ../byterun/mlvalues.h ../byterun/fail.h ../byterun/memory.h \ - ../byterun/gc.h ../byterun/major_gc.h ../byterun/freelist.h \ - ../byterun/minor_gc.h -alloc.p.o: alloc.c ../byterun/alloc.h ../byterun/misc.h \ - ../byterun/config.h ../byterun/../config/m.h ../byterun/../config/s.h \ - ../byterun/mlvalues.h ../byterun/custom.h ../byterun/major_gc.h \ - ../byterun/freelist.h ../byterun/memory.h ../byterun/gc.h \ - ../byterun/minor_gc.h ../byterun/stacks.h -array.p.o: array.c ../byterun/alloc.h ../byterun/misc.h \ - ../byterun/config.h ../byterun/../config/m.h ../byterun/../config/s.h \ - ../byterun/mlvalues.h ../byterun/fail.h ../byterun/memory.h \ - ../byterun/gc.h ../byterun/major_gc.h ../byterun/freelist.h \ - ../byterun/minor_gc.h + ../config/m.h ../config/s.h ../byterun/mlvalues.h ../byterun/fail.h +sys.d.o: sys.c ../byterun/config.h ../config/m.h ../config/s.h \ + ../byterun/alloc.h ../byterun/misc.h ../byterun/mlvalues.h \ + ../byterun/debugger.h ../byterun/fail.h ../byterun/instruct.h \ + ../byterun/osdeps.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/sys.h +terminfo.d.o: terminfo.c ../byterun/config.h ../config/m.h ../config/s.h \ + ../byterun/alloc.h ../byterun/misc.h ../byterun/mlvalues.h \ + ../byterun/fail.h ../byterun/io.h +unix.d.o: unix.c ../byterun/config.h ../config/m.h ../config/s.h \ + ../byterun/memory.h ../byterun/gc.h ../byterun/mlvalues.h \ + ../byterun/misc.h ../byterun/major_gc.h ../byterun/freelist.h \ + ../byterun/minor_gc.h ../byterun/osdeps.h +weak.d.o: weak.c ../byterun/alloc.h ../byterun/misc.h ../byterun/config.h \ + ../config/m.h ../config/s.h ../byterun/mlvalues.h ../byterun/fail.h \ + ../byterun/memory.h ../byterun/gc.h ../byterun/major_gc.h \ + ../byterun/freelist.h ../byterun/minor_gc.h +alloc.p.o: alloc.c ../byterun/alloc.h ../byterun/misc.h ../byterun/config.h \ + ../config/m.h ../config/s.h ../byterun/mlvalues.h ../byterun/custom.h \ + ../byterun/major_gc.h ../byterun/freelist.h ../byterun/memory.h \ + ../byterun/gc.h ../byterun/minor_gc.h ../byterun/stacks.h +array.p.o: array.c ../byterun/alloc.h ../byterun/misc.h ../byterun/config.h \ + ../config/m.h ../config/s.h ../byterun/mlvalues.h ../byterun/fail.h \ + ../byterun/memory.h ../byterun/gc.h ../byterun/major_gc.h \ + ../byterun/freelist.h ../byterun/minor_gc.h callback.p.o: callback.c ../byterun/callback.h ../byterun/mlvalues.h \ - ../byterun/config.h ../byterun/../config/m.h ../byterun/../config/s.h \ - ../byterun/misc.h ../byterun/fail.h ../byterun/memory.h \ - ../byterun/gc.h ../byterun/major_gc.h ../byterun/freelist.h \ - ../byterun/minor_gc.h -compact.p.o: compact.c ../byterun/config.h ../byterun/../config/m.h \ - ../byterun/../config/s.h ../byterun/finalise.h ../byterun/roots.h \ - ../byterun/misc.h ../byterun/memory.h ../byterun/gc.h \ - ../byterun/mlvalues.h ../byterun/major_gc.h ../byterun/freelist.h \ - ../byterun/minor_gc.h ../byterun/gc_ctrl.h ../byterun/weak.h + ../byterun/config.h ../config/m.h ../config/s.h ../byterun/misc.h \ + ../byterun/fail.h ../byterun/memory.h ../byterun/gc.h \ + ../byterun/major_gc.h ../byterun/freelist.h ../byterun/minor_gc.h +compact.p.o: compact.c ../byterun/config.h ../config/m.h ../config/s.h \ + ../byterun/finalise.h ../byterun/roots.h ../byterun/misc.h \ + ../byterun/memory.h ../byterun/gc.h ../byterun/mlvalues.h \ + ../byterun/major_gc.h ../byterun/freelist.h ../byterun/minor_gc.h \ + ../byterun/gc_ctrl.h ../byterun/weak.h compare.p.o: compare.c ../byterun/custom.h ../byterun/mlvalues.h \ - ../byterun/config.h ../byterun/../config/m.h ../byterun/../config/s.h \ - ../byterun/misc.h ../byterun/fail.h ../byterun/memory.h \ - ../byterun/gc.h ../byterun/major_gc.h ../byterun/freelist.h \ - ../byterun/minor_gc.h + ../byterun/config.h ../config/m.h ../config/s.h ../byterun/misc.h \ + ../byterun/fail.h ../byterun/memory.h ../byterun/gc.h \ + ../byterun/major_gc.h ../byterun/freelist.h ../byterun/minor_gc.h custom.p.o: custom.c ../byterun/alloc.h ../byterun/misc.h \ - ../byterun/config.h ../byterun/../config/m.h ../byterun/../config/s.h \ - ../byterun/mlvalues.h ../byterun/custom.h ../byterun/fail.h \ - ../byterun/memory.h ../byterun/gc.h ../byterun/major_gc.h \ - ../byterun/freelist.h ../byterun/minor_gc.h -dynlink.p.o: dynlink.c ../byterun/config.h ../byterun/../config/m.h \ - ../byterun/../config/s.h ../byterun/alloc.h ../byterun/misc.h \ - ../byterun/mlvalues.h ../byterun/dynlink.h ../byterun/fail.h \ - ../byterun/memory.h ../byterun/gc.h ../byterun/major_gc.h \ - ../byterun/freelist.h ../byterun/minor_gc.h ../byterun/osdeps.h \ - ../byterun/prims.h + ../byterun/config.h ../config/m.h ../config/s.h ../byterun/mlvalues.h \ + ../byterun/custom.h ../byterun/fail.h ../byterun/memory.h \ + ../byterun/gc.h ../byterun/major_gc.h ../byterun/freelist.h \ + ../byterun/minor_gc.h +dynlink.p.o: dynlink.c ../byterun/config.h ../config/m.h ../config/s.h \ + ../byterun/alloc.h ../byterun/misc.h ../byterun/mlvalues.h \ + ../byterun/dynlink.h ../byterun/fail.h ../byterun/memory.h \ + ../byterun/gc.h ../byterun/major_gc.h ../byterun/freelist.h \ + ../byterun/minor_gc.h ../byterun/osdeps.h ../byterun/prims.h extern.p.o: extern.c ../byterun/alloc.h ../byterun/misc.h \ - ../byterun/config.h ../byterun/../config/m.h ../byterun/../config/s.h \ - ../byterun/mlvalues.h ../byterun/custom.h ../byterun/fail.h \ - ../byterun/gc.h ../byterun/intext.h ../byterun/io.h \ - ../byterun/memory.h ../byterun/major_gc.h ../byterun/freelist.h \ - ../byterun/minor_gc.h ../byterun/reverse.h -fail.p.o: fail.c ../byterun/alloc.h ../byterun/misc.h \ - ../byterun/config.h ../byterun/../config/m.h ../byterun/../config/s.h \ - ../byterun/mlvalues.h ../byterun/fail.h ../byterun/io.h \ - ../byterun/gc.h ../byterun/memory.h ../byterun/major_gc.h \ - ../byterun/freelist.h ../byterun/minor_gc.h ../byterun/printexc.h \ - ../byterun/signals.h stack.h ../byterun/roots.h + ../byterun/config.h ../config/m.h ../config/s.h ../byterun/mlvalues.h \ + ../byterun/custom.h ../byterun/fail.h ../byterun/gc.h \ + ../byterun/intext.h ../byterun/io.h ../byterun/memory.h \ + ../byterun/major_gc.h ../byterun/freelist.h ../byterun/minor_gc.h \ + ../byterun/reverse.h +fail.p.o: fail.c ../byterun/alloc.h ../byterun/misc.h ../byterun/config.h \ + ../config/m.h ../config/s.h ../byterun/mlvalues.h ../byterun/fail.h \ + ../byterun/io.h ../byterun/gc.h ../byterun/memory.h \ + ../byterun/major_gc.h ../byterun/freelist.h ../byterun/minor_gc.h \ + ../byterun/printexc.h ../byterun/signals.h stack.h ../byterun/roots.h finalise.p.o: finalise.c ../byterun/callback.h ../byterun/mlvalues.h \ - ../byterun/config.h ../byterun/../config/m.h ../byterun/../config/s.h \ - ../byterun/misc.h ../byterun/fail.h ../byterun/roots.h \ - ../byterun/memory.h ../byterun/gc.h ../byterun/major_gc.h \ - ../byterun/freelist.h ../byterun/minor_gc.h ../byterun/signals.h + ../byterun/config.h ../config/m.h ../config/s.h ../byterun/misc.h \ + ../byterun/fail.h ../byterun/roots.h ../byterun/memory.h \ + ../byterun/gc.h ../byterun/major_gc.h ../byterun/freelist.h \ + ../byterun/minor_gc.h ../byterun/signals.h floats.p.o: floats.c ../byterun/alloc.h ../byterun/misc.h \ - ../byterun/config.h ../byterun/../config/m.h ../byterun/../config/s.h \ - ../byterun/mlvalues.h ../byterun/fail.h ../byterun/memory.h \ - ../byterun/gc.h ../byterun/major_gc.h ../byterun/freelist.h \ - ../byterun/minor_gc.h ../byterun/reverse.h ../byterun/stacks.h -freelist.p.o: freelist.c ../byterun/config.h ../byterun/../config/m.h \ - ../byterun/../config/s.h ../byterun/freelist.h ../byterun/misc.h \ - ../byterun/mlvalues.h ../byterun/gc.h ../byterun/gc_ctrl.h \ - ../byterun/major_gc.h + ../byterun/config.h ../config/m.h ../config/s.h ../byterun/mlvalues.h \ + ../byterun/fail.h ../byterun/memory.h ../byterun/gc.h \ + ../byterun/major_gc.h ../byterun/freelist.h ../byterun/minor_gc.h \ + ../byterun/reverse.h ../byterun/stacks.h +freelist.p.o: freelist.c ../byterun/config.h ../config/m.h ../config/s.h \ + ../byterun/freelist.h ../byterun/misc.h ../byterun/mlvalues.h \ + ../byterun/gc.h ../byterun/gc_ctrl.h ../byterun/major_gc.h gc_ctrl.p.o: gc_ctrl.c ../byterun/alloc.h ../byterun/misc.h \ - ../byterun/config.h ../byterun/../config/m.h ../byterun/../config/s.h \ - ../byterun/mlvalues.h ../byterun/compact.h ../byterun/custom.h \ - ../byterun/finalise.h ../byterun/roots.h ../byterun/memory.h \ - ../byterun/gc.h ../byterun/major_gc.h ../byterun/freelist.h \ - ../byterun/minor_gc.h ../byterun/gc_ctrl.h ../byterun/stacks.h + ../byterun/config.h ../config/m.h ../config/s.h ../byterun/mlvalues.h \ + ../byterun/compact.h ../byterun/custom.h ../byterun/finalise.h \ + ../byterun/roots.h ../byterun/memory.h ../byterun/gc.h \ + ../byterun/major_gc.h ../byterun/freelist.h ../byterun/minor_gc.h \ + ../byterun/gc_ctrl.h ../byterun/stacks.h globroots.p.o: globroots.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 \ - ../byterun/freelist.h ../byterun/minor_gc.h ../byterun/globroots.h -hash.p.o: hash.c ../byterun/mlvalues.h ../byterun/config.h \ - ../byterun/../config/m.h ../byterun/../config/s.h ../byterun/misc.h \ - ../byterun/custom.h ../byterun/memory.h ../byterun/gc.h \ - ../byterun/major_gc.h ../byterun/freelist.h ../byterun/minor_gc.h + ../config/m.h ../config/s.h ../byterun/gc.h ../byterun/mlvalues.h \ + ../byterun/misc.h ../byterun/major_gc.h ../byterun/freelist.h \ + ../byterun/minor_gc.h ../byterun/globroots.h +hash.p.o: hash.c ../byterun/mlvalues.h ../byterun/config.h ../config/m.h \ + ../config/s.h ../byterun/misc.h ../byterun/custom.h ../byterun/memory.h \ + ../byterun/gc.h ../byterun/major_gc.h ../byterun/freelist.h \ + ../byterun/minor_gc.h intern.p.o: intern.c ../byterun/alloc.h ../byterun/misc.h \ - ../byterun/config.h ../byterun/../config/m.h ../byterun/../config/s.h \ - ../byterun/mlvalues.h ../byterun/custom.h ../byterun/fail.h \ - ../byterun/gc.h ../byterun/intext.h ../byterun/io.h \ - ../byterun/memory.h ../byterun/major_gc.h ../byterun/freelist.h \ - ../byterun/minor_gc.h ../byterun/reverse.h ../byterun/md5.h -ints.p.o: ints.c ../byterun/alloc.h ../byterun/misc.h \ - ../byterun/config.h ../byterun/../config/m.h ../byterun/../config/s.h \ - ../byterun/mlvalues.h ../byterun/custom.h ../byterun/fail.h \ - ../byterun/intext.h ../byterun/io.h ../byterun/memory.h \ - ../byterun/gc.h ../byterun/major_gc.h ../byterun/freelist.h \ - ../byterun/minor_gc.h ../byterun/int64_native.h -io.p.o: io.c ../byterun/config.h ../byterun/../config/m.h \ - ../byterun/../config/s.h ../byterun/alloc.h ../byterun/misc.h \ - ../byterun/mlvalues.h ../byterun/custom.h ../byterun/fail.h \ - ../byterun/io.h ../byterun/memory.h ../byterun/gc.h \ - ../byterun/major_gc.h ../byterun/freelist.h ../byterun/minor_gc.h \ - ../byterun/signals.h ../byterun/sys.h + ../byterun/config.h ../config/m.h ../config/s.h ../byterun/mlvalues.h \ + ../byterun/custom.h ../byterun/fail.h ../byterun/gc.h \ + ../byterun/intext.h ../byterun/io.h ../byterun/memory.h \ + ../byterun/major_gc.h ../byterun/freelist.h ../byterun/minor_gc.h \ + ../byterun/reverse.h ../byterun/md5.h +ints.p.o: ints.c ../byterun/alloc.h ../byterun/misc.h ../byterun/config.h \ + ../config/m.h ../config/s.h ../byterun/mlvalues.h ../byterun/custom.h \ + ../byterun/fail.h ../byterun/intext.h ../byterun/io.h \ + ../byterun/memory.h ../byterun/gc.h ../byterun/major_gc.h \ + ../byterun/freelist.h ../byterun/minor_gc.h ../byterun/int64_native.h +io.p.o: io.c ../byterun/config.h ../config/m.h ../config/s.h \ + ../byterun/alloc.h ../byterun/misc.h ../byterun/mlvalues.h \ + ../byterun/custom.h ../byterun/fail.h ../byterun/io.h \ + ../byterun/memory.h ../byterun/gc.h ../byterun/major_gc.h \ + ../byterun/freelist.h ../byterun/minor_gc.h ../byterun/signals.h \ + ../byterun/sys.h lexing.p.o: lexing.c ../byterun/fail.h ../byterun/misc.h \ - ../byterun/config.h ../byterun/../config/m.h ../byterun/../config/s.h \ - ../byterun/mlvalues.h ../byterun/stacks.h ../byterun/memory.h \ - ../byterun/gc.h ../byterun/major_gc.h ../byterun/freelist.h \ - ../byterun/minor_gc.h -main.p.o: main.c ../byterun/misc.h ../byterun/config.h \ - ../byterun/../config/m.h ../byterun/../config/s.h \ - ../byterun/mlvalues.h ../byterun/sys.h + ../byterun/config.h ../config/m.h ../config/s.h ../byterun/mlvalues.h \ + ../byterun/stacks.h ../byterun/memory.h ../byterun/gc.h \ + ../byterun/major_gc.h ../byterun/freelist.h ../byterun/minor_gc.h +main.p.o: main.c ../byterun/misc.h ../byterun/config.h ../config/m.h \ + ../config/s.h ../byterun/mlvalues.h ../byterun/sys.h major_gc.p.o: major_gc.c ../byterun/compact.h ../byterun/config.h \ - ../byterun/../config/m.h ../byterun/../config/s.h ../byterun/misc.h \ - ../byterun/custom.h ../byterun/mlvalues.h ../byterun/fail.h \ - ../byterun/finalise.h ../byterun/roots.h ../byterun/memory.h \ - ../byterun/gc.h ../byterun/major_gc.h ../byterun/freelist.h \ - ../byterun/minor_gc.h ../byterun/gc_ctrl.h ../byterun/weak.h + ../config/m.h ../config/s.h ../byterun/misc.h ../byterun/custom.h \ + ../byterun/mlvalues.h ../byterun/fail.h ../byterun/finalise.h \ + ../byterun/roots.h ../byterun/memory.h ../byterun/gc.h \ + ../byterun/major_gc.h ../byterun/freelist.h ../byterun/minor_gc.h \ + ../byterun/gc_ctrl.h ../byterun/weak.h md5.p.o: md5.c ../byterun/alloc.h ../byterun/misc.h ../byterun/config.h \ - ../byterun/../config/m.h ../byterun/../config/s.h \ - ../byterun/mlvalues.h ../byterun/fail.h ../byterun/md5.h \ - ../byterun/io.h ../byterun/reverse.h + ../config/m.h ../config/s.h ../byterun/mlvalues.h ../byterun/fail.h \ + ../byterun/md5.h ../byterun/io.h ../byterun/reverse.h memory.p.o: memory.c ../byterun/fail.h ../byterun/misc.h \ - ../byterun/config.h ../byterun/../config/m.h ../byterun/../config/s.h \ - ../byterun/mlvalues.h ../byterun/freelist.h ../byterun/gc.h \ - ../byterun/gc_ctrl.h ../byterun/major_gc.h ../byterun/memory.h \ - ../byterun/minor_gc.h ../byterun/signals.h -meta.p.o: meta.c ../byterun/alloc.h ../byterun/misc.h \ - ../byterun/config.h ../byterun/../config/m.h ../byterun/../config/s.h \ - ../byterun/mlvalues.h ../byterun/fail.h ../byterun/fix_code.h \ - ../byterun/interp.h ../byterun/major_gc.h ../byterun/freelist.h \ - ../byterun/memory.h ../byterun/gc.h ../byterun/minor_gc.h \ - ../byterun/prims.h ../byterun/stacks.h -minor_gc.p.o: minor_gc.c ../byterun/config.h ../byterun/../config/m.h \ - ../byterun/../config/s.h ../byterun/fail.h ../byterun/misc.h \ - ../byterun/mlvalues.h ../byterun/finalise.h ../byterun/roots.h \ - ../byterun/memory.h ../byterun/gc.h ../byterun/major_gc.h \ - ../byterun/freelist.h ../byterun/minor_gc.h ../byterun/gc_ctrl.h \ - ../byterun/signals.h -misc.p.o: misc.c ../byterun/config.h ../byterun/../config/m.h \ - ../byterun/../config/s.h ../byterun/misc.h ../byterun/memory.h \ - ../byterun/gc.h ../byterun/mlvalues.h ../byterun/major_gc.h \ - ../byterun/freelist.h ../byterun/minor_gc.h + ../byterun/config.h ../config/m.h ../config/s.h ../byterun/mlvalues.h \ + ../byterun/freelist.h ../byterun/gc.h ../byterun/gc_ctrl.h \ + ../byterun/major_gc.h ../byterun/memory.h ../byterun/minor_gc.h \ + ../byterun/signals.h +meta.p.o: meta.c ../byterun/alloc.h ../byterun/misc.h ../byterun/config.h \ + ../config/m.h ../config/s.h ../byterun/mlvalues.h ../byterun/fail.h \ + ../byterun/fix_code.h ../byterun/interp.h ../byterun/major_gc.h \ + ../byterun/freelist.h ../byterun/memory.h ../byterun/gc.h \ + ../byterun/minor_gc.h ../byterun/prims.h ../byterun/stacks.h +minor_gc.p.o: minor_gc.c ../byterun/config.h ../config/m.h ../config/s.h \ + ../byterun/fail.h ../byterun/misc.h ../byterun/mlvalues.h \ + ../byterun/finalise.h ../byterun/roots.h ../byterun/memory.h \ + ../byterun/gc.h ../byterun/major_gc.h ../byterun/freelist.h \ + ../byterun/minor_gc.h ../byterun/gc_ctrl.h ../byterun/signals.h +misc.p.o: misc.c ../byterun/config.h ../config/m.h ../config/s.h \ + ../byterun/misc.h ../byterun/memory.h ../byterun/gc.h \ + ../byterun/mlvalues.h ../byterun/major_gc.h ../byterun/freelist.h \ + ../byterun/minor_gc.h obj.p.o: obj.c ../byterun/alloc.h ../byterun/misc.h ../byterun/config.h \ - ../byterun/../config/m.h ../byterun/../config/s.h \ - ../byterun/mlvalues.h ../byterun/fail.h ../byterun/gc.h \ - ../byterun/major_gc.h ../byterun/freelist.h ../byterun/memory.h \ - ../byterun/minor_gc.h ../byterun/prims.h -parsing.p.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 + ../config/m.h ../config/s.h ../byterun/mlvalues.h ../byterun/fail.h \ + ../byterun/gc.h ../byterun/major_gc.h ../byterun/freelist.h \ + ../byterun/memory.h ../byterun/minor_gc.h ../byterun/prims.h +parsing.p.o: parsing.c ../byterun/config.h ../config/m.h ../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.p.o: printexc.c ../byterun/backtrace.h ../byterun/mlvalues.h \ - ../byterun/config.h ../byterun/../config/m.h ../byterun/../config/s.h \ - ../byterun/misc.h ../byterun/callback.h ../byterun/debugger.h \ - ../byterun/fail.h ../byterun/printexc.h + ../byterun/config.h ../config/m.h ../config/s.h ../byterun/misc.h \ + ../byterun/callback.h ../byterun/debugger.h ../byterun/fail.h \ + ../byterun/printexc.h roots.p.o: roots.c ../byterun/finalise.h ../byterun/roots.h \ - ../byterun/misc.h ../byterun/config.h ../byterun/../config/m.h \ - ../byterun/../config/s.h ../byterun/memory.h ../byterun/gc.h \ - ../byterun/mlvalues.h ../byterun/major_gc.h ../byterun/freelist.h \ - ../byterun/minor_gc.h ../byterun/globroots.h stack.h + ../byterun/misc.h ../byterun/config.h ../config/m.h ../config/s.h \ + ../byterun/memory.h ../byterun/gc.h ../byterun/mlvalues.h \ + ../byterun/major_gc.h ../byterun/freelist.h ../byterun/minor_gc.h \ + ../byterun/globroots.h stack.h signals.p.o: signals.c ../byterun/alloc.h ../byterun/misc.h \ - ../byterun/config.h ../byterun/../config/m.h ../byterun/../config/s.h \ - ../byterun/mlvalues.h ../byterun/callback.h ../byterun/memory.h \ - ../byterun/gc.h ../byterun/major_gc.h ../byterun/freelist.h \ - ../byterun/minor_gc.h ../byterun/fail.h ../byterun/signals.h stack.h \ - ../byterun/sys.h + ../byterun/config.h ../config/m.h ../config/s.h ../byterun/mlvalues.h \ + ../byterun/callback.h ../byterun/memory.h ../byterun/gc.h \ + ../byterun/major_gc.h ../byterun/freelist.h ../byterun/minor_gc.h \ + ../byterun/fail.h ../byterun/signals.h stack.h ../byterun/sys.h startup.p.o: startup.c ../byterun/callback.h ../byterun/mlvalues.h \ - ../byterun/config.h ../byterun/../config/m.h ../byterun/../config/s.h \ - ../byterun/misc.h ../byterun/custom.h ../byterun/fail.h \ - ../byterun/gc.h ../byterun/gc_ctrl.h ../byterun/osdeps.h \ - ../byterun/printexc.h ../byterun/sys.h + ../byterun/config.h ../config/m.h ../config/s.h ../byterun/misc.h \ + ../byterun/custom.h ../byterun/fail.h ../byterun/gc.h \ + ../byterun/gc_ctrl.h ../byterun/osdeps.h ../byterun/printexc.h \ + ../byterun/sys.h str.p.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 -sys.p.o: sys.c ../byterun/config.h ../byterun/../config/m.h \ - ../byterun/../config/s.h ../byterun/alloc.h ../byterun/misc.h \ - ../byterun/mlvalues.h ../byterun/debugger.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/sys.h -terminfo.p.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 -unix.p.o: unix.c ../byterun/config.h ../byterun/../config/m.h \ - ../byterun/../config/s.h ../byterun/memory.h ../byterun/gc.h \ - ../byterun/mlvalues.h ../byterun/misc.h ../byterun/major_gc.h \ - ../byterun/freelist.h ../byterun/minor_gc.h ../byterun/osdeps.h -weak.p.o: weak.c ../byterun/alloc.h ../byterun/misc.h \ - ../byterun/config.h ../byterun/../config/m.h ../byterun/../config/s.h \ - ../byterun/mlvalues.h ../byterun/fail.h ../byterun/memory.h \ - ../byterun/gc.h ../byterun/major_gc.h ../byterun/freelist.h \ - ../byterun/minor_gc.h + ../config/m.h ../config/s.h ../byterun/mlvalues.h ../byterun/fail.h +sys.p.o: sys.c ../byterun/config.h ../config/m.h ../config/s.h \ + ../byterun/alloc.h ../byterun/misc.h ../byterun/mlvalues.h \ + ../byterun/debugger.h ../byterun/fail.h ../byterun/instruct.h \ + ../byterun/osdeps.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/sys.h +terminfo.p.o: terminfo.c ../byterun/config.h ../config/m.h ../config/s.h \ + ../byterun/alloc.h ../byterun/misc.h ../byterun/mlvalues.h \ + ../byterun/fail.h ../byterun/io.h +unix.p.o: unix.c ../byterun/config.h ../config/m.h ../config/s.h \ + ../byterun/memory.h ../byterun/gc.h ../byterun/mlvalues.h \ + ../byterun/misc.h ../byterun/major_gc.h ../byterun/freelist.h \ + ../byterun/minor_gc.h ../byterun/osdeps.h +weak.p.o: weak.c ../byterun/alloc.h ../byterun/misc.h ../byterun/config.h \ + ../config/m.h ../config/s.h ../byterun/mlvalues.h ../byterun/fail.h \ + ../byterun/memory.h ../byterun/gc.h ../byterun/major_gc.h \ + ../byterun/freelist.h ../byterun/minor_gc.h diff --git a/boot/ocamlc b/boot/ocamlc Binary files differindex 74913684b..61df2d669 100755 --- a/boot/ocamlc +++ b/boot/ocamlc diff --git a/byterun/.depend b/byterun/.depend index aee207d60..9e2f46aa8 100644 --- a/byterun/.depend +++ b/byterun/.depend @@ -112,8 +112,8 @@ startup.o: startup.c config.h ../config/m.h ../config/s.h alloc.h misc.h \ str.o: str.c alloc.h misc.h config.h ../config/m.h ../config/s.h \ mlvalues.h fail.h sys.o: sys.c config.h ../config/m.h ../config/s.h alloc.h misc.h \ - mlvalues.h debugger.h fail.h instruct.h signals.h stacks.h memory.h \ - gc.h major_gc.h freelist.h minor_gc.h sys.h + mlvalues.h debugger.h fail.h instruct.h osdeps.h signals.h stacks.h \ + memory.h gc.h major_gc.h freelist.h minor_gc.h sys.h terminfo.o: terminfo.c config.h ../config/m.h ../config/s.h alloc.h \ misc.h mlvalues.h fail.h io.h unix.o: unix.c config.h ../config/m.h ../config/s.h memory.h gc.h \ @@ -237,8 +237,8 @@ startup.d.o: startup.c config.h ../config/m.h ../config/s.h alloc.h misc.h \ str.d.o: str.c alloc.h misc.h config.h ../config/m.h ../config/s.h \ mlvalues.h fail.h sys.d.o: sys.c config.h ../config/m.h ../config/s.h alloc.h misc.h \ - mlvalues.h debugger.h fail.h instruct.h signals.h stacks.h memory.h \ - gc.h major_gc.h freelist.h minor_gc.h sys.h + mlvalues.h debugger.h fail.h instruct.h osdeps.h signals.h stacks.h \ + memory.h gc.h major_gc.h freelist.h minor_gc.h sys.h terminfo.d.o: terminfo.c config.h ../config/m.h ../config/s.h alloc.h \ misc.h mlvalues.h fail.h io.h unix.d.o: unix.c config.h ../config/m.h ../config/s.h memory.h gc.h \ diff --git a/driver/main.ml b/driver/main.ml index 8e1f58fbe..2579f372e 100644 --- a/driver/main.ml +++ b/driver/main.ml @@ -100,6 +100,7 @@ module Options = Main_args.Make_options (struct let _pp s = preprocessor := Some s let _principal = set principal let _rectypes = set recursive_types + let _stypes = set save_types let _thread = set thread_safe let _unsafe = set fast let _use_prims s = use_prims := s diff --git a/driver/main_args.ml b/driver/main_args.ml index 617c73cae..8203e7f3b 100644 --- a/driver/main_args.ml +++ b/driver/main_args.ml @@ -41,6 +41,7 @@ module Make_options (F : val _pp : string -> unit val _principal : unit -> unit val _rectypes : unit -> unit + val _stypes : unit -> unit val _thread : unit -> unit val _unsafe : unit -> unit val _use_prims : string -> unit @@ -106,6 +107,7 @@ struct "-principal", Arg.Unit F._principal, " Check principality of type inference"; "-rectypes", Arg.Unit F._rectypes, " Allow arbitrary recursive types"; + "-stypes", Arg.Unit F._stypes, " Save types for use with caml-types.el"; "-thread", Arg.Unit F._thread, " Use thread-safe standard library"; "-unsafe", Arg.Unit F._unsafe, " No bounds checking on array and string access"; diff --git a/driver/main_args.mli b/driver/main_args.mli index aebe7e76b..35f066c71 100644 --- a/driver/main_args.mli +++ b/driver/main_args.mli @@ -41,6 +41,7 @@ module Make_options (F : val _pp : string -> unit val _principal : unit -> unit val _rectypes : unit -> unit + val _stypes : unit -> unit val _thread : unit -> unit val _unsafe : unit -> unit val _use_prims : string -> unit diff --git a/emacs/caml-types.el b/emacs/caml-types.el new file mode 100644 index 000000000..7841ba5a3 --- /dev/null +++ b/emacs/caml-types.el @@ -0,0 +1,89 @@ +;(***********************************************************************) +;(* *) +;(* Objective Caml *) +;(* *) +;(* Damien Doligez, projet Moscova, INRIA Rocquencourt *) +;(* *) +;(* Copyright 2003 Institut National de Recherche en Informatique et *) +;(* en Automatique. All rights reserved. This file is distributed *) +;(* under the terms of the Q Public License version 1.0. *) +;(* *) +;(***********************************************************************) + +;(* $Id$ *) + +; WARNING: +; This code is experimental. Everything may change at any time. + +; An emacs-lisp complement to the "-stypes" option of ocamlc and ocamlopt. +; Load this file in your emacs, then C-c C-t will show you the +; type of the expression that contains the cursor. +; The expression is highlighted in the current buffer. +; The type is highlighted in "foo.types" (if your file is "foo.ml"), +; which is convenient if the type doesn't fit on a line. +; (doesn't work very well). + +; TO DO: +; - make emacs scroll the .types file when we move the point there, +; even if the file is already displayed +; - emit a warning when the .ml file is more recent than the .types +; - make the command work only in caml-mode +; - integrate this file into caml.el (?) +; - write a proper documentation string for caml-types-show-type + +(setq caml-types-filename-re "\"\\([^\\\"]\\|\\\\.\\)*\"") +(setq caml-types-number-re "\\([0-9]*\\)") +(setq caml-types-position-re + (concat caml-types-filename-re " " + caml-types-number-re " " + caml-types-number-re " " + caml-types-number-re)) +(setq caml-types-location-re + (concat "^" caml-types-position-re " " caml-types-position-re)) +(setq caml-types-expr-ov (make-overlay 1 1)) +(overlay-put caml-types-expr-ov 'face 'region) +(setq caml-types-type-ov (make-overlay 1 1)) +(overlay-put caml-types-type-ov 'face 'region) + +(defun caml-types-show-type () + "blah" + (interactive) + (let* (type-point + (target (point)) + (targetbuf (current-buffer)) + (typefile (concat (file-name-sans-extension (buffer-file-name)) + ".types")) + (tbuf (or (get-file-buffer typefile) + (find-file-noselect typefile)))) + (save-excursion + (set-buffer tbuf) + (goto-char (point-min)) + (let ((loc (caml-types-find-location target))) + (if (null loc) + (progn + (move-overlay caml-types-expr-ov 1 1) + (move-overlay caml-types-type-ov 1 1) + (message "The cursor is not within an expression.")) + (move-overlay caml-types-expr-ov (car loc) (cdr loc) targetbuf) + (forward-line 2) + (re-search-forward " \\(\\([^\n)]\\|.)\\|\n[^)]\\)*\\)\n)") + (move-overlay caml-types-type-ov (match-beginning 1) (match-end 1) + (current-buffer)) + (message (concat "type: " (match-string 1))) + (setq type-point (match-beginning 1))))) + (if (null type-point) + () + (set-buffer tbuf) + (goto-char type-point) + (set-buffer targetbuf)))) + +(defun caml-types-find-location (target) + (let (left right found) + (catch 'exit + (while (re-search-forward caml-types-location-re () t) + (setq left (1+ (string-to-int (match-string 4)))) + (setq right (1+ (string-to-int (match-string 8)))) + (if (and (<= left target) (< target right)) + (throw 'exit (cons left right))))))) + +(global-set-key "\C-c\C-t" 'caml-types-show-type) diff --git a/ocamldoc/Makefile b/ocamldoc/Makefile index 50e789d29..9b2d26776 100644 --- a/ocamldoc/Makefile +++ b/ocamldoc/Makefile @@ -155,6 +155,7 @@ OCAMLCMOFILES=$(OCAMLSRCDIR)/parsing/printast.cmo \ $(OCAMLSRCDIR)/typing/typetexp.cmo \ $(OCAMLSRCDIR)/typing/parmatch.cmo \ $(OCAMLSRCDIR)/typing/typedtree.cmo \ + $(OCAMLSRCDIR)/typing/stypes.cmo \ $(OCAMLSRCDIR)/typing/typecore.cmo \ $(OCAMLSRCDIR)/typing/includeclass.cmo \ $(OCAMLSRCDIR)/typing/typedecl.cmo \ diff --git a/otherlibs/bigarray/.depend b/otherlibs/bigarray/.depend index 7fcecd422..7c4e124ea 100644 --- a/otherlibs/bigarray/.depend +++ b/otherlibs/bigarray/.depend @@ -1,19 +1,17 @@ bigarray_stubs.o: bigarray_stubs.c ../../byterun/alloc.h \ - ../../byterun/misc.h ../../byterun/config.h \ - ../../byterun/../config/m.h ../../byterun/../config/s.h \ - ../../byterun/mlvalues.h bigarray.h ../../byterun/custom.h \ - ../../byterun/fail.h ../../byterun/intext.h ../../byterun/io.h \ - ../../byterun/fix_code.h ../../byterun/memory.h ../../byterun/gc.h \ - ../../byterun/major_gc.h ../../byterun/freelist.h \ - ../../byterun/minor_gc.h + ../../byterun/misc.h ../../byterun/config.h ../../config/m.h \ + ../../config/s.h ../../byterun/mlvalues.h bigarray.h \ + ../../byterun/custom.h ../../byterun/fail.h ../../byterun/intext.h \ + ../../byterun/io.h ../../byterun/fix_code.h ../../byterun/memory.h \ + ../../byterun/gc.h ../../byterun/major_gc.h ../../byterun/freelist.h \ + ../../byterun/minor_gc.h mmap_unix.o: mmap_unix.c bigarray.h ../../byterun/mlvalues.h \ - ../../byterun/config.h ../../byterun/../config/m.h \ - ../../byterun/../config/s.h ../../byterun/misc.h \ - ../../byterun/custom.h ../../byterun/fail.h ../../byterun/sys.h + ../../byterun/config.h ../../config/m.h ../../config/s.h \ + ../../byterun/misc.h ../../byterun/custom.h ../../byterun/fail.h \ + ../../byterun/sys.h mmap_win32.o: mmap_win32.c bigarray.h ../../byterun/mlvalues.h \ - ../../byterun/config.h ../../byterun/../config/m.h \ - ../../byterun/../config/s.h ../../byterun/misc.h \ - ../../byterun/alloc.h ../../byterun/custom.h ../../byterun/fail.h \ - ../../byterun/sys.h ../unix/unixsupport.h + ../../byterun/config.h ../../config/m.h ../../config/s.h \ + ../../byterun/misc.h ../../byterun/alloc.h ../../byterun/custom.h \ + ../../byterun/fail.h ../../byterun/sys.h ../unix/unixsupport.h bigarray.cmo: bigarray.cmi bigarray.cmx: bigarray.cmi diff --git a/otherlibs/graph/.depend b/otherlibs/graph/.depend index c0b0f54e0..70ab5db6f 100644 --- a/otherlibs/graph/.depend +++ b/otherlibs/graph/.depend @@ -1,15 +1,74 @@ -color.o: color.c libgraph.h -draw.o: draw.c libgraph.h -dump_img.o: dump_img.c libgraph.h image.h -events.o: events.c libgraph.h -fill.o: fill.c libgraph.h -image.o: image.c libgraph.h image.h -make_img.o: make_img.c libgraph.h image.h -open.o: open.c libgraph.h -point_col.o: point_col.c libgraph.h -sound.o: sound.c libgraph.h -subwindow.o: subwindow.c libgraph.h -text.o: text.c libgraph.h +color.o: color.c libgraph.h /usr/X11R6/include/X11/Xlib.h \ + /usr/X11R6/include/X11/X.h /usr/X11R6/include/X11/Xfuncproto.h \ + /usr/X11R6/include/X11/Xosdefs.h /usr/X11R6/include/X11/Xutil.h \ + ../../byterun/mlvalues.h ../../byterun/config.h ../../config/m.h \ + ../../config/s.h ../../byterun/misc.h /usr/X11R6/include/X11/Xatom.h +draw.o: draw.c libgraph.h /usr/X11R6/include/X11/Xlib.h \ + /usr/X11R6/include/X11/X.h /usr/X11R6/include/X11/Xfuncproto.h \ + /usr/X11R6/include/X11/Xosdefs.h /usr/X11R6/include/X11/Xutil.h \ + ../../byterun/mlvalues.h ../../byterun/config.h ../../config/m.h \ + ../../config/s.h ../../byterun/misc.h ../../byterun/alloc.h +dump_img.o: dump_img.c libgraph.h /usr/X11R6/include/X11/Xlib.h \ + /usr/X11R6/include/X11/X.h /usr/X11R6/include/X11/Xfuncproto.h \ + /usr/X11R6/include/X11/Xosdefs.h /usr/X11R6/include/X11/Xutil.h \ + ../../byterun/mlvalues.h ../../byterun/config.h ../../config/m.h \ + ../../config/s.h ../../byterun/misc.h image.h ../../byterun/alloc.h \ + ../../byterun/memory.h ../../byterun/gc.h ../../byterun/major_gc.h \ + ../../byterun/freelist.h ../../byterun/minor_gc.h +events.o: events.c libgraph.h /usr/X11R6/include/X11/Xlib.h \ + /usr/X11R6/include/X11/X.h /usr/X11R6/include/X11/Xfuncproto.h \ + /usr/X11R6/include/X11/Xosdefs.h /usr/X11R6/include/X11/Xutil.h \ + ../../byterun/mlvalues.h ../../byterun/config.h ../../config/m.h \ + ../../config/s.h ../../byterun/misc.h ../../byterun/alloc.h \ + ../../byterun/signals.h +fill.o: fill.c libgraph.h /usr/X11R6/include/X11/Xlib.h \ + /usr/X11R6/include/X11/X.h /usr/X11R6/include/X11/Xfuncproto.h \ + /usr/X11R6/include/X11/Xosdefs.h /usr/X11R6/include/X11/Xutil.h \ + ../../byterun/mlvalues.h ../../byterun/config.h ../../config/m.h \ + ../../config/s.h ../../byterun/misc.h ../../byterun/memory.h \ + ../../byterun/gc.h ../../byterun/major_gc.h ../../byterun/freelist.h \ + ../../byterun/minor_gc.h +image.o: image.c libgraph.h /usr/X11R6/include/X11/Xlib.h \ + /usr/X11R6/include/X11/X.h /usr/X11R6/include/X11/Xfuncproto.h \ + /usr/X11R6/include/X11/Xosdefs.h /usr/X11R6/include/X11/Xutil.h \ + ../../byterun/mlvalues.h ../../byterun/config.h ../../config/m.h \ + ../../config/s.h ../../byterun/misc.h image.h ../../byterun/alloc.h \ + ../../byterun/custom.h +make_img.o: make_img.c libgraph.h /usr/X11R6/include/X11/Xlib.h \ + /usr/X11R6/include/X11/X.h /usr/X11R6/include/X11/Xfuncproto.h \ + /usr/X11R6/include/X11/Xosdefs.h /usr/X11R6/include/X11/Xutil.h \ + ../../byterun/mlvalues.h ../../byterun/config.h ../../config/m.h \ + ../../config/s.h ../../byterun/misc.h image.h ../../byterun/memory.h \ + ../../byterun/gc.h ../../byterun/major_gc.h ../../byterun/freelist.h \ + ../../byterun/minor_gc.h +open.o: open.c libgraph.h /usr/X11R6/include/X11/Xlib.h \ + /usr/X11R6/include/X11/X.h /usr/X11R6/include/X11/Xfuncproto.h \ + /usr/X11R6/include/X11/Xosdefs.h /usr/X11R6/include/X11/Xutil.h \ + ../../byterun/mlvalues.h ../../byterun/config.h ../../config/m.h \ + ../../config/s.h ../../byterun/misc.h ../../byterun/alloc.h \ + ../../byterun/callback.h ../../byterun/fail.h ../../byterun/memory.h \ + ../../byterun/gc.h ../../byterun/major_gc.h ../../byterun/freelist.h \ + ../../byterun/minor_gc.h +point_col.o: point_col.c libgraph.h /usr/X11R6/include/X11/Xlib.h \ + /usr/X11R6/include/X11/X.h /usr/X11R6/include/X11/Xfuncproto.h \ + /usr/X11R6/include/X11/Xosdefs.h /usr/X11R6/include/X11/Xutil.h \ + ../../byterun/mlvalues.h ../../byterun/config.h ../../config/m.h \ + ../../config/s.h ../../byterun/misc.h +sound.o: sound.c libgraph.h /usr/X11R6/include/X11/Xlib.h \ + /usr/X11R6/include/X11/X.h /usr/X11R6/include/X11/Xfuncproto.h \ + /usr/X11R6/include/X11/Xosdefs.h /usr/X11R6/include/X11/Xutil.h \ + ../../byterun/mlvalues.h ../../byterun/config.h ../../config/m.h \ + ../../config/s.h ../../byterun/misc.h +subwindow.o: subwindow.c libgraph.h /usr/X11R6/include/X11/Xlib.h \ + /usr/X11R6/include/X11/X.h /usr/X11R6/include/X11/Xfuncproto.h \ + /usr/X11R6/include/X11/Xosdefs.h /usr/X11R6/include/X11/Xutil.h \ + ../../byterun/mlvalues.h ../../byterun/config.h ../../config/m.h \ + ../../config/s.h ../../byterun/misc.h +text.o: text.c libgraph.h /usr/X11R6/include/X11/Xlib.h \ + /usr/X11R6/include/X11/X.h /usr/X11R6/include/X11/Xfuncproto.h \ + /usr/X11R6/include/X11/Xosdefs.h /usr/X11R6/include/X11/Xutil.h \ + ../../byterun/mlvalues.h ../../byterun/config.h ../../config/m.h \ + ../../config/s.h ../../byterun/misc.h ../../byterun/alloc.h graphics.cmo: graphics.cmi graphics.cmx: graphics.cmi graphicsX11.cmo: graphics.cmi graphicsX11.cmi diff --git a/otherlibs/num/.depend b/otherlibs/num/.depend index cac4b48d6..edc2107e2 100644 --- a/otherlibs/num/.depend +++ b/otherlibs/num/.depend @@ -1,10 +1,10 @@ nat_stubs.o: nat_stubs.c ../../byterun/alloc.h ../../byterun/misc.h \ - ../../byterun/config.h ../../byterun/../config/m.h \ - ../../byterun/../config/s.h ../../byterun/mlvalues.h \ - ../../byterun/custom.h ../../byterun/intext.h ../../byterun/io.h \ - ../../byterun/fix_code.h ../../byterun/fail.h ../../byterun/memory.h \ - ../../byterun/gc.h ../../byterun/major_gc.h ../../byterun/freelist.h \ - ../../byterun/minor_gc.h nat.h bignum/h/BigNum.h bignum/h/BntoBnn.h + ../../byterun/config.h ../../config/m.h ../../config/s.h \ + ../../byterun/mlvalues.h ../../byterun/custom.h ../../byterun/intext.h \ + ../../byterun/io.h ../../byterun/fix_code.h ../../byterun/fail.h \ + ../../byterun/memory.h ../../byterun/gc.h ../../byterun/major_gc.h \ + ../../byterun/freelist.h ../../byterun/minor_gc.h nat.h \ + bignum/h/BigNum.h bignum/h/BntoBnn.h big_int.cmi: nat.cmi num.cmi: big_int.cmi nat.cmi ratio.cmi ratio.cmi: big_int.cmi nat.cmi diff --git a/otherlibs/str/.depend b/otherlibs/str/.depend index 13deac1a6..c93656bae 100644 --- a/otherlibs/str/.depend +++ b/otherlibs/str/.depend @@ -1,3 +1,7 @@ -strstubs.o: strstubs.c +strstubs.o: strstubs.c ../../byterun/mlvalues.h ../../byterun/config.h \ + ../../config/m.h ../../config/s.h ../../byterun/misc.h \ + ../../byterun/alloc.h ../../byterun/memory.h ../../byterun/gc.h \ + ../../byterun/major_gc.h ../../byterun/freelist.h \ + ../../byterun/minor_gc.h ../../byterun/fail.h str.cmo: str.cmi str.cmx: str.cmi diff --git a/otherlibs/unix/.depend b/otherlibs/unix/.depend index 8759ef8b5..cb4704c71 100644 --- a/otherlibs/unix/.depend +++ b/otherlibs/unix/.depend @@ -1,93 +1,281 @@ -accept.o: accept.c unixsupport.h socketaddr.h -access.o: access.c unixsupport.h -addrofstr.o: addrofstr.c unixsupport.h socketaddr.h -alarm.o: alarm.c unixsupport.h -bind.o: bind.c unixsupport.h socketaddr.h -chdir.o: chdir.c unixsupport.h -chmod.o: chmod.c unixsupport.h -chown.o: chown.c unixsupport.h -chroot.o: chroot.c unixsupport.h -close.o: close.c unixsupport.h -closedir.o: closedir.c unixsupport.h -connect.o: connect.c unixsupport.h socketaddr.h -cst2constr.o: cst2constr.c cst2constr.h -cstringv.o: cstringv.c unixsupport.h -dup.o: dup.c unixsupport.h -dup2.o: dup2.c unixsupport.h -envir.o: envir.c -errmsg.o: errmsg.c -execv.o: execv.c unixsupport.h -execve.o: execve.c unixsupport.h -execvp.o: execvp.c unixsupport.h -exit.o: exit.c unixsupport.h -fchmod.o: fchmod.c unixsupport.h -fchown.o: fchown.c unixsupport.h -fcntl.o: fcntl.c unixsupport.h -fork.o: fork.c unixsupport.h -ftruncate.o: ftruncate.c unixsupport.h -getcwd.o: getcwd.c unixsupport.h -getegid.o: getegid.c unixsupport.h -geteuid.o: geteuid.c unixsupport.h -getgid.o: getgid.c unixsupport.h -getgr.o: getgr.c unixsupport.h -getgroups.o: getgroups.c unixsupport.h -gethost.o: gethost.c unixsupport.h socketaddr.h -gethostname.o: gethostname.c unixsupport.h -getlogin.o: getlogin.c unixsupport.h -getpeername.o: getpeername.c unixsupport.h socketaddr.h -getpid.o: getpid.c unixsupport.h -getppid.o: getppid.c unixsupport.h -getproto.o: getproto.c unixsupport.h -getpw.o: getpw.c unixsupport.h -getserv.o: getserv.c unixsupport.h -getsockname.o: getsockname.c unixsupport.h socketaddr.h -gettimeofday.o: gettimeofday.c unixsupport.h -getuid.o: getuid.c unixsupport.h -gmtime.o: gmtime.c unixsupport.h -itimer.o: itimer.c unixsupport.h -kill.o: kill.c unixsupport.h -link.o: link.c unixsupport.h -listen.o: listen.c unixsupport.h -lockf.o: lockf.c unixsupport.h -lseek.o: lseek.c unixsupport.h -mkdir.o: mkdir.c unixsupport.h -mkfifo.o: mkfifo.c unixsupport.h -nice.o: nice.c unixsupport.h -open.o: open.c unixsupport.h -opendir.o: opendir.c unixsupport.h -pipe.o: pipe.c unixsupport.h -putenv.o: putenv.c unixsupport.h -read.o: read.c unixsupport.h -readdir.o: readdir.c unixsupport.h -readlink.o: readlink.c unixsupport.h -rename.o: rename.c unixsupport.h -rewinddir.o: rewinddir.c unixsupport.h -rmdir.o: rmdir.c unixsupport.h -select.o: select.c unixsupport.h -sendrecv.o: sendrecv.c unixsupport.h socketaddr.h -setgid.o: setgid.c unixsupport.h -setsid.o: setsid.c unixsupport.h -setuid.o: setuid.c unixsupport.h -shutdown.o: shutdown.c unixsupport.h -signals.o: signals.c unixsupport.h -sleep.o: sleep.c unixsupport.h -socket.o: socket.c unixsupport.h -socketaddr.o: socketaddr.c unixsupport.h socketaddr.h -socketpair.o: socketpair.c unixsupport.h -sockopt.o: sockopt.c unixsupport.h socketaddr.h -stat.o: stat.c unixsupport.h cst2constr.h -strofaddr.o: strofaddr.c unixsupport.h socketaddr.h -symlink.o: symlink.c unixsupport.h -termios.o: termios.c unixsupport.h -time.o: time.c unixsupport.h -times.o: times.c unixsupport.h -truncate.o: truncate.c unixsupport.h -umask.o: umask.c unixsupport.h -unixsupport.o: unixsupport.c unixsupport.h cst2constr.h -unlink.o: unlink.c unixsupport.h -utimes.o: utimes.c unixsupport.h -wait.o: wait.c unixsupport.h -write.o: write.c unixsupport.h +accept.o: accept.c ../../byterun/mlvalues.h ../../byterun/config.h \ + ../../config/m.h ../../config/s.h ../../byterun/misc.h \ + ../../byterun/alloc.h ../../byterun/memory.h ../../byterun/gc.h \ + ../../byterun/major_gc.h ../../byterun/freelist.h \ + ../../byterun/minor_gc.h ../../byterun/signals.h unixsupport.h \ + socketaddr.h +access.o: access.c ../../byterun/mlvalues.h ../../byterun/config.h \ + ../../config/m.h ../../config/s.h ../../byterun/misc.h \ + ../../byterun/alloc.h unixsupport.h +addrofstr.o: addrofstr.c ../../byterun/mlvalues.h ../../byterun/config.h \ + ../../config/m.h ../../config/s.h ../../byterun/misc.h \ + ../../byterun/fail.h unixsupport.h socketaddr.h +alarm.o: alarm.c ../../byterun/mlvalues.h ../../byterun/config.h \ + ../../config/m.h ../../config/s.h ../../byterun/misc.h unixsupport.h +bind.o: bind.c ../../byterun/mlvalues.h ../../byterun/config.h \ + ../../config/m.h ../../config/s.h ../../byterun/misc.h unixsupport.h \ + socketaddr.h +chdir.o: chdir.c ../../byterun/mlvalues.h ../../byterun/config.h \ + ../../config/m.h ../../config/s.h ../../byterun/misc.h unixsupport.h +chmod.o: chmod.c ../../byterun/mlvalues.h ../../byterun/config.h \ + ../../config/m.h ../../config/s.h ../../byterun/misc.h unixsupport.h +chown.o: chown.c ../../byterun/mlvalues.h ../../byterun/config.h \ + ../../config/m.h ../../config/s.h ../../byterun/misc.h unixsupport.h +chroot.o: chroot.c ../../byterun/mlvalues.h ../../byterun/config.h \ + ../../config/m.h ../../config/s.h ../../byterun/misc.h unixsupport.h +close.o: close.c ../../byterun/mlvalues.h ../../byterun/config.h \ + ../../config/m.h ../../config/s.h ../../byterun/misc.h unixsupport.h +closedir.o: closedir.c ../../byterun/mlvalues.h ../../byterun/config.h \ + ../../config/m.h ../../config/s.h ../../byterun/misc.h unixsupport.h +connect.o: connect.c ../../byterun/mlvalues.h ../../byterun/config.h \ + ../../config/m.h ../../config/s.h ../../byterun/misc.h \ + ../../byterun/signals.h unixsupport.h socketaddr.h +cst2constr.o: cst2constr.c ../../byterun/mlvalues.h \ + ../../byterun/config.h ../../config/m.h ../../config/s.h \ + ../../byterun/misc.h ../../byterun/fail.h cst2constr.h +cstringv.o: cstringv.c ../../byterun/mlvalues.h ../../byterun/config.h \ + ../../config/m.h ../../config/s.h ../../byterun/misc.h \ + ../../byterun/memory.h ../../byterun/gc.h ../../byterun/major_gc.h \ + ../../byterun/freelist.h ../../byterun/minor_gc.h unixsupport.h +dup.o: dup.c ../../byterun/mlvalues.h ../../byterun/config.h \ + ../../config/m.h ../../config/s.h ../../byterun/misc.h unixsupport.h +dup2.o: dup2.c ../../byterun/mlvalues.h ../../byterun/config.h \ + ../../config/m.h ../../config/s.h ../../byterun/misc.h unixsupport.h +envir.o: envir.c ../../byterun/mlvalues.h ../../byterun/config.h \ + ../../config/m.h ../../config/s.h ../../byterun/misc.h \ + ../../byterun/alloc.h +errmsg.o: errmsg.c ../../byterun/mlvalues.h ../../byterun/config.h \ + ../../config/m.h ../../config/s.h ../../byterun/misc.h \ + ../../byterun/alloc.h +execv.o: execv.c ../../byterun/mlvalues.h ../../byterun/config.h \ + ../../config/m.h ../../config/s.h ../../byterun/misc.h \ + ../../byterun/memory.h ../../byterun/gc.h ../../byterun/major_gc.h \ + ../../byterun/freelist.h ../../byterun/minor_gc.h unixsupport.h +execve.o: execve.c ../../byterun/mlvalues.h ../../byterun/config.h \ + ../../config/m.h ../../config/s.h ../../byterun/misc.h \ + ../../byterun/memory.h ../../byterun/gc.h ../../byterun/major_gc.h \ + ../../byterun/freelist.h ../../byterun/minor_gc.h unixsupport.h +execvp.o: execvp.c ../../byterun/mlvalues.h ../../byterun/config.h \ + ../../config/m.h ../../config/s.h ../../byterun/misc.h \ + ../../byterun/memory.h ../../byterun/gc.h ../../byterun/major_gc.h \ + ../../byterun/freelist.h ../../byterun/minor_gc.h unixsupport.h +exit.o: exit.c ../../byterun/mlvalues.h ../../byterun/config.h \ + ../../config/m.h ../../config/s.h ../../byterun/misc.h unixsupport.h +fchmod.o: fchmod.c ../../byterun/mlvalues.h ../../byterun/config.h \ + ../../config/m.h ../../config/s.h ../../byterun/misc.h unixsupport.h +fchown.o: fchown.c ../../byterun/mlvalues.h ../../byterun/config.h \ + ../../config/m.h ../../config/s.h ../../byterun/misc.h unixsupport.h +fcntl.o: fcntl.c ../../byterun/mlvalues.h ../../byterun/config.h \ + ../../config/m.h ../../config/s.h ../../byterun/misc.h unixsupport.h +fork.o: fork.c ../../byterun/mlvalues.h ../../byterun/config.h \ + ../../config/m.h ../../config/s.h ../../byterun/misc.h unixsupport.h +ftruncate.o: ftruncate.c ../../byterun/mlvalues.h ../../byterun/config.h \ + ../../config/m.h ../../config/s.h ../../byterun/misc.h \ + ../../byterun/io.h unixsupport.h +getcwd.o: getcwd.c ../../byterun/mlvalues.h ../../byterun/config.h \ + ../../config/m.h ../../config/s.h ../../byterun/misc.h \ + ../../byterun/alloc.h unixsupport.h +getegid.o: getegid.c ../../byterun/mlvalues.h ../../byterun/config.h \ + ../../config/m.h ../../config/s.h ../../byterun/misc.h unixsupport.h +geteuid.o: geteuid.c ../../byterun/mlvalues.h ../../byterun/config.h \ + ../../config/m.h ../../config/s.h ../../byterun/misc.h unixsupport.h +getgid.o: getgid.c ../../byterun/mlvalues.h ../../byterun/config.h \ + ../../config/m.h ../../config/s.h ../../byterun/misc.h unixsupport.h +getgr.o: getgr.c ../../byterun/mlvalues.h ../../byterun/config.h \ + ../../config/m.h ../../config/s.h ../../byterun/misc.h \ + ../../byterun/fail.h ../../byterun/alloc.h ../../byterun/memory.h \ + ../../byterun/gc.h ../../byterun/major_gc.h ../../byterun/freelist.h \ + ../../byterun/minor_gc.h unixsupport.h +getgroups.o: getgroups.c ../../byterun/mlvalues.h ../../byterun/config.h \ + ../../config/m.h ../../config/s.h ../../byterun/misc.h \ + ../../byterun/alloc.h unixsupport.h +gethost.o: gethost.c ../../byterun/mlvalues.h ../../byterun/config.h \ + ../../config/m.h ../../config/s.h ../../byterun/misc.h \ + ../../byterun/alloc.h ../../byterun/memory.h ../../byterun/gc.h \ + ../../byterun/major_gc.h ../../byterun/freelist.h \ + ../../byterun/minor_gc.h ../../byterun/fail.h ../../byterun/signals.h \ + unixsupport.h socketaddr.h +gethostname.o: gethostname.c ../../byterun/mlvalues.h \ + ../../byterun/config.h ../../config/m.h ../../config/s.h \ + ../../byterun/misc.h ../../byterun/alloc.h unixsupport.h +getlogin.o: getlogin.c ../../byterun/mlvalues.h ../../byterun/config.h \ + ../../config/m.h ../../config/s.h ../../byterun/misc.h \ + ../../byterun/alloc.h unixsupport.h +getpeername.o: getpeername.c ../../byterun/mlvalues.h \ + ../../byterun/config.h ../../config/m.h ../../config/s.h \ + ../../byterun/misc.h unixsupport.h socketaddr.h +getpid.o: getpid.c ../../byterun/mlvalues.h ../../byterun/config.h \ + ../../config/m.h ../../config/s.h ../../byterun/misc.h unixsupport.h +getppid.o: getppid.c ../../byterun/mlvalues.h ../../byterun/config.h \ + ../../config/m.h ../../config/s.h ../../byterun/misc.h unixsupport.h +getproto.o: getproto.c ../../byterun/mlvalues.h ../../byterun/config.h \ + ../../config/m.h ../../config/s.h ../../byterun/misc.h \ + ../../byterun/alloc.h ../../byterun/memory.h ../../byterun/gc.h \ + ../../byterun/major_gc.h ../../byterun/freelist.h \ + ../../byterun/minor_gc.h ../../byterun/fail.h unixsupport.h +getpw.o: getpw.c ../../byterun/mlvalues.h ../../byterun/config.h \ + ../../config/m.h ../../config/s.h ../../byterun/misc.h \ + ../../byterun/alloc.h ../../byterun/memory.h ../../byterun/gc.h \ + ../../byterun/major_gc.h ../../byterun/freelist.h \ + ../../byterun/minor_gc.h ../../byterun/fail.h unixsupport.h +getserv.o: getserv.c ../../byterun/mlvalues.h ../../byterun/config.h \ + ../../config/m.h ../../config/s.h ../../byterun/misc.h \ + ../../byterun/alloc.h ../../byterun/memory.h ../../byterun/gc.h \ + ../../byterun/major_gc.h ../../byterun/freelist.h \ + ../../byterun/minor_gc.h ../../byterun/fail.h unixsupport.h +getsockname.o: getsockname.c ../../byterun/mlvalues.h \ + ../../byterun/config.h ../../config/m.h ../../config/s.h \ + ../../byterun/misc.h unixsupport.h socketaddr.h +gettimeofday.o: gettimeofday.c ../../byterun/mlvalues.h \ + ../../byterun/config.h ../../config/m.h ../../config/s.h \ + ../../byterun/misc.h ../../byterun/alloc.h unixsupport.h +getuid.o: getuid.c ../../byterun/mlvalues.h ../../byterun/config.h \ + ../../config/m.h ../../config/s.h ../../byterun/misc.h unixsupport.h +gmtime.o: gmtime.c ../../byterun/mlvalues.h ../../byterun/config.h \ + ../../config/m.h ../../config/s.h ../../byterun/misc.h \ + ../../byterun/alloc.h ../../byterun/memory.h ../../byterun/gc.h \ + ../../byterun/major_gc.h ../../byterun/freelist.h \ + ../../byterun/minor_gc.h unixsupport.h +itimer.o: itimer.c ../../byterun/mlvalues.h ../../byterun/config.h \ + ../../config/m.h ../../config/s.h ../../byterun/misc.h \ + ../../byterun/alloc.h ../../byterun/memory.h ../../byterun/gc.h \ + ../../byterun/major_gc.h ../../byterun/freelist.h \ + ../../byterun/minor_gc.h unixsupport.h +kill.o: kill.c ../../byterun/mlvalues.h ../../byterun/config.h \ + ../../config/m.h ../../config/s.h ../../byterun/misc.h \ + ../../byterun/fail.h unixsupport.h ../../byterun/signals.h +link.o: link.c ../../byterun/mlvalues.h ../../byterun/config.h \ + ../../config/m.h ../../config/s.h ../../byterun/misc.h unixsupport.h +listen.o: listen.c ../../byterun/mlvalues.h ../../byterun/config.h \ + ../../config/m.h ../../config/s.h ../../byterun/misc.h unixsupport.h +lockf.o: lockf.c ../../byterun/mlvalues.h ../../byterun/config.h \ + ../../config/m.h ../../config/s.h ../../byterun/misc.h unixsupport.h +lseek.o: lseek.c ../../byterun/mlvalues.h ../../byterun/config.h \ + ../../config/m.h ../../config/s.h ../../byterun/misc.h \ + ../../byterun/alloc.h ../../byterun/io.h unixsupport.h +mkdir.o: mkdir.c ../../byterun/mlvalues.h ../../byterun/config.h \ + ../../config/m.h ../../config/s.h ../../byterun/misc.h unixsupport.h +mkfifo.o: mkfifo.c ../../byterun/mlvalues.h ../../byterun/config.h \ + ../../config/m.h ../../config/s.h ../../byterun/misc.h unixsupport.h +nice.o: nice.c ../../byterun/mlvalues.h ../../byterun/config.h \ + ../../config/m.h ../../config/s.h ../../byterun/misc.h unixsupport.h +open.o: open.c ../../byterun/mlvalues.h ../../byterun/config.h \ + ../../config/m.h ../../config/s.h ../../byterun/misc.h \ + ../../byterun/alloc.h ../../byterun/memory.h ../../byterun/gc.h \ + ../../byterun/major_gc.h ../../byterun/freelist.h \ + ../../byterun/minor_gc.h ../../byterun/signals.h unixsupport.h +opendir.o: opendir.c ../../byterun/mlvalues.h ../../byterun/config.h \ + ../../config/m.h ../../config/s.h ../../byterun/misc.h unixsupport.h +pipe.o: pipe.c ../../byterun/mlvalues.h ../../byterun/config.h \ + ../../config/m.h ../../config/s.h ../../byterun/misc.h \ + ../../byterun/alloc.h unixsupport.h +putenv.o: putenv.c ../../byterun/memory.h ../../byterun/config.h \ + ../../config/m.h ../../config/s.h ../../byterun/gc.h \ + ../../byterun/mlvalues.h ../../byterun/misc.h ../../byterun/major_gc.h \ + ../../byterun/freelist.h ../../byterun/minor_gc.h unixsupport.h +read.o: read.c ../../byterun/mlvalues.h ../../byterun/config.h \ + ../../config/m.h ../../config/s.h ../../byterun/misc.h \ + ../../byterun/memory.h ../../byterun/gc.h ../../byterun/major_gc.h \ + ../../byterun/freelist.h ../../byterun/minor_gc.h \ + ../../byterun/signals.h unixsupport.h +readdir.o: readdir.c ../../byterun/mlvalues.h ../../byterun/config.h \ + ../../config/m.h ../../config/s.h ../../byterun/misc.h \ + ../../byterun/fail.h ../../byterun/alloc.h unixsupport.h +readlink.o: readlink.c ../../byterun/mlvalues.h ../../byterun/config.h \ + ../../config/m.h ../../config/s.h ../../byterun/misc.h \ + ../../byterun/alloc.h unixsupport.h +rename.o: rename.c ../../byterun/mlvalues.h ../../byterun/config.h \ + ../../config/m.h ../../config/s.h ../../byterun/misc.h unixsupport.h +rewinddir.o: rewinddir.c ../../byterun/mlvalues.h ../../byterun/config.h \ + ../../config/m.h ../../config/s.h ../../byterun/misc.h unixsupport.h +rmdir.o: rmdir.c ../../byterun/mlvalues.h ../../byterun/config.h \ + ../../config/m.h ../../config/s.h ../../byterun/misc.h unixsupport.h +select.o: select.c ../../byterun/mlvalues.h ../../byterun/config.h \ + ../../config/m.h ../../config/s.h ../../byterun/misc.h \ + ../../byterun/alloc.h ../../byterun/memory.h ../../byterun/gc.h \ + ../../byterun/major_gc.h ../../byterun/freelist.h \ + ../../byterun/minor_gc.h ../../byterun/signals.h unixsupport.h +sendrecv.o: sendrecv.c ../../byterun/mlvalues.h ../../byterun/config.h \ + ../../config/m.h ../../config/s.h ../../byterun/misc.h \ + ../../byterun/alloc.h ../../byterun/memory.h ../../byterun/gc.h \ + ../../byterun/major_gc.h ../../byterun/freelist.h \ + ../../byterun/minor_gc.h ../../byterun/signals.h unixsupport.h \ + socketaddr.h +setgid.o: setgid.c ../../byterun/mlvalues.h ../../byterun/config.h \ + ../../config/m.h ../../config/s.h ../../byterun/misc.h unixsupport.h +setsid.o: setsid.c ../../byterun/mlvalues.h ../../byterun/config.h \ + ../../config/m.h ../../config/s.h ../../byterun/misc.h unixsupport.h +setuid.o: setuid.c ../../byterun/mlvalues.h ../../byterun/config.h \ + ../../config/m.h ../../config/s.h ../../byterun/misc.h unixsupport.h +shutdown.o: shutdown.c ../../byterun/mlvalues.h ../../byterun/config.h \ + ../../config/m.h ../../config/s.h ../../byterun/misc.h unixsupport.h +signals.o: signals.c ../../byterun/alloc.h ../../byterun/misc.h \ + ../../byterun/config.h ../../config/m.h ../../config/s.h \ + ../../byterun/mlvalues.h ../../byterun/memory.h ../../byterun/gc.h \ + ../../byterun/major_gc.h ../../byterun/freelist.h \ + ../../byterun/minor_gc.h ../../byterun/signals.h unixsupport.h +sleep.o: sleep.c ../../byterun/mlvalues.h ../../byterun/config.h \ + ../../config/m.h ../../config/s.h ../../byterun/misc.h \ + ../../byterun/signals.h unixsupport.h +socket.o: socket.c ../../byterun/mlvalues.h ../../byterun/config.h \ + ../../config/m.h ../../config/s.h ../../byterun/misc.h unixsupport.h +socketaddr.o: socketaddr.c ../../byterun/mlvalues.h \ + ../../byterun/config.h ../../config/m.h ../../config/s.h \ + ../../byterun/misc.h ../../byterun/alloc.h ../../byterun/memory.h \ + ../../byterun/gc.h ../../byterun/major_gc.h ../../byterun/freelist.h \ + ../../byterun/minor_gc.h unixsupport.h socketaddr.h +socketpair.o: socketpair.c ../../byterun/mlvalues.h \ + ../../byterun/config.h ../../config/m.h ../../config/s.h \ + ../../byterun/misc.h ../../byterun/alloc.h unixsupport.h +sockopt.o: sockopt.c ../../byterun/mlvalues.h ../../byterun/config.h \ + ../../config/m.h ../../config/s.h ../../byterun/misc.h \ + ../../byterun/alloc.h unixsupport.h socketaddr.h +stat.o: stat.c ../../byterun/mlvalues.h ../../byterun/config.h \ + ../../config/m.h ../../config/s.h ../../byterun/misc.h \ + ../../byterun/memory.h ../../byterun/gc.h ../../byterun/major_gc.h \ + ../../byterun/freelist.h ../../byterun/minor_gc.h ../../byterun/alloc.h \ + unixsupport.h cst2constr.h ../../byterun/io.h +strofaddr.o: strofaddr.c ../../byterun/mlvalues.h ../../byterun/config.h \ + ../../config/m.h ../../config/s.h ../../byterun/misc.h \ + ../../byterun/alloc.h unixsupport.h socketaddr.h +symlink.o: symlink.c ../../byterun/mlvalues.h ../../byterun/config.h \ + ../../config/m.h ../../config/s.h ../../byterun/misc.h unixsupport.h +termios.o: termios.c ../../byterun/mlvalues.h ../../byterun/config.h \ + ../../config/m.h ../../config/s.h ../../byterun/misc.h \ + ../../byterun/alloc.h unixsupport.h +time.o: time.c ../../byterun/mlvalues.h ../../byterun/config.h \ + ../../config/m.h ../../config/s.h ../../byterun/misc.h \ + ../../byterun/alloc.h unixsupport.h +times.o: times.c ../../byterun/mlvalues.h ../../byterun/config.h \ + ../../config/m.h ../../config/s.h ../../byterun/misc.h \ + ../../byterun/alloc.h ../../byterun/memory.h ../../byterun/gc.h \ + ../../byterun/major_gc.h ../../byterun/freelist.h \ + ../../byterun/minor_gc.h unixsupport.h +truncate.o: truncate.c ../../byterun/mlvalues.h ../../byterun/config.h \ + ../../config/m.h ../../config/s.h ../../byterun/misc.h \ + ../../byterun/io.h unixsupport.h +umask.o: umask.c ../../byterun/mlvalues.h ../../byterun/config.h \ + ../../config/m.h ../../config/s.h ../../byterun/misc.h unixsupport.h +unixsupport.o: unixsupport.c ../../byterun/mlvalues.h \ + ../../byterun/config.h ../../config/m.h ../../config/s.h \ + ../../byterun/misc.h ../../byterun/alloc.h ../../byterun/callback.h \ + ../../byterun/memory.h ../../byterun/gc.h ../../byterun/major_gc.h \ + ../../byterun/freelist.h ../../byterun/minor_gc.h ../../byterun/fail.h \ + unixsupport.h cst2constr.h +unlink.o: unlink.c ../../byterun/mlvalues.h ../../byterun/config.h \ + ../../config/m.h ../../config/s.h ../../byterun/misc.h unixsupport.h +utimes.o: utimes.c ../../byterun/mlvalues.h ../../byterun/config.h \ + ../../config/m.h ../../config/s.h ../../byterun/misc.h unixsupport.h +wait.o: wait.c ../../byterun/mlvalues.h ../../byterun/config.h \ + ../../config/m.h ../../config/s.h ../../byterun/misc.h \ + ../../byterun/alloc.h ../../byterun/memory.h ../../byterun/gc.h \ + ../../byterun/major_gc.h ../../byterun/freelist.h \ + ../../byterun/minor_gc.h ../../byterun/signals.h unixsupport.h +write.o: write.c ../../byterun/mlvalues.h ../../byterun/config.h \ + ../../config/m.h ../../config/s.h ../../byterun/misc.h \ + ../../byterun/memory.h ../../byterun/gc.h ../../byterun/major_gc.h \ + ../../byterun/freelist.h ../../byterun/minor_gc.h \ + ../../byterun/signals.h unixsupport.h unixLabels.cmi: unix.cmi unix.cmo: unix.cmi unix.cmx: unix.cmi diff --git a/tools/.depend b/tools/.depend index 02ae6777f..035fd88b9 100644 --- a/tools/.depend +++ b/tools/.depend @@ -33,6 +33,8 @@ ocamldep.cmx: ../utils/clflags.cmx ../utils/config.cmx depend.cmx \ ../parsing/lexer.cmx ../parsing/location.cmx ../parsing/longident.cmx \ ../utils/misc.cmx ../parsing/parse.cmx ../parsing/parsetree.cmi \ ../parsing/syntaxerr.cmx +ocamlmktop.cmo: ../utils/ccomp.cmi +ocamlmktop.cmx: ../utils/ccomp.cmx ocamlprof.cmo: ../utils/clflags.cmo ../utils/config.cmi ../parsing/lexer.cmi \ ../parsing/location.cmi ../utils/misc.cmi ../parsing/parse.cmi \ ../parsing/parsetree.cmi ../parsing/syntaxerr.cmi diff --git a/tools/ocamlcp.ml b/tools/ocamlcp.ml index 4599cf88b..ebb1a142d 100644 --- a/tools/ocamlcp.ml +++ b/tools/ocamlcp.ml @@ -71,6 +71,7 @@ module Options = Main_args.Make_options (struct let _pp s = incompatible "-pp" let _principal = option "-principal" let _rectypes = option "-rectypes" + let _stypes = option "-stypes" let _thread () = ismultithreaded := "-thread"; option "-thread" () let _unsafe = option "-unsafe" let _use_prims s = option_with_arg "-use-prims" s diff --git a/typing/stypes.ml b/typing/stypes.ml new file mode 100644 index 000000000..6c958bb02 --- /dev/null +++ b/typing/stypes.ml @@ -0,0 +1,62 @@ +(***********************************************************************) +(* *) +(* Objective Caml *) +(* *) +(* Damien Doligez, projet Moscova, INRIA Rocquencourt *) +(* *) +(* Copyright 2003 Institut National de Recherche en Informatique et *) +(* en Automatique. All rights reserved. This file is distributed *) +(* under the terms of the Q Public License version 1.0. *) +(* *) +(***********************************************************************) + +(* $Id$ *) + +(* Recording and dumping (partial) type information *) + +(* + Saving and dumping type information. + We record all types in a list as they are created. + This means we can dump type information even if type inference fails, + which is extremely important, since type information is most + interesting in case of errors. +*) + +open Format;; +open Lexing;; +open Location;; + +let type_info = ref [];; + +let record loc typ = + if not loc.Location.loc_ghost then type_info := (loc, typ) :: !type_info; +;; + +(* A comparison function compatible with inclusion order *) +let compare_loc (loc1, _) (loc2, _) = + match compare loc1.loc_end loc2.loc_end with + | 0 -> compare loc2.loc_start loc1.loc_start + | x -> x +;; + +let print_position pp pos = + fprintf pp "%S %d %d %d" pos.pos_fname pos.pos_lnum pos.pos_bol pos.pos_cnum; +;; + +let print_info pp (loc, typ) = + print_position pp loc.loc_start; + fprintf pp " "; + print_position pp loc.loc_end; + fprintf pp "@.(@. "; + Printtyp.type_expr pp typ; + fprintf pp "@.)@."; +;; + +let dump filename = + let info = List.sort compare_loc !type_info in + type_info := []; + if !Clflags.save_types then begin + let pp = formatter_of_out_channel (open_out filename) in + List.iter (print_info pp) info + end; +;; diff --git a/typing/stypes.mli b/typing/stypes.mli new file mode 100644 index 000000000..894c14090 --- /dev/null +++ b/typing/stypes.mli @@ -0,0 +1,18 @@ +(***********************************************************************) +(* *) +(* Objective Caml *) +(* *) +(* Damien Doligez, projet Moscova, INRIA Rocquencourt *) +(* *) +(* Copyright 2003 Institut National de Recherche en Informatique et *) +(* en Automatique. All rights reserved. This file is distributed *) +(* under the terms of the Q Public License version 1.0. *) +(* *) +(***********************************************************************) + +(* $Id$ *) + +(* Recording and dumping (partial) type information *) + +val record : Location.t -> Types.type_expr -> unit;; +val dump : string -> unit;; diff --git a/typing/typecore.ml b/typing/typecore.ml index 4f3a2b610..5953c299c 100644 --- a/typing/typecore.ml +++ b/typing/typecore.ml @@ -67,6 +67,23 @@ let type_module = ref ((fun env md -> assert false) : Env.t -> Parsetree.module_expr -> Typedtree.module_expr) + +(* + Saving and outputting type information. + We keep these function names short, because they have to be + called each time we create a record of type [Typedtree.expression] + or [Typedtree.pattern] that will end up in the typed AST. +*) +let re node = + Stypes.record node.exp_loc node.exp_type; + node +;; +let rp node = + Stypes.record node.pat_loc node.pat_type; + node +;; + + (* Typing of constants *) let type_constant = function @@ -260,8 +277,8 @@ let build_or_pat env loc lid = (l, Reither(true,[], true, ref None)) :: fields | Rpresent (Some ty) -> bound := ty :: !bound; - (l, Some{pat_desc=Tpat_any; pat_loc=Location.none; pat_env=env; - pat_type=ty}) + (l, Some {pat_desc=Tpat_any; pat_loc=Location.none; pat_env=env; + pat_type=ty}) :: pats, (l, Reither(false, [ty], true, ref None)) :: fields | _ -> pats, fields) @@ -282,22 +299,24 @@ let build_or_pat env loc lid = | pat :: pats -> let r = List.fold_left - (fun pat pat0 -> {pat_desc=Tpat_or(pat0,pat,Some path); pat_loc=gloc; - pat_env=env; pat_type=ty}) + (fun pat pat0 -> {pat_desc=Tpat_or(pat0,pat,Some path); + pat_loc=gloc; pat_env=env; pat_type=ty}) pat pats in - { r with pat_loc = loc } + rp { r with pat_loc = loc } let rec type_pat env sp = match sp.ppat_desc with Ppat_any -> - { pat_desc = Tpat_any; + rp { + pat_desc = Tpat_any; pat_loc = sp.ppat_loc; pat_type = newvar(); pat_env = env } | Ppat_var name -> let ty = newvar() in let id = enter_variable sp.ppat_loc name ty in - { pat_desc = Tpat_var id; + rp { + pat_desc = Tpat_var id; pat_loc = sp.ppat_loc; pat_type = ty; pat_env = env } @@ -308,18 +327,21 @@ let rec type_pat env sp = end_def (); generalize ty_var; let id = enter_variable sp.ppat_loc name ty_var in - { pat_desc = Tpat_alias(q, id); + rp { + pat_desc = Tpat_alias(q, id); pat_loc = sp.ppat_loc; pat_type = q.pat_type; pat_env = env } | Ppat_constant cst -> - { pat_desc = Tpat_constant cst; + rp { + pat_desc = Tpat_constant cst; pat_loc = sp.ppat_loc; pat_type = type_constant cst; pat_env = env } | Ppat_tuple spl -> let pl = List.map (type_pat env) spl in - { pat_desc = Tpat_tuple pl; + rp { + pat_desc = Tpat_tuple pl; pat_loc = sp.ppat_loc; pat_type = newty (Ttuple(List.map (fun p -> p.pat_type) pl)); pat_env = env } @@ -343,7 +365,8 @@ let rec type_pat env sp = let args = List.map (type_pat env) sargs in let (ty_args, ty_res) = instance_constructor constr in List.iter2 (unify_pat env) args ty_args; - { pat_desc = Tpat_construct(constr, args); + rp { + pat_desc = Tpat_construct(constr, args); pat_loc = sp.ppat_loc; pat_type = ty_res; pat_env = env } @@ -357,7 +380,8 @@ let rec type_pat env sp = row_more = newvar (); row_fixed = false; row_name = None } in - { pat_desc = Tpat_variant(l, arg, row); + rp { + pat_desc = Tpat_variant(l, arg, row); pat_loc = sp.ppat_loc; pat_type = newty (Tvariant row); pat_env = env } @@ -386,7 +410,8 @@ let rec type_pat env sp = unify_pat env arg ty_arg; (label, arg) in - { pat_desc = Tpat_record(List.map type_label_pat lid_sp_list); + rp { + pat_desc = Tpat_record(List.map type_label_pat lid_sp_list); pat_loc = sp.ppat_loc; pat_type = ty; pat_env = env } @@ -394,7 +419,8 @@ let rec type_pat env sp = let pl = List.map (type_pat env) spl in let ty_elt = newvar() in List.iter (fun p -> unify_pat env p ty_elt) pl; - { pat_desc = Tpat_array pl; + rp { + pat_desc = Tpat_array pl; pat_loc = sp.ppat_loc; pat_type = instance (Predef.type_array ty_elt); pat_env = env } @@ -409,7 +435,8 @@ let rec type_pat env sp = let alpha_env = enter_orpat_variables sp.ppat_loc env p1_variables p2_variables in pattern_variables := p1_variables ; - { pat_desc = Tpat_or(p1, alpha_pat alpha_env p2, None); + rp { + pat_desc = Tpat_or(p1, alpha_pat alpha_env p2, None); pat_loc = sp.ppat_loc; pat_type = p1.pat_type; pat_env = env } @@ -784,7 +811,8 @@ let rec type_exp env sexp = Pexp_ident lid -> begin try let (path, desc) = Env.lookup_value lid env in - { exp_desc = + re { + exp_desc = begin match desc.val_kind with Val_ivar (_, cl_num) -> let (self_path, _) = @@ -808,14 +836,16 @@ let rec type_exp env sexp = raise(Error(sexp.pexp_loc, Unbound_value lid)) end | Pexp_constant cst -> - { exp_desc = Texp_constant cst; + re { + exp_desc = Texp_constant cst; exp_loc = sexp.pexp_loc; exp_type = type_constant cst; exp_env = env } | Pexp_let(rec_flag, spat_sexp_list, sbody) -> let (pat_exp_list, new_env) = type_let env rec_flag spat_sexp_list in let body = type_exp new_env sbody in - { exp_desc = Texp_let(rec_flag, pat_exp_list, body); + re { + exp_desc = Texp_let(rec_flag, pat_exp_list, body); exp_loc = sexp.pexp_loc; exp_type = body.exp_type; exp_env = env } @@ -830,7 +860,8 @@ let rec type_exp env sexp = end; let (args, ty_res) = type_application env funct sargs in let funct = {funct with exp_type = instance funct.exp_type} in - { exp_desc = Texp_apply(funct, args); + re { + exp_desc = Texp_apply(funct, args); exp_loc = sexp.pexp_loc; exp_type = ty_res; exp_env = env } @@ -840,7 +871,8 @@ let rec type_exp env sexp = let cases, partial = type_cases env arg.exp_type ty_res (Some sexp.pexp_loc) caselist in - { exp_desc = Texp_match(arg, cases, partial); + re { + exp_desc = Texp_match(arg, cases, partial); exp_loc = sexp.pexp_loc; exp_type = ty_res; exp_env = env } @@ -849,13 +881,15 @@ let rec type_exp env sexp = let cases, _ = type_cases env (instance Predef.type_exn) body.exp_type None caselist in - { exp_desc = Texp_try(body, cases); + re { + exp_desc = Texp_try(body, cases); exp_loc = sexp.pexp_loc; exp_type = body.exp_type; exp_env = env } | Pexp_tuple sexpl -> let expl = List.map (type_exp env) sexpl in - { exp_desc = Texp_tuple expl; + re { + exp_desc = Texp_tuple expl; exp_loc = sexp.pexp_loc; exp_type = newty (Ttuple(List.map (fun exp -> exp.exp_type) expl)); exp_env = env } @@ -864,7 +898,8 @@ let rec type_exp env sexp = | Pexp_variant(l, sarg) -> let arg = may_map (type_exp env) sarg in let arg_type = may_map (fun arg -> arg.exp_type) arg in - { exp_desc = Texp_variant(l, arg); + re { + exp_desc = Texp_variant(l, arg); exp_loc = sexp.pexp_loc; exp_type= newty (Tvariant{row_fields = [l, Rpresent arg_type]; row_more = newvar (); @@ -944,7 +979,8 @@ let rec type_exp env sexp = raise(Error(sexp.pexp_loc, Label_missing missing)) end; check_virtual_type sexp.pexp_loc env ty; - { exp_desc = Texp_record(lbl_exp_list, opt_exp); + re { + exp_desc = Texp_record(lbl_exp_list, opt_exp); exp_loc = sexp.pexp_loc; exp_type = ty; exp_env = env } @@ -957,7 +993,8 @@ let rec type_exp env sexp = raise(Error(sexp.pexp_loc, Unbound_label lid)) in let (_, ty_arg, ty_res) = instance_label false label in unify_exp env arg ty_res; - { exp_desc = Texp_field(arg, label); + re { + exp_desc = Texp_field(arg, label); exp_loc = sexp.pexp_loc; exp_type = ty_arg; exp_env = env } @@ -979,14 +1016,16 @@ let rec type_exp env sexp = generalize_expansive env newval.exp_type; check_univars env "field value" newval label.lbl_arg vars; check_virtual_type_setfield lid sexp.pexp_loc env ty_res; - { exp_desc = Texp_setfield(record, label, newval); + re { + exp_desc = Texp_setfield(record, label, newval); exp_loc = sexp.pexp_loc; exp_type = instance Predef.type_unit; exp_env = env } | Pexp_array(sargl) -> let ty = newvar() in let argl = List.map (fun sarg -> type_expect env sarg ty) sargl in - { exp_desc = Texp_array argl; + re { + exp_desc = Texp_array argl; exp_loc = sexp.pexp_loc; exp_type = instance (Predef.type_array ty); exp_env = env } @@ -995,14 +1034,16 @@ let rec type_exp env sexp = begin match sifnot with None -> let ifso = type_expect env sifso (instance Predef.type_unit) in - { exp_desc = Texp_ifthenelse(cond, ifso, None); + re { + exp_desc = Texp_ifthenelse(cond, ifso, None); exp_loc = sexp.pexp_loc; exp_type = instance Predef.type_unit; exp_env = env } | Some sifnot -> let ifso = type_exp env sifso in let ifnot = type_expect env sifnot ifso.exp_type in - { exp_desc = Texp_ifthenelse(cond, ifso, Some ifnot); + re { + exp_desc = Texp_ifthenelse(cond, ifso, Some ifnot); exp_loc = sexp.pexp_loc; exp_type = ifso.exp_type; exp_env = env } @@ -1010,14 +1051,16 @@ let rec type_exp env sexp = | Pexp_sequence(sexp1, sexp2) -> let exp1 = type_statement env sexp1 in let exp2 = type_exp env sexp2 in - { exp_desc = Texp_sequence(exp1, exp2); + re { + exp_desc = Texp_sequence(exp1, exp2); exp_loc = sexp.pexp_loc; exp_type = exp2.exp_type; exp_env = env } | Pexp_while(scond, sbody) -> let cond = type_expect env scond (instance Predef.type_bool) in let body = type_statement env sbody in - { exp_desc = Texp_while(cond, body); + re { + exp_desc = Texp_while(cond, body); exp_loc = sexp.pexp_loc; exp_type = instance Predef.type_unit; exp_env = env } @@ -1028,7 +1071,8 @@ let rec type_exp env sexp = Env.enter_value param {val_type = instance Predef.type_int; val_kind = Val_reg} env in let body = type_statement new_env sbody in - { exp_desc = Texp_for(id, low, high, dir, body); + re { + exp_desc = Texp_for(id, low, high, dir, body); exp_loc = sexp.pexp_loc; exp_type = instance Predef.type_unit; exp_env = env } @@ -1081,14 +1125,16 @@ let rec type_exp env sexp = end; (type_expect env sarg ty, ty') in - { exp_desc = arg.exp_desc; + re { + exp_desc = arg.exp_desc; exp_loc = arg.exp_loc; exp_type = ty'; exp_env = env } | Pexp_when(scond, sbody) -> let cond = type_expect env scond (instance Predef.type_bool) in let body = type_exp env sbody in - { exp_desc = Texp_when(cond, body); + re { + exp_desc = Texp_when(cond, body); exp_loc = sexp.pexp_loc; exp_type = body.exp_type; exp_env = env } @@ -1122,7 +1168,7 @@ let rec type_exp env sexp = let (obj_ty, res_ty) = filter_arrow env method_type "" in unify env obj_ty desc.val_type; unify env res_ty (instance typ); - (Texp_apply({exp_desc = Texp_ident(Path.Pident method_id, + (Texp_apply({ exp_desc = Texp_ident(Path.Pident method_id, {val_type = method_type; val_kind = Val_reg}); exp_loc = sexp.pexp_loc; @@ -1164,7 +1210,8 @@ let rec type_exp env sexp = | _ -> assert false in - { exp_desc = exp; + re { + exp_desc = exp; exp_loc = sexp.pexp_loc; exp_type = typ; exp_env = env } @@ -1180,7 +1227,8 @@ let rec type_exp env sexp = None -> raise(Error(sexp.pexp_loc, Virtual_class cl)) | Some ty -> - { exp_desc = Texp_new (cl_path, cl_decl); + re { + exp_desc = Texp_new (cl_path, cl_decl); exp_loc = sexp.pexp_loc; exp_type = instance ty; exp_env = env } @@ -1194,7 +1242,8 @@ let rec type_exp env sexp = let (path_self, _) = Env.lookup_value (Longident.Lident ("self-" ^ cl_num)) env in - { exp_desc = Texp_setinstvar(path_self, path, newval); + re { + exp_desc = Texp_setinstvar(path_self, path, newval); exp_loc = sexp.pexp_loc; exp_type = instance Predef.type_unit; exp_env = env } @@ -1235,7 +1284,8 @@ let rec type_exp env sexp = end in let modifs = List.map type_override lst in - { exp_desc = Texp_override(path_self, modifs); + re { + exp_desc = Texp_override(path_self, modifs); exp_loc = sexp.pexp_loc; exp_type = self_ty; exp_env = env } @@ -1261,20 +1311,21 @@ let rec type_exp env sexp = with Unify _ -> raise(Error(sexp.pexp_loc, Scoping_let_module(name, body.exp_type))) end; - { exp_desc = Texp_letmodule(id, modl, body); + re { + exp_desc = Texp_letmodule(id, modl, body); exp_loc = sexp.pexp_loc; exp_type = ty; exp_env = env } | Pexp_assert (e) -> let cond = type_expect env e (instance Predef.type_bool) in - { + re { exp_desc = Texp_assert (cond); exp_loc = sexp.pexp_loc; exp_type = instance Predef.type_unit; exp_env = env; } | Pexp_assertfalse -> - { + re { exp_desc = Texp_assertfalse; exp_loc = sexp.pexp_loc; exp_type = newvar (); @@ -1282,7 +1333,7 @@ let rec type_exp env sexp = } | Pexp_lazy (e) -> let arg = type_exp env e in - { + re { exp_desc = Texp_lazy arg; exp_loc = sexp.pexp_loc; exp_type = instance (Predef.type_lazy_t arg.exp_type); @@ -1353,8 +1404,8 @@ and type_argument env sarg ty_expected' = if is_nonexpansive texp then func texp else (* let-expand to have side effects *) let let_pat, let_var = var_pair "let" texp.exp_type in - { texp with exp_type = ty_fun; exp_desc = - Texp_let (Nonrecursive, [let_pat, texp], func let_var) } + re { texp with exp_type = ty_fun; exp_desc = + Texp_let (Nonrecursive, [let_pat, texp], func let_var) } end | _ -> type_expect env sarg ty_expected @@ -1546,7 +1597,8 @@ and type_construct env loc lid sarg explicit_arity ty_expected = generalize_structure ty_res end; let texp = - { exp_desc = Texp_construct(constr, []); + re { + exp_desc = Texp_construct(constr, []); exp_loc = loc; exp_type = instance ty_res; exp_env = env } in @@ -1562,7 +1614,8 @@ and type_expect ?in_function env sexp ty_expected = match sexp.pexp_desc with Pexp_constant(Const_string s as cst) -> let exp = - { exp_desc = Texp_constant cst; + re { + exp_desc = Texp_constant cst; exp_loc = sexp.pexp_loc; exp_type = (* Terrible hack for format strings *) @@ -1579,14 +1632,16 @@ and type_expect ?in_function env sexp ty_expected = | Pexp_let(rec_flag, spat_sexp_list, sbody) -> let (pat_exp_list, new_env) = type_let env rec_flag spat_sexp_list in let body = type_expect new_env sbody ty_expected in - { exp_desc = Texp_let(rec_flag, pat_exp_list, body); + re { + exp_desc = Texp_let(rec_flag, pat_exp_list, body); exp_loc = sexp.pexp_loc; exp_type = body.exp_type; exp_env = env } | Pexp_sequence(sexp1, sexp2) -> let exp1 = type_statement env sexp1 in let exp2 = type_expect env sexp2 ty_expected in - { exp_desc = Texp_sequence(exp1, exp2); + re { + exp_desc = Texp_sequence(exp1, exp2); exp_loc = sexp.pexp_loc; exp_type = exp2.exp_type; exp_env = env } @@ -1642,7 +1697,8 @@ and type_expect ?in_function env sexp ty_expected = if is_optional l && all_labeled ty_res then Location.prerr_warning (fst (List.hd cases)).pat_loc (Warnings.Other "This optional argument cannot be erased"); - { exp_desc = Texp_function(cases, partial); + re { + exp_desc = Texp_function(cases, partial); exp_loc = sexp.pexp_loc; exp_type = newty (Tarrow(l, ty_arg, ty_res, Cok)); exp_env = env } @@ -1662,7 +1718,7 @@ and type_expect ?in_function env sexp ty_expected = Tpoly (ty', []) -> if sty <> None then set_type ty; let exp = type_expect env sbody ty' in - { exp with exp_type = ty } + re { exp with exp_type = ty } | Tpoly (ty', tl) -> if sty <> None then set_type ty; (* One more level to generalize locally *) @@ -1671,7 +1727,7 @@ and type_expect ?in_function env sexp ty_expected = let exp = type_expect env sbody ty'' in end_def (); check_univars env "method" exp ty_expected vars; - { exp with exp_type = ty } + re { exp with exp_type = ty } | _ -> assert false end | _ -> diff --git a/typing/typemod.ml b/typing/typemod.ml index 9ec72aa0b..ee04ca711 100644 --- a/typing/typemod.ml +++ b/typing/typemod.ml @@ -524,7 +524,10 @@ and simplify_signature sg = let type_implementation sourcefile prefixname modulename initial_env ast = Typecore.reset_delayed_checks (); - let (str, sg, finalenv) = type_structure initial_env ast in + let (str, sg, finalenv) = + Misc.try_finally (fun () -> type_structure initial_env ast) + (fun () -> Stypes.dump (prefixname ^ ".types")) + in Typecore.force_delayed_checks (); if !Clflags.print_types then fprintf std_formatter "%a@." Printtyp.signature (simplify_signature sg); diff --git a/utils/clflags.ml b/utils/clflags.ml index 8e46f20d0..7f0e0e42b 100644 --- a/utils/clflags.ml +++ b/utils/clflags.ml @@ -33,6 +33,7 @@ and ccopts = ref ([] : string list) (* -ccopt *) and classic = ref false (* -nolabels *) and nopervasives = ref false (* -nopervasives *) and preprocessor = ref(None : string option) (* -pp *) +let save_types = ref false (* -stypes *) and thread_safe = ref false (* -thread *) and noassert = ref false (* -noassert *) and verbose = ref false (* -verbose *) diff --git a/utils/misc.ml b/utils/misc.ml index 7b6d74385..e142ce2ad 100644 --- a/utils/misc.ml +++ b/utils/misc.ml @@ -19,6 +19,16 @@ exception Fatal_error let fatal_error msg = prerr_string ">> Fatal error: "; prerr_endline msg; raise Fatal_error +(* Exceptions *) + +let try_finally f1 f2 = + try + let result = f1 () in + f2 (); + result + with x -> f2 (); raise x +;; + (* List functions *) let rec map_end f l1 l2 = diff --git a/utils/misc.mli b/utils/misc.mli index 4374edfe0..4f92077e7 100644 --- a/utils/misc.mli +++ b/utils/misc.mli @@ -17,6 +17,8 @@ val fatal_error: string -> 'a exception Fatal_error +val try_finally : (unit -> 'a) -> (unit -> unit) -> 'a;; + val map_end: ('a -> 'b) -> 'a list -> 'b list -> 'b list (* [map_end f l t] is [map f l @ t], just more efficient. *) val map_left_right: ('a -> 'b) -> 'a list -> 'b list |