diff options
63 files changed, 3464 insertions, 2041 deletions
@@ -62,8 +62,8 @@ typing/includeclass.cmi: typing/types.cmi typing/typedtree.cmi typing/env.cmi \ typing/ctype.cmi typing/includecore.cmi: typing/types.cmi typing/typedtree.cmi \ typing/ident.cmi typing/env.cmi -typing/includemod.cmi: typing/types.cmi typing/typedtree.cmi typing/ident.cmi \ - typing/env.cmi typing/ctype.cmi +typing/includemod.cmi: typing/types.cmi typing/typedtree.cmi typing/path.cmi \ + typing/ident.cmi typing/env.cmi typing/ctype.cmi typing/mtype.cmi: typing/types.cmi typing/path.cmi typing/ident.cmi \ typing/env.cmi typing/oprint.cmi: typing/outcometree.cmi @@ -112,11 +112,11 @@ typing/datarepr.cmx: typing/types.cmx typing/predef.cmx utils/misc.cmx \ typing/env.cmo: typing/types.cmi utils/tbl.cmi typing/subst.cmi \ typing/predef.cmi typing/path.cmi utils/misc.cmi parsing/longident.cmi \ typing/ident.cmi typing/datarepr.cmi utils/consistbl.cmi utils/config.cmi \ - typing/btype.cmi parsing/asttypes.cmi typing/env.cmi + utils/clflags.cmi typing/btype.cmi parsing/asttypes.cmi typing/env.cmi typing/env.cmx: typing/types.cmx utils/tbl.cmx typing/subst.cmx \ typing/predef.cmx typing/path.cmx utils/misc.cmx parsing/longident.cmx \ typing/ident.cmx typing/datarepr.cmx utils/consistbl.cmx utils/config.cmx \ - typing/btype.cmx parsing/asttypes.cmi typing/env.cmi + utils/clflags.cmx typing/btype.cmx parsing/asttypes.cmi typing/env.cmi typing/ident.cmo: typing/ident.cmi typing/ident.cmx: typing/ident.cmi typing/includeclass.cmo: typing/types.cmi typing/printtyp.cmi \ @@ -443,8 +443,8 @@ asmcomp/asmlink.cmi: asmcomp/compilenv.cmi asmcomp/clambda.cmi: bytecomp/lambda.cmi typing/ident.cmi \ parsing/asttypes.cmi asmcomp/closure.cmi: bytecomp/lambda.cmi asmcomp/clambda.cmi -asmcomp/cmmgen.cmi: asmcomp/cmm.cmi asmcomp/clambda.cmi asmcomp/cmm.cmi: typing/ident.cmi +asmcomp/cmmgen.cmi: asmcomp/cmm.cmi asmcomp/clambda.cmi asmcomp/codegen.cmi: asmcomp/cmm.cmi asmcomp/comballoc.cmi: asmcomp/mach.cmi asmcomp/compilenv.cmi: typing/ident.cmi asmcomp/clambda.cmi @@ -458,8 +458,8 @@ asmcomp/printlinear.cmi: asmcomp/linearize.cmi asmcomp/printmach.cmi: asmcomp/reg.cmi asmcomp/mach.cmi asmcomp/proc.cmi: asmcomp/reg.cmi asmcomp/mach.cmi asmcomp/reg.cmi: asmcomp/cmm.cmi -asmcomp/reloadgen.cmi: asmcomp/reg.cmi asmcomp/mach.cmi asmcomp/reload.cmi: asmcomp/mach.cmi +asmcomp/reloadgen.cmi: asmcomp/reg.cmi asmcomp/mach.cmi asmcomp/schedgen.cmi: asmcomp/mach.cmi asmcomp/linearize.cmi asmcomp/scheduling.cmi: asmcomp/linearize.cmi asmcomp/selectgen.cmi: utils/tbl.cmi asmcomp/reg.cmi asmcomp/mach.cmi \ @@ -523,6 +523,8 @@ asmcomp/closure.cmx: utils/tbl.cmx bytecomp/switch.cmx typing/primitive.cmx \ utils/misc.cmx bytecomp/lambda.cmx typing/ident.cmx asmcomp/compilenv.cmx \ utils/clflags.cmx asmcomp/clambda.cmx parsing/asttypes.cmi \ asmcomp/closure.cmi +asmcomp/cmm.cmo: typing/ident.cmi asmcomp/arch.cmo asmcomp/cmm.cmi +asmcomp/cmm.cmx: typing/ident.cmx asmcomp/arch.cmx asmcomp/cmm.cmi asmcomp/cmmgen.cmo: typing/types.cmi bytecomp/switch.cmi asmcomp/proc.cmi \ typing/primitive.cmi utils/misc.cmi bytecomp/lambda.cmi typing/ident.cmi \ utils/config.cmi asmcomp/compilenv.cmi asmcomp/cmm.cmi utils/clflags.cmi \ @@ -533,8 +535,6 @@ asmcomp/cmmgen.cmx: typing/types.cmx bytecomp/switch.cmx asmcomp/proc.cmx \ utils/config.cmx asmcomp/compilenv.cmx asmcomp/cmm.cmx utils/clflags.cmx \ asmcomp/clambda.cmx parsing/asttypes.cmi asmcomp/arch.cmx \ asmcomp/cmmgen.cmi -asmcomp/cmm.cmo: typing/ident.cmi asmcomp/arch.cmo asmcomp/cmm.cmi -asmcomp/cmm.cmx: typing/ident.cmx asmcomp/arch.cmx asmcomp/cmm.cmi asmcomp/codegen.cmo: asmcomp/split.cmi asmcomp/spill.cmi asmcomp/reload.cmi \ asmcomp/reg.cmi asmcomp/printmach.cmi asmcomp/printlinear.cmi \ asmcomp/printcmm.cmi asmcomp/liveness.cmi asmcomp/linearize.cmi \ @@ -555,16 +555,16 @@ asmcomp/compilenv.cmo: utils/misc.cmi typing/ident.cmi typing/env.cmi \ utils/config.cmi asmcomp/clambda.cmi asmcomp/compilenv.cmi asmcomp/compilenv.cmx: utils/misc.cmx typing/ident.cmx typing/env.cmx \ utils/config.cmx asmcomp/clambda.cmx asmcomp/compilenv.cmi -asmcomp/emitaux.cmo: asmcomp/emitaux.cmi -asmcomp/emitaux.cmx: asmcomp/emitaux.cmi asmcomp/emit.cmo: asmcomp/reg.cmi asmcomp/proc.cmi utils/misc.cmi \ asmcomp/mach.cmi parsing/location.cmi asmcomp/linearize.cmi \ asmcomp/emitaux.cmi utils/config.cmi asmcomp/compilenv.cmi \ - asmcomp/cmm.cmi utils/clflags.cmi asmcomp/arch.cmo asmcomp/emit.cmi + asmcomp/cmm.cmi asmcomp/arch.cmo asmcomp/emit.cmi asmcomp/emit.cmx: asmcomp/reg.cmx asmcomp/proc.cmx utils/misc.cmx \ asmcomp/mach.cmx parsing/location.cmx asmcomp/linearize.cmx \ asmcomp/emitaux.cmx utils/config.cmx asmcomp/compilenv.cmx \ - asmcomp/cmm.cmx utils/clflags.cmx asmcomp/arch.cmx asmcomp/emit.cmi + asmcomp/cmm.cmx asmcomp/arch.cmx asmcomp/emit.cmi +asmcomp/emitaux.cmo: asmcomp/emitaux.cmi +asmcomp/emitaux.cmx: asmcomp/emitaux.cmi asmcomp/interf.cmo: asmcomp/reg.cmi asmcomp/proc.cmi utils/misc.cmi \ asmcomp/mach.cmi asmcomp/interf.cmi asmcomp/interf.cmx: asmcomp/reg.cmx asmcomp/proc.cmx utils/misc.cmx \ @@ -599,34 +599,32 @@ asmcomp/proc.cmx: asmcomp/reg.cmx utils/misc.cmx asmcomp/mach.cmx \ asmcomp/arch.cmx asmcomp/proc.cmi asmcomp/reg.cmo: asmcomp/cmm.cmi asmcomp/reg.cmi asmcomp/reg.cmx: asmcomp/cmm.cmx asmcomp/reg.cmi +asmcomp/reload.cmo: asmcomp/reloadgen.cmi asmcomp/reload.cmi +asmcomp/reload.cmx: asmcomp/reloadgen.cmx asmcomp/reload.cmi asmcomp/reloadgen.cmo: asmcomp/reg.cmi utils/misc.cmi asmcomp/mach.cmi \ asmcomp/reloadgen.cmi asmcomp/reloadgen.cmx: asmcomp/reg.cmx utils/misc.cmx asmcomp/mach.cmx \ asmcomp/reloadgen.cmi -asmcomp/reload.cmo: asmcomp/reloadgen.cmi asmcomp/reg.cmi asmcomp/mach.cmi \ - asmcomp/cmm.cmi asmcomp/arch.cmo asmcomp/reload.cmi -asmcomp/reload.cmx: asmcomp/reloadgen.cmx asmcomp/reg.cmx asmcomp/mach.cmx \ - asmcomp/cmm.cmx asmcomp/arch.cmx asmcomp/reload.cmi asmcomp/schedgen.cmo: asmcomp/reg.cmi utils/misc.cmi asmcomp/mach.cmi \ asmcomp/linearize.cmi asmcomp/cmm.cmi asmcomp/arch.cmo \ asmcomp/schedgen.cmi asmcomp/schedgen.cmx: asmcomp/reg.cmx utils/misc.cmx asmcomp/mach.cmx \ asmcomp/linearize.cmx asmcomp/cmm.cmx asmcomp/arch.cmx \ asmcomp/schedgen.cmi -asmcomp/scheduling.cmo: asmcomp/schedgen.cmi asmcomp/scheduling.cmi -asmcomp/scheduling.cmx: asmcomp/schedgen.cmx asmcomp/scheduling.cmi +asmcomp/scheduling.cmo: asmcomp/schedgen.cmi asmcomp/mach.cmi \ + asmcomp/arch.cmo asmcomp/scheduling.cmi +asmcomp/scheduling.cmx: asmcomp/schedgen.cmx asmcomp/mach.cmx \ + asmcomp/arch.cmx asmcomp/scheduling.cmi asmcomp/selectgen.cmo: utils/tbl.cmi asmcomp/reg.cmi asmcomp/proc.cmi \ utils/misc.cmi asmcomp/mach.cmi typing/ident.cmi asmcomp/cmm.cmi \ asmcomp/arch.cmo asmcomp/selectgen.cmi asmcomp/selectgen.cmx: utils/tbl.cmx asmcomp/reg.cmx asmcomp/proc.cmx \ utils/misc.cmx asmcomp/mach.cmx typing/ident.cmx asmcomp/cmm.cmx \ asmcomp/arch.cmx asmcomp/selectgen.cmi -asmcomp/selection.cmo: asmcomp/selectgen.cmi asmcomp/reg.cmi asmcomp/proc.cmi \ - utils/misc.cmi asmcomp/mach.cmi asmcomp/cmm.cmi asmcomp/arch.cmo \ - asmcomp/selection.cmi -asmcomp/selection.cmx: asmcomp/selectgen.cmx asmcomp/reg.cmx asmcomp/proc.cmx \ - utils/misc.cmx asmcomp/mach.cmx asmcomp/cmm.cmx asmcomp/arch.cmx \ - asmcomp/selection.cmi +asmcomp/selection.cmo: asmcomp/selectgen.cmi asmcomp/reg.cmi utils/misc.cmi \ + asmcomp/mach.cmi asmcomp/cmm.cmi asmcomp/arch.cmo asmcomp/selection.cmi +asmcomp/selection.cmx: asmcomp/selectgen.cmx asmcomp/reg.cmx utils/misc.cmx \ + asmcomp/mach.cmx asmcomp/cmm.cmx asmcomp/arch.cmx asmcomp/selection.cmi asmcomp/spill.cmo: asmcomp/reg.cmi asmcomp/proc.cmi utils/misc.cmi \ asmcomp/mach.cmi asmcomp/spill.cmi asmcomp/spill.cmx: asmcomp/reg.cmx asmcomp/proc.cmx utils/misc.cmx \ @@ -665,8 +663,6 @@ driver/errors.cmx: utils/warnings.cmx typing/typetexp.cmx typing/typemod.cmx \ parsing/location.cmx parsing/lexer.cmx typing/includemod.cmx \ typing/env.cmx typing/ctype.cmx bytecomp/bytepackager.cmx \ bytecomp/bytelink.cmx bytecomp/bytelibrarian.cmx driver/errors.cmi -driver/main_args.cmo: driver/main_args.cmi -driver/main_args.cmx: driver/main_args.cmi driver/main.cmo: utils/warnings.cmi utils/misc.cmi driver/main_args.cmi \ driver/errors.cmi utils/config.cmi driver/compile.cmi utils/clflags.cmi \ bytecomp/bytepackager.cmi bytecomp/bytelink.cmi \ @@ -675,6 +671,8 @@ driver/main.cmx: utils/warnings.cmx utils/misc.cmx driver/main_args.cmx \ driver/errors.cmx utils/config.cmx driver/compile.cmx utils/clflags.cmx \ bytecomp/bytepackager.cmx bytecomp/bytelink.cmx \ bytecomp/bytelibrarian.cmx driver/main.cmi +driver/main_args.cmo: driver/main_args.cmi +driver/main_args.cmx: driver/main_args.cmi driver/optcompile.cmo: utils/warnings.cmi typing/unused_var.cmi \ typing/typemod.cmi typing/typedtree.cmi bytecomp/translmod.cmi \ bytecomp/simplif.cmi typing/printtyp.cmi bytecomp/printlambda.cmi \ @@ -7,6 +7,43 @@ Language features: definition replaces the old one, rather than creating a new variable. + +Objective Caml 3.09.3: +---------------------- + +Bug fixes: +- ocamldoc: -using modtype constraint to filter module elements displayed + in doc PR#4016 +- ocamldoc: error in merging of top dependencies of modules PR#4007 +- ocamldoc: -dot-colors has no effect PR#3981 +- ocamdloc: missing crossref in text from intro files PR#4066 +- compilers: segfault with recursive modules PR#4008 +- compilers: infinite loop when compiling objects PR#4018 +- compilers: bad error message when signature mismatch PR#4001 +- compilers: infinite loop with -rectypes PR#3999 +- compilers: contravariance bug in private rows +- compilers: unsafe cast with polymorphic exception PR#4002 +- native compiler: bad assembly code generated for AMD64 PR#4067 +- native compiler: stack alignment problems on MacOSX/i386 PR#4036 +- stdlib: crash in marshalling PR#4030 +- stdlib: crash when closing a channel twice PR#4039 +- stdlib: memory leak in Sys.readdir PR#4093 +- C interface: better definition of CAMLreturn PR#4068 +- otherlibs/unix: crash in gethostbyname PR#3043 +- tools: subtle problem with unset in makefile PR#4048 +- camlp4: install pa_o_fast.o PR#3812 +- camlp4: install more modules PR#3689 + +New features: +- ocamldoc: name resolution in cross-referencing {!name}: if name is not + found, then it is searched in the parent module/class, and in the parent + of the parent, and so on until it is found. +- ocamldoc: new option -short-functors to use a short form to display + functors in html generator PR#4017 +- ocamlprof: added "-version" option + + + Objective Caml 3.09.2: ---------------------- @@ -31,7 +68,7 @@ Bug fixes: - stdlib: Filename.dirname/basename wrong on Win32 PR#3933 - stdlib: incomplete documentation of Pervasives.abs PR#3967 - stdlib: Printf bugs PR#3902, PR#3955 -- tools/checkstack.c missing include +- tools/checkstack.c: missing include - yacc: crash when given argument "-" PR#3956 New features: @@ -22,10 +22,10 @@ native-code compiler currently runs on the following platforms: Tier 1 (actively used and maintained by the core Caml team): AMD64 (Opteron) Linux - IA32 (Pentium) Linux, FreeBSD, MS Windows + IA32 (Pentium) Linux, FreeBSD, MacOS X, MS Windows PowerPC MacOS X -Tier 2 (maintained but less actively, with help from users): +Tier 2 (maintained when possible, with help from users): Alpha Digital Unix/Compaq Tru64, Linux, all BSD AMD64 FreeBSD, OpenBSD @@ -78,9 +78,9 @@ CONTENTS: COPYRIGHT: All files marked "Copyright INRIA" in this distribution are copyright -1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004 Institut National de -Recherche en Informatique et en Automatique (INRIA) and distributed -under the conditions stated in file LICENSE. +1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006 +Institut National de Recherche en Informatique et en Automatique +(INRIA) and distributed under the conditions stated in file LICENSE. INSTALLATION: @@ -112,11 +112,9 @@ Messages to the list should be sent to: caml-list@inria.fr -If you wish to subscribe to this list, please send a message to: +You can subscribe to this list via the Web interface at - caml-list-request@inria.fr - -with the single word "subscribe" in the body of the message. + http://yquem.inria.fr/cgi-bin/mailman/listinfo/caml-list Archives of the list are available on the Web site http://caml.inria.fr/ @@ -126,11 +124,7 @@ including Caml. BUG REPORTS AND USER FEEDBACK: -Send your bug reports by E-mail to: - - caml-bugs@inria.fr - -or report them using the Web interface to the bug-tracking system +Please report bugs using the Web interface to the bug-tracking system at http://caml.inria.fr/bin/caml-bugs To be effective, bug reports should include a complete program @@ -139,3 +133,6 @@ configuration you are using (machine type, etc). You can also contact the implementors directly at caml@inria.fr. + +---- +$Id$ diff --git a/README.win32 b/README.win32 index 7263035e9..cd13bdef1 100644 --- a/README.win32 +++ b/README.win32 @@ -43,24 +43,20 @@ The remainder of this document gives more information on each port. REQUIREMENTS: This port runs under MS Windows NT, 2000 and XP. -Windows 95, 98 and ME are also supported, but less reliably. +Windows 95, 98 and ME are no longer supported. The base bytecode system (ocamlc, ocaml, ocamllex, ocamlyacc, ...) runs without any additional tools. Statically linking Caml bytecode with C code (ocamlc -custom) requires the -Microsoft Visual C++ compiler. Dynamic loading of DLLs is -supported out of the box, without additional software. +Microsoft Visual C++ compiler (items [1] and [2] in the section +"third-party software" below). Dynamic loading of DLLs is supported +out of the box, without additional software. -The native-code compiler (ocamlopt) requires Visual C++ and the -Microsoft assembler MASM version 6.11 or later. MASM can be -downloaded for free from Microsoft's Web site; for directions, see - http://www.easystreet.com/~jkirwan/pctools.html - or http://www2.dgsys.com/~raymoon/faq/masm.html - or the comp.lang.asm.x86 FAQ. +The native-code compiler (ocamlopt) requires Visual C++ (items [1], [2]) +and the Microsoft assembler MASM (item [3]). -The LablTk GUI requires Tcl/Tk 8.3. Windows binaries are -available from http://prdownloads.sourceforge.net/tcl/tcl832.exe. +The LablTk GUI requires Tcl/Tk 8.3 (item [4]). INSTALLATION: @@ -68,20 +64,6 @@ INSTALLATION: The binary distribution is a self-installing executable archive. Just run it and it should install OCaml automatically. -If you are using Windows 95, 98 or ME, you need to adjust environment -variables as follows: - - add the "bin" subdirectory of the OCaml installation directory - to the PATH variable; - - set the OCAMLLIB variable to the "lib" subdirectory of the - OCaml installation directory. -For instance, if you installed OCaml in C:\Program Files\Objective Caml, -add the following two lines at the end of C:\autoexec.bat: - - set PATH=%PATH%;"C:\Program Files\Objective Caml\bin" - set OCAMLLIB=C:\Program Files\Objective Caml\lib - -No such tweaking of environment variables is needed under NT, 2000 and XP. - To run programs that use the LablTK GUI, the directory where the DLLs tk83.dll and tcl83.dll were installed (by the Tcl/Tk installer) must be added to the PATH environment variable. @@ -93,6 +75,26 @@ environment variable. E.g. if Tcl/Tk was installed in C:\tcl, add "C:\tcl\lib" to the LIB environment variable. +THIRD-PARTY SOFTWARE: + +[1] Visual C++ version 6 or later. We use Visual C++ 2003. + The free download Visual C++ 2005 Express Edition works under + Windows 2000, but not under Windows XP because of the "manifest" + annotations on DLLs, which are not yet supported by OCaml. + So, please stick with the 2003 edition for the time being. + +[2] Windows header files and development libraries. We found them in + the Microsoft Windows Server 2003 SP1 Platform SDK, which can + be downloaded for free from http://www.microsoft.com/. + +[3] MASM version 6.11 or later. MASM can be + downloaded for free from Microsoft's Web site; for directions, see + http://users.easystreet.com/jkirwan/new/pctools.html. + +[4] TCL/TK version 8.3. Windows binaries are available from + http://prdownloads.sourceforge.net/tcl/tcl832.exe. + + RECOMPILATION FROM THE SOURCES: The command-line tools can be recompiled from the Unix source @@ -100,11 +102,9 @@ distribution (ocaml-X.YZ.tar.gz), which also contains the files modified for Windows. You will need the following software components to perform the recompilation: -- Windows NT, 2000, or XP (we advise against compiling under Windows 95/98/ME) -- Visual C++ version 6 or 7 -- MASM version 6.11 (see above) -- The Cygwin port of GNU tools, available from http://cygwin.com/ -- TCL/TK version 8.3 (for the LablTK GUI) (see above). +- Windows NT, 2000, or XP. +- Items [1], [2], [3] and [4] from the list of recommended software above. +- The Cygwin port of GNU tools, available from http://www.cygwin.com/ Remember to add the directory where the libraries tk83.lib and tcl83.lib were installed (by the Tcl/Tk installer) to the LIB variable @@ -127,6 +127,7 @@ Finally, use "make -f Makefile.nt" to build the system, e.g. make -f Makefile.nt world make -f Makefile.nt bootstrap make -f Makefile.nt opt + make -f Makefile.nt opt.opt make -f Makefile.nt install @@ -167,8 +168,9 @@ runs without any additional tools. The native-code compiler (ocamlopt), as well as static linking of Caml bytecode with C code (ocamlc -custom), require the Cygwin development tools, available at - http://sources.redhat.com/cygwin/ -You will need to install at least the following Cygwin packages: + http://www.cygwin.com/ +You will need to install at least the following Cygwin packages (use +the Setup tool from Cygwin): binutils, gcc-core, gcc-mingw-core, mingw-runtime, w32-api. Do *not* install the Mingw/MSYS development tools from www.mingw.org: @@ -184,20 +186,6 @@ INSTALLATION: The binary distribution is a self-installing executable archive. Just run it and it should install OCaml automatically. -If you are using Windows 95, 98 or ME, you need to adjust environment -variables as follows: - - add the "bin" subdirectory of the OCaml installation directory - to the PATH variable; - - set the OCAMLLIB variable to the "lib" subdirectory of the - OCaml installation directory. -For instance, if you installed OCaml in C:\Program Files\Objective Caml, -add the following two lines at the end of C:\autoexec.bat: - - set PATH=%PATH%;"C:\Program Files\Objective Caml\bin" - set OCAMLLIB=C:\Program Files\Objective Caml\lib - -No such tweaking of environment variables is needed under NT, 2000 and XP. - To run programs that use the LablTK GUI, the directory where the DLLs tk83.dll and tcl83.dll were installed (by the Tcl/Tk installer) must be added to the PATH environment variable. @@ -212,7 +200,7 @@ environment variable. E.g. if Tcl/Tk was installed in C:\tcl, add RECOMPILATION FROM THE SOURCES: You will need the following software components to perform the recompilation: -- Windows NT, 2000, or XP (we advise against compiling under Windows 95/98/ME) +- Windows NT, 2000, or XP. - Cygwin: http://sourceware.cygnus.com/cygwin/ - TCL/TK version 8.3 (see above). @@ -258,15 +246,16 @@ REQUIREMENTS: This port requires the Cygwin environment from Cygnus/RedHat, which is freely available at: - http://sources.redhat.com/cygwin/ + http://www.cygwin.com/ This port runs under all versions of MS Windows supported by Cygwin. INSTALLATION: -For technical reasons, no binary distribution of this port is available. -You need to recompile from the source distribution. +We do not distribute binaries for this port, but they can be found +in the Cygwin distribution (use the Setup tool from Cygwin and select +the OCaml packages). Alternatively, recompile from the source distribution. RECOMPILATION FROM THE SOURCES: diff --git a/asmcomp/amd64/reload.ml b/asmcomp/amd64/reload.ml index 390165df5..99413edcc 100644 --- a/asmcomp/amd64/reload.ml +++ b/asmcomp/amd64/reload.ml @@ -19,7 +19,7 @@ open Mach (* Reloading for the AMD64 *) -(* Summary of instruction set constraints: +(* Summary of instruction set constraints: "S" means either stack or register, "R" means register only. Operation Res Arg1 Arg2 Imove R S @@ -73,12 +73,6 @@ method reload_operation op arg res = (* This add will be turned into a lea; args and results must be in registers *) super#reload_operation op arg res - | Iconst_symbol _ -> - if !pic_code - then super#reload_operation op arg res - else (arg, res) - | Iconst_int n when n >= -0x80000000n && n <= 0x7FFFFFFFn -> - (arg, res) | Iintop(Idiv | Imod | Ilsl | Ilsr | Iasr) | Iintop_imm(_, _) -> (* The argument(s) and results can be either in register or on stack *) @@ -94,6 +88,14 @@ method reload_operation op arg res = | Ifloatofint | Iintoffloat -> (* Result must be in register, but argument can be on stack *) (arg, (if stackp res.(0) then [| self#makereg res.(0) |] else res)) + | Iconst_int n -> + if n <= 0x7FFFFFFFn && n >= -0x80000000n + then (arg, res) + else super#reload_operation op arg res + | Iconst_symbol _ -> + if !pic_code + then super#reload_operation op arg res + else (arg, res) | _ -> (* Other operations: all args and results in registers *) super#reload_operation op arg res diff --git a/asmcomp/i386/proc.ml b/asmcomp/i386/proc.ml index 5d765c34c..a66667e3e 100644 --- a/asmcomp/i386/proc.ml +++ b/asmcomp/i386/proc.ml @@ -124,7 +124,7 @@ let calling_conventions first_int last_int first_float last_float make_stack ofs := !ofs + size_float end done; - (loc, max 0 !ofs) + (loc, Misc.align stack_alignment (max 0 !ofs)) let incoming ofs = Incoming ofs let outgoing ofs = Outgoing ofs diff --git a/asmrun/.depend b/asmrun/.depend index 639bb7b7a..ff6da822d 100644 --- a/asmrun/.depend +++ b/asmrun/.depend @@ -1,507 +1,1050 @@ 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 + ../byterun/../config/m.h ../byterun/../config/s.h ../byterun/mlvalues.h \ + ../byterun/config.h ../byterun/misc.h ../byterun/custom.h \ + ../byterun/mlvalues.h ../byterun/major_gc.h ../byterun/freelist.h \ + ../byterun/misc.h ../byterun/mlvalues.h ../byterun/misc.h \ + ../byterun/memory.h ../byterun/config.h ../byterun/gc.h \ + ../byterun/mlvalues.h ../byterun/major_gc.h ../byterun/minor_gc.h \ + ../byterun/misc.h ../byterun/misc.h ../byterun/mlvalues.h \ + ../byterun/stacks.h ../byterun/misc.h ../byterun/mlvalues.h \ + ../byterun/memory.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 + ../byterun/../config/m.h ../byterun/../config/s.h ../byterun/mlvalues.h \ + ../byterun/config.h ../byterun/misc.h ../byterun/fail.h \ + ../byterun/misc.h ../byterun/mlvalues.h ../byterun/memory.h \ + ../byterun/config.h ../byterun/gc.h ../byterun/mlvalues.h \ + ../byterun/major_gc.h ../byterun/freelist.h ../byterun/misc.h \ + ../byterun/mlvalues.h ../byterun/misc.h ../byterun/minor_gc.h \ + ../byterun/misc.h ../byterun/misc.h ../byterun/mlvalues.h callback.o: callback.c ../byterun/callback.h ../byterun/mlvalues.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 + ../byterun/config.h ../byterun/../config/m.h ../byterun/../config/s.h \ + ../byterun/misc.h ../byterun/config.h ../byterun/fail.h \ + ../byterun/misc.h ../byterun/mlvalues.h ../byterun/memory.h \ + ../byterun/config.h ../byterun/gc.h ../byterun/mlvalues.h \ + ../byterun/major_gc.h ../byterun/freelist.h ../byterun/misc.h \ + ../byterun/mlvalues.h ../byterun/misc.h ../byterun/minor_gc.h \ + ../byterun/misc.h ../byterun/misc.h ../byterun/mlvalues.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/config.h ../byterun/memory.h \ + ../byterun/config.h ../byterun/gc.h ../byterun/mlvalues.h \ + ../byterun/config.h ../byterun/misc.h ../byterun/major_gc.h \ + ../byterun/freelist.h ../byterun/misc.h ../byterun/mlvalues.h \ + ../byterun/misc.h ../byterun/minor_gc.h ../byterun/misc.h \ + ../byterun/misc.h ../byterun/mlvalues.h ../byterun/gc_ctrl.h \ + ../byterun/misc.h ../byterun/weak.h ../byterun/mlvalues.h compare.o: compare.c ../byterun/custom.h ../byterun/mlvalues.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 + ../byterun/config.h ../byterun/../config/m.h ../byterun/../config/s.h \ + ../byterun/misc.h ../byterun/config.h ../byterun/fail.h \ + ../byterun/misc.h ../byterun/mlvalues.h ../byterun/memory.h \ + ../byterun/config.h ../byterun/gc.h ../byterun/mlvalues.h \ + ../byterun/major_gc.h ../byterun/freelist.h ../byterun/misc.h \ + ../byterun/mlvalues.h ../byterun/misc.h ../byterun/minor_gc.h \ + ../byterun/misc.h ../byterun/misc.h ../byterun/mlvalues.h custom.o: custom.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/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 + ../byterun/config.h ../byterun/../config/m.h ../byterun/../config/s.h \ + ../byterun/mlvalues.h ../byterun/config.h ../byterun/misc.h \ + ../byterun/custom.h ../byterun/mlvalues.h ../byterun/fail.h \ + ../byterun/misc.h ../byterun/mlvalues.h ../byterun/memory.h \ + ../byterun/config.h ../byterun/gc.h ../byterun/mlvalues.h \ + ../byterun/major_gc.h ../byterun/freelist.h ../byterun/misc.h \ + ../byterun/mlvalues.h ../byterun/misc.h ../byterun/minor_gc.h \ + ../byterun/misc.h ../byterun/misc.h ../byterun/mlvalues.h +dynlink.o: dynlink.c ../byterun/config.h ../byterun/../config/m.h \ + ../byterun/../config/s.h ../byterun/alloc.h ../byterun/misc.h \ + ../byterun/config.h ../byterun/mlvalues.h ../byterun/config.h \ + ../byterun/misc.h ../byterun/dynlink.h ../byterun/misc.h \ + ../byterun/fail.h ../byterun/misc.h ../byterun/mlvalues.h \ + ../byterun/memory.h ../byterun/config.h ../byterun/gc.h \ + ../byterun/mlvalues.h ../byterun/major_gc.h ../byterun/freelist.h \ + ../byterun/misc.h ../byterun/mlvalues.h ../byterun/misc.h \ + ../byterun/minor_gc.h ../byterun/misc.h ../byterun/misc.h \ + ../byterun/mlvalues.h ../byterun/osdeps.h ../byterun/misc.h \ + ../byterun/prims.h extern.o: extern.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/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/config.h ../byterun/../config/m.h ../byterun/../config/s.h \ + ../byterun/mlvalues.h ../byterun/config.h ../byterun/misc.h \ + ../byterun/custom.h ../byterun/mlvalues.h ../byterun/fail.h \ + ../byterun/misc.h ../byterun/mlvalues.h ../byterun/gc.h \ + ../byterun/mlvalues.h ../byterun/intext.h ../byterun/misc.h \ + ../byterun/mlvalues.h ../byterun/io.h ../byterun/misc.h \ + ../byterun/mlvalues.h ../byterun/memory.h ../byterun/config.h \ + ../byterun/gc.h ../byterun/major_gc.h ../byterun/freelist.h \ + ../byterun/misc.h ../byterun/mlvalues.h ../byterun/misc.h \ + ../byterun/minor_gc.h ../byterun/misc.h ../byterun/misc.h \ + ../byterun/mlvalues.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 ../config/m.h ../config/s.h ../byterun/misc.h \ - ../byterun/fail.h ../byterun/roots.h ../byterun/memory.h \ + ../byterun/../config/m.h ../byterun/../config/s.h ../byterun/mlvalues.h \ + ../byterun/config.h ../byterun/misc.h ../byterun/fail.h \ + ../byterun/misc.h ../byterun/mlvalues.h ../byterun/io.h \ + ../byterun/misc.h ../byterun/mlvalues.h ../byterun/gc.h \ + ../byterun/mlvalues.h ../byterun/memory.h ../byterun/config.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 ../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/misc.h ../byterun/mlvalues.h ../byterun/misc.h \ + ../byterun/minor_gc.h ../byterun/misc.h ../byterun/misc.h \ + ../byterun/mlvalues.h ../byterun/printexc.h ../byterun/misc.h \ + ../byterun/mlvalues.h ../byterun/signals.h ../byterun/misc.h \ + ../byterun/mlvalues.h stack.h ../byterun/roots.h ../byterun/misc.h \ + ../byterun/memory.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/config.h ../byterun/fail.h \ + ../byterun/misc.h ../byterun/mlvalues.h ../byterun/roots.h \ + ../byterun/misc.h ../byterun/memory.h ../byterun/config.h \ + ../byterun/gc.h ../byterun/mlvalues.h ../byterun/major_gc.h \ ../byterun/freelist.h ../byterun/misc.h ../byterun/mlvalues.h \ - ../byterun/gc.h ../byterun/gc_ctrl.h ../byterun/major_gc.h + ../byterun/misc.h ../byterun/minor_gc.h ../byterun/misc.h \ + ../byterun/misc.h ../byterun/mlvalues.h ../byterun/signals.h \ + ../byterun/misc.h ../byterun/mlvalues.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/config.h ../byterun/misc.h \ + ../byterun/fail.h ../byterun/misc.h ../byterun/mlvalues.h \ + ../byterun/memory.h ../byterun/config.h ../byterun/gc.h \ + ../byterun/mlvalues.h ../byterun/major_gc.h ../byterun/freelist.h \ + ../byterun/misc.h ../byterun/mlvalues.h ../byterun/misc.h \ + ../byterun/minor_gc.h ../byterun/misc.h ../byterun/misc.h \ + ../byterun/mlvalues.h ../byterun/reverse.h ../byterun/stacks.h \ + ../byterun/misc.h ../byterun/mlvalues.h ../byterun/memory.h +freelist.o: freelist.c ../byterun/config.h ../byterun/../config/m.h \ + ../byterun/../config/s.h ../byterun/freelist.h ../byterun/misc.h \ + ../byterun/config.h ../byterun/mlvalues.h ../byterun/config.h \ + ../byterun/misc.h ../byterun/gc.h ../byterun/mlvalues.h \ + ../byterun/gc_ctrl.h ../byterun/misc.h ../byterun/major_gc.h \ + ../byterun/freelist.h ../byterun/misc.h gc_ctrl.o: gc_ctrl.c ../byterun/alloc.h ../byterun/misc.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 + ../byterun/config.h ../byterun/../config/m.h ../byterun/../config/s.h \ + ../byterun/mlvalues.h ../byterun/config.h ../byterun/misc.h \ + ../byterun/compact.h ../byterun/config.h ../byterun/misc.h \ + ../byterun/custom.h ../byterun/mlvalues.h ../byterun/finalise.h \ + ../byterun/roots.h ../byterun/misc.h ../byterun/memory.h \ + ../byterun/config.h ../byterun/gc.h ../byterun/mlvalues.h \ + ../byterun/major_gc.h ../byterun/freelist.h ../byterun/misc.h \ + ../byterun/mlvalues.h ../byterun/misc.h ../byterun/minor_gc.h \ + ../byterun/misc.h ../byterun/misc.h ../byterun/mlvalues.h \ + ../byterun/gc_ctrl.h ../byterun/misc.h ../byterun/stacks.h \ + ../byterun/misc.h ../byterun/mlvalues.h ../byterun/memory.h globroots.o: globroots.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 ../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 + ../byterun/../config/m.h ../byterun/../config/s.h ../byterun/gc.h \ + ../byterun/mlvalues.h ../byterun/config.h ../byterun/misc.h \ + ../byterun/config.h ../byterun/major_gc.h ../byterun/freelist.h \ + ../byterun/misc.h ../byterun/mlvalues.h ../byterun/misc.h \ + ../byterun/minor_gc.h ../byterun/misc.h ../byterun/misc.h \ + ../byterun/mlvalues.h ../byterun/globroots.h ../byterun/mlvalues.h +hash.o: hash.c ../byterun/mlvalues.h ../byterun/config.h \ + ../byterun/../config/m.h ../byterun/../config/s.h ../byterun/misc.h \ + ../byterun/config.h ../byterun/custom.h ../byterun/mlvalues.h \ + ../byterun/memory.h ../byterun/config.h ../byterun/gc.h \ + ../byterun/mlvalues.h ../byterun/major_gc.h ../byterun/freelist.h \ + ../byterun/misc.h ../byterun/mlvalues.h ../byterun/misc.h \ + ../byterun/minor_gc.h ../byterun/misc.h ../byterun/misc.h \ + ../byterun/mlvalues.h intern.o: intern.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/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 + ../byterun/config.h ../byterun/../config/m.h ../byterun/../config/s.h \ + ../byterun/mlvalues.h ../byterun/config.h ../byterun/misc.h \ + ../byterun/custom.h ../byterun/mlvalues.h ../byterun/fail.h \ + ../byterun/misc.h ../byterun/mlvalues.h ../byterun/gc.h \ + ../byterun/mlvalues.h ../byterun/intext.h ../byterun/misc.h \ + ../byterun/mlvalues.h ../byterun/io.h ../byterun/misc.h \ + ../byterun/mlvalues.h ../byterun/memory.h ../byterun/config.h \ + ../byterun/gc.h ../byterun/major_gc.h ../byterun/freelist.h \ + ../byterun/misc.h ../byterun/mlvalues.h ../byterun/misc.h \ + ../byterun/minor_gc.h ../byterun/misc.h ../byterun/misc.h \ + ../byterun/mlvalues.h ../byterun/reverse.h ../byterun/md5.h \ + ../byterun/mlvalues.h ../byterun/io.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 + ../byterun/../config/m.h ../byterun/../config/s.h ../byterun/mlvalues.h \ + ../byterun/config.h ../byterun/misc.h ../byterun/custom.h \ + ../byterun/mlvalues.h ../byterun/fail.h ../byterun/misc.h \ + ../byterun/mlvalues.h ../byterun/intext.h ../byterun/misc.h \ + ../byterun/mlvalues.h ../byterun/io.h ../byterun/misc.h \ + ../byterun/mlvalues.h ../byterun/memory.h ../byterun/config.h \ + ../byterun/gc.h ../byterun/mlvalues.h ../byterun/major_gc.h \ + ../byterun/freelist.h ../byterun/misc.h ../byterun/mlvalues.h \ + ../byterun/misc.h ../byterun/minor_gc.h ../byterun/misc.h \ + ../byterun/misc.h ../byterun/mlvalues.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/config.h ../byterun/mlvalues.h ../byterun/config.h \ + ../byterun/misc.h ../byterun/custom.h ../byterun/mlvalues.h \ + ../byterun/fail.h ../byterun/misc.h ../byterun/mlvalues.h \ + ../byterun/io.h ../byterun/misc.h ../byterun/mlvalues.h \ + ../byterun/memory.h ../byterun/config.h ../byterun/gc.h \ + ../byterun/mlvalues.h ../byterun/major_gc.h ../byterun/freelist.h \ + ../byterun/misc.h ../byterun/mlvalues.h ../byterun/misc.h \ + ../byterun/minor_gc.h ../byterun/misc.h ../byterun/misc.h \ + ../byterun/mlvalues.h ../byterun/signals.h ../byterun/misc.h \ + ../byterun/mlvalues.h ../byterun/sys.h ../byterun/misc.h lexing.o: lexing.c ../byterun/fail.h ../byterun/misc.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 + ../byterun/config.h ../byterun/../config/m.h ../byterun/../config/s.h \ + ../byterun/mlvalues.h ../byterun/config.h ../byterun/misc.h \ + ../byterun/stacks.h ../byterun/misc.h ../byterun/mlvalues.h \ + ../byterun/memory.h ../byterun/config.h ../byterun/gc.h \ + ../byterun/mlvalues.h ../byterun/major_gc.h ../byterun/freelist.h \ + ../byterun/misc.h ../byterun/mlvalues.h ../byterun/misc.h \ + ../byterun/minor_gc.h ../byterun/misc.h ../byterun/misc.h \ + ../byterun/mlvalues.h +main.o: main.c ../byterun/misc.h ../byterun/config.h \ + ../byterun/../config/m.h ../byterun/../config/s.h ../byterun/mlvalues.h \ + ../byterun/config.h ../byterun/misc.h ../byterun/sys.h \ + ../byterun/misc.h major_gc.o: major_gc.c ../byterun/compact.h ../byterun/config.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 + ../byterun/../config/m.h ../byterun/../config/s.h ../byterun/misc.h \ + ../byterun/config.h ../byterun/custom.h ../byterun/mlvalues.h \ + ../byterun/config.h ../byterun/misc.h ../byterun/fail.h \ + ../byterun/misc.h ../byterun/mlvalues.h ../byterun/finalise.h \ + ../byterun/roots.h ../byterun/misc.h ../byterun/memory.h \ + ../byterun/config.h ../byterun/gc.h ../byterun/mlvalues.h \ + ../byterun/major_gc.h ../byterun/freelist.h ../byterun/misc.h \ + ../byterun/mlvalues.h ../byterun/misc.h ../byterun/minor_gc.h \ + ../byterun/misc.h ../byterun/misc.h ../byterun/mlvalues.h \ + ../byterun/gc_ctrl.h ../byterun/misc.h ../byterun/weak.h \ + ../byterun/mlvalues.h md5.o: md5.c ../byterun/alloc.h ../byterun/misc.h ../byterun/config.h \ - ../config/m.h ../config/s.h ../byterun/mlvalues.h ../byterun/fail.h \ - ../byterun/md5.h ../byterun/io.h ../byterun/reverse.h + ../byterun/../config/m.h ../byterun/../config/s.h ../byterun/mlvalues.h \ + ../byterun/config.h ../byterun/misc.h ../byterun/fail.h \ + ../byterun/misc.h ../byterun/mlvalues.h ../byterun/md5.h \ + ../byterun/mlvalues.h ../byterun/io.h ../byterun/misc.h \ + ../byterun/mlvalues.h ../byterun/memory.h ../byterun/config.h \ + ../byterun/gc.h ../byterun/mlvalues.h ../byterun/major_gc.h \ + ../byterun/freelist.h ../byterun/misc.h ../byterun/mlvalues.h \ + ../byterun/misc.h ../byterun/minor_gc.h ../byterun/misc.h \ + ../byterun/misc.h ../byterun/mlvalues.h ../byterun/reverse.h memory.o: memory.c ../byterun/fail.h ../byterun/misc.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 + ../byterun/config.h ../byterun/../config/m.h ../byterun/../config/s.h \ + ../byterun/mlvalues.h ../byterun/config.h ../byterun/misc.h \ + ../byterun/freelist.h ../byterun/misc.h ../byterun/mlvalues.h \ + ../byterun/gc.h ../byterun/mlvalues.h ../byterun/gc_ctrl.h \ + ../byterun/misc.h ../byterun/major_gc.h ../byterun/freelist.h \ + ../byterun/misc.h ../byterun/memory.h ../byterun/config.h \ + ../byterun/gc.h ../byterun/major_gc.h ../byterun/minor_gc.h \ + ../byterun/misc.h ../byterun/misc.h ../byterun/mlvalues.h \ + ../byterun/signals.h ../byterun/misc.h ../byterun/mlvalues.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/intext.h \ - ../byterun/io.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 \ - ../config/m.h ../config/s.h ../byterun/mlvalues.h ../byterun/fail.h \ - ../byterun/gc.h ../byterun/interp.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/../config/m.h ../byterun/../config/s.h ../byterun/mlvalues.h \ + ../byterun/config.h ../byterun/misc.h ../byterun/fail.h \ + ../byterun/misc.h ../byterun/mlvalues.h ../byterun/fix_code.h \ + ../byterun/config.h ../byterun/misc.h ../byterun/mlvalues.h \ + ../byterun/interp.h ../byterun/misc.h ../byterun/mlvalues.h \ + ../byterun/intext.h ../byterun/misc.h ../byterun/mlvalues.h \ + ../byterun/io.h ../byterun/misc.h ../byterun/mlvalues.h \ + ../byterun/major_gc.h ../byterun/freelist.h ../byterun/misc.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 + ../byterun/config.h ../byterun/gc.h ../byterun/mlvalues.h \ + ../byterun/major_gc.h ../byterun/minor_gc.h ../byterun/misc.h \ + ../byterun/misc.h ../byterun/mlvalues.h ../byterun/prims.h \ + ../byterun/stacks.h ../byterun/misc.h ../byterun/mlvalues.h \ + ../byterun/memory.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/config.h ../byterun/mlvalues.h ../byterun/config.h \ + ../byterun/misc.h ../byterun/finalise.h ../byterun/roots.h \ + ../byterun/misc.h ../byterun/memory.h ../byterun/config.h \ + ../byterun/gc.h ../byterun/mlvalues.h ../byterun/major_gc.h \ + ../byterun/freelist.h ../byterun/misc.h ../byterun/mlvalues.h \ + ../byterun/misc.h ../byterun/minor_gc.h ../byterun/misc.h \ + ../byterun/misc.h ../byterun/mlvalues.h ../byterun/gc_ctrl.h \ + ../byterun/misc.h ../byterun/signals.h ../byterun/misc.h \ + ../byterun/mlvalues.h +misc.o: misc.c ../byterun/config.h ../byterun/../config/m.h \ + ../byterun/../config/s.h ../byterun/misc.h ../byterun/config.h \ + ../byterun/memory.h ../byterun/config.h ../byterun/gc.h \ + ../byterun/mlvalues.h ../byterun/config.h ../byterun/misc.h \ + ../byterun/major_gc.h ../byterun/freelist.h ../byterun/misc.h \ + ../byterun/mlvalues.h ../byterun/misc.h ../byterun/minor_gc.h \ + ../byterun/misc.h ../byterun/misc.h ../byterun/mlvalues.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/config.h ../byterun/misc.h ../byterun/fail.h \ + ../byterun/misc.h ../byterun/mlvalues.h ../byterun/gc.h \ + ../byterun/mlvalues.h ../byterun/interp.h ../byterun/misc.h \ + ../byterun/mlvalues.h ../byterun/major_gc.h ../byterun/freelist.h \ + ../byterun/misc.h ../byterun/mlvalues.h ../byterun/misc.h \ + ../byterun/memory.h ../byterun/config.h ../byterun/gc.h \ + ../byterun/major_gc.h ../byterun/minor_gc.h ../byterun/misc.h \ + ../byterun/misc.h ../byterun/mlvalues.h ../byterun/prims.h +parsing.o: parsing.c ../byterun/config.h ../byterun/../config/m.h \ + ../byterun/../config/s.h ../byterun/mlvalues.h ../byterun/config.h \ + ../byterun/misc.h ../byterun/config.h ../byterun/memory.h \ + ../byterun/config.h ../byterun/gc.h ../byterun/mlvalues.h \ + ../byterun/major_gc.h ../byterun/freelist.h ../byterun/misc.h \ + ../byterun/mlvalues.h ../byterun/misc.h ../byterun/minor_gc.h \ + ../byterun/misc.h ../byterun/misc.h ../byterun/mlvalues.h \ + ../byterun/alloc.h ../byterun/misc.h ../byterun/mlvalues.h printexc.o: printexc.c ../byterun/backtrace.h ../byterun/mlvalues.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 + ../byterun/config.h ../byterun/../config/m.h ../byterun/../config/s.h \ + ../byterun/misc.h ../byterun/config.h ../byterun/callback.h \ + ../byterun/mlvalues.h ../byterun/debugger.h ../byterun/misc.h \ + ../byterun/mlvalues.h ../byterun/fail.h ../byterun/misc.h \ + ../byterun/mlvalues.h ../byterun/printexc.h ../byterun/misc.h \ + ../byterun/mlvalues.h roots.o: roots.c ../byterun/finalise.h ../byterun/roots.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 + ../byterun/misc.h ../byterun/config.h ../byterun/../config/m.h \ + ../byterun/../config/s.h ../byterun/memory.h ../byterun/config.h \ + ../byterun/gc.h ../byterun/mlvalues.h ../byterun/config.h \ + ../byterun/misc.h ../byterun/major_gc.h ../byterun/freelist.h \ + ../byterun/misc.h ../byterun/mlvalues.h ../byterun/misc.h \ + ../byterun/minor_gc.h ../byterun/misc.h ../byterun/misc.h \ + ../byterun/mlvalues.h ../byterun/globroots.h ../byterun/mlvalues.h \ + stack.h signals.o: signals.c ../byterun/alloc.h ../byterun/misc.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/osdeps.h ../byterun/signals.h \ - ../byterun/signals_machdep.h signals_osdep.h stack.h ../byterun/sys.h + ../byterun/config.h ../byterun/../config/m.h ../byterun/../config/s.h \ + ../byterun/mlvalues.h ../byterun/config.h ../byterun/misc.h \ + ../byterun/callback.h ../byterun/mlvalues.h ../byterun/memory.h \ + ../byterun/config.h ../byterun/gc.h ../byterun/mlvalues.h \ + ../byterun/major_gc.h ../byterun/freelist.h ../byterun/misc.h \ + ../byterun/mlvalues.h ../byterun/misc.h ../byterun/minor_gc.h \ + ../byterun/misc.h ../byterun/misc.h ../byterun/mlvalues.h \ + ../byterun/fail.h ../byterun/misc.h ../byterun/mlvalues.h \ + ../byterun/osdeps.h ../byterun/misc.h ../byterun/signals.h \ + ../byterun/misc.h ../byterun/mlvalues.h ../byterun/signals_machdep.h \ + signals_osdep.h stack.h ../byterun/sys.h ../byterun/misc.h startup.o: startup.c ../byterun/callback.h ../byterun/mlvalues.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 + ../byterun/config.h ../byterun/../config/m.h ../byterun/../config/s.h \ + ../byterun/misc.h ../byterun/config.h ../byterun/custom.h \ + ../byterun/mlvalues.h ../byterun/fail.h ../byterun/misc.h \ + ../byterun/mlvalues.h ../byterun/gc.h ../byterun/mlvalues.h \ + ../byterun/gc_ctrl.h ../byterun/misc.h ../byterun/osdeps.h \ + ../byterun/misc.h ../byterun/printexc.h ../byterun/misc.h \ + ../byterun/mlvalues.h ../byterun/sys.h ../byterun/misc.h str.o: str.c ../byterun/alloc.h ../byterun/misc.h ../byterun/config.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 + ../byterun/../config/m.h ../byterun/../config/s.h ../byterun/mlvalues.h \ + ../byterun/config.h ../byterun/misc.h ../byterun/fail.h \ + ../byterun/misc.h ../byterun/mlvalues.h +sys.o: sys.c ../byterun/config.h ../byterun/../config/m.h \ + ../byterun/../config/s.h ../byterun/alloc.h ../byterun/misc.h \ + ../byterun/config.h ../byterun/mlvalues.h ../byterun/config.h \ + ../byterun/misc.h ../byterun/debugger.h ../byterun/misc.h \ + ../byterun/mlvalues.h ../byterun/fail.h ../byterun/misc.h \ + ../byterun/mlvalues.h ../byterun/instruct.h ../byterun/osdeps.h \ + ../byterun/misc.h ../byterun/signals.h ../byterun/misc.h \ + ../byterun/mlvalues.h ../byterun/stacks.h ../byterun/misc.h \ + ../byterun/mlvalues.h ../byterun/memory.h ../byterun/config.h \ + ../byterun/gc.h ../byterun/mlvalues.h ../byterun/major_gc.h \ + ../byterun/freelist.h ../byterun/misc.h ../byterun/mlvalues.h \ + ../byterun/misc.h ../byterun/minor_gc.h ../byterun/misc.h \ + ../byterun/misc.h ../byterun/mlvalues.h ../byterun/sys.h \ + ../byterun/misc.h +terminfo.o: terminfo.c ../byterun/config.h ../byterun/../config/m.h \ + ../byterun/../config/s.h ../byterun/alloc.h ../byterun/misc.h \ + ../byterun/config.h ../byterun/mlvalues.h ../byterun/config.h \ + ../byterun/misc.h ../byterun/fail.h ../byterun/misc.h \ + ../byterun/mlvalues.h ../byterun/io.h ../byterun/misc.h \ + ../byterun/mlvalues.h +unix.o: unix.c ../byterun/config.h ../byterun/../config/m.h \ + ../byterun/../config/s.h ../byterun/memory.h ../byterun/config.h \ + ../byterun/gc.h ../byterun/mlvalues.h ../byterun/config.h \ + ../byterun/misc.h ../byterun/config.h ../byterun/major_gc.h \ + ../byterun/freelist.h ../byterun/misc.h ../byterun/mlvalues.h \ + ../byterun/misc.h ../byterun/minor_gc.h ../byterun/misc.h \ + ../byterun/misc.h ../byterun/mlvalues.h ../byterun/osdeps.h \ + ../byterun/misc.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 + ../byterun/../config/m.h ../byterun/../config/s.h ../byterun/mlvalues.h \ + ../byterun/config.h ../byterun/misc.h ../byterun/fail.h \ + ../byterun/misc.h ../byterun/mlvalues.h ../byterun/major_gc.h \ + ../byterun/freelist.h ../byterun/misc.h ../byterun/mlvalues.h \ + ../byterun/misc.h ../byterun/memory.h ../byterun/config.h \ + ../byterun/gc.h ../byterun/mlvalues.h ../byterun/major_gc.h \ + ../byterun/minor_gc.h ../byterun/misc.h ../byterun/misc.h \ + ../byterun/mlvalues.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 + ../byterun/../config/m.h ../byterun/../config/s.h ../byterun/mlvalues.h \ + ../byterun/config.h ../byterun/misc.h ../byterun/custom.h \ + ../byterun/mlvalues.h ../byterun/major_gc.h ../byterun/freelist.h \ + ../byterun/misc.h ../byterun/mlvalues.h ../byterun/misc.h \ + ../byterun/memory.h ../byterun/config.h ../byterun/gc.h \ + ../byterun/mlvalues.h ../byterun/major_gc.h ../byterun/minor_gc.h \ + ../byterun/misc.h ../byterun/misc.h ../byterun/mlvalues.h \ + ../byterun/stacks.h ../byterun/misc.h ../byterun/mlvalues.h \ + ../byterun/memory.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 + ../byterun/../config/m.h ../byterun/../config/s.h ../byterun/mlvalues.h \ + ../byterun/config.h ../byterun/misc.h ../byterun/fail.h \ + ../byterun/misc.h ../byterun/mlvalues.h ../byterun/memory.h \ + ../byterun/config.h ../byterun/gc.h ../byterun/mlvalues.h \ + ../byterun/major_gc.h ../byterun/freelist.h ../byterun/misc.h \ + ../byterun/mlvalues.h ../byterun/misc.h ../byterun/minor_gc.h \ + ../byterun/misc.h ../byterun/misc.h ../byterun/mlvalues.h callback.d.o: callback.c ../byterun/callback.h ../byterun/mlvalues.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 + ../byterun/config.h ../byterun/../config/m.h ../byterun/../config/s.h \ + ../byterun/misc.h ../byterun/config.h ../byterun/fail.h \ + ../byterun/misc.h ../byterun/mlvalues.h ../byterun/memory.h \ + ../byterun/config.h ../byterun/gc.h ../byterun/mlvalues.h \ + ../byterun/major_gc.h ../byterun/freelist.h ../byterun/misc.h \ + ../byterun/mlvalues.h ../byterun/misc.h ../byterun/minor_gc.h \ + ../byterun/misc.h ../byterun/misc.h ../byterun/mlvalues.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/config.h ../byterun/memory.h \ + ../byterun/config.h ../byterun/gc.h ../byterun/mlvalues.h \ + ../byterun/config.h ../byterun/misc.h ../byterun/major_gc.h \ + ../byterun/freelist.h ../byterun/misc.h ../byterun/mlvalues.h \ + ../byterun/misc.h ../byterun/minor_gc.h ../byterun/misc.h \ + ../byterun/misc.h ../byterun/mlvalues.h ../byterun/gc_ctrl.h \ + ../byterun/misc.h ../byterun/weak.h ../byterun/mlvalues.h compare.d.o: compare.c ../byterun/custom.h ../byterun/mlvalues.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 + ../byterun/config.h ../byterun/../config/m.h ../byterun/../config/s.h \ + ../byterun/misc.h ../byterun/config.h ../byterun/fail.h \ + ../byterun/misc.h ../byterun/mlvalues.h ../byterun/memory.h \ + ../byterun/config.h ../byterun/gc.h ../byterun/mlvalues.h \ + ../byterun/major_gc.h ../byterun/freelist.h ../byterun/misc.h \ + ../byterun/mlvalues.h ../byterun/misc.h ../byterun/minor_gc.h \ + ../byterun/misc.h ../byterun/misc.h ../byterun/mlvalues.h custom.d.o: custom.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/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 + ../byterun/config.h ../byterun/../config/m.h ../byterun/../config/s.h \ + ../byterun/mlvalues.h ../byterun/config.h ../byterun/misc.h \ + ../byterun/custom.h ../byterun/mlvalues.h ../byterun/fail.h \ + ../byterun/misc.h ../byterun/mlvalues.h ../byterun/memory.h \ + ../byterun/config.h ../byterun/gc.h ../byterun/mlvalues.h \ + ../byterun/major_gc.h ../byterun/freelist.h ../byterun/misc.h \ + ../byterun/mlvalues.h ../byterun/misc.h ../byterun/minor_gc.h \ + ../byterun/misc.h ../byterun/misc.h ../byterun/mlvalues.h +dynlink.d.o: dynlink.c ../byterun/config.h ../byterun/../config/m.h \ + ../byterun/../config/s.h ../byterun/alloc.h ../byterun/misc.h \ + ../byterun/config.h ../byterun/mlvalues.h ../byterun/config.h \ + ../byterun/misc.h ../byterun/dynlink.h ../byterun/misc.h \ + ../byterun/fail.h ../byterun/misc.h ../byterun/mlvalues.h \ + ../byterun/memory.h ../byterun/config.h ../byterun/gc.h \ + ../byterun/mlvalues.h ../byterun/major_gc.h ../byterun/freelist.h \ + ../byterun/misc.h ../byterun/mlvalues.h ../byterun/misc.h \ + ../byterun/minor_gc.h ../byterun/misc.h ../byterun/misc.h \ + ../byterun/mlvalues.h ../byterun/osdeps.h ../byterun/misc.h \ + ../byterun/prims.h extern.d.o: extern.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/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/config.h ../byterun/../config/m.h ../byterun/../config/s.h \ + ../byterun/mlvalues.h ../byterun/config.h ../byterun/misc.h \ + ../byterun/custom.h ../byterun/mlvalues.h ../byterun/fail.h \ + ../byterun/misc.h ../byterun/mlvalues.h ../byterun/gc.h \ + ../byterun/mlvalues.h ../byterun/intext.h ../byterun/misc.h \ + ../byterun/mlvalues.h ../byterun/io.h ../byterun/misc.h \ + ../byterun/mlvalues.h ../byterun/memory.h ../byterun/config.h \ + ../byterun/gc.h ../byterun/major_gc.h ../byterun/freelist.h \ + ../byterun/misc.h ../byterun/mlvalues.h ../byterun/misc.h \ + ../byterun/minor_gc.h ../byterun/misc.h ../byterun/misc.h \ + ../byterun/mlvalues.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 ../config/m.h ../config/s.h ../byterun/misc.h \ - ../byterun/fail.h ../byterun/roots.h ../byterun/memory.h \ + ../byterun/../config/m.h ../byterun/../config/s.h ../byterun/mlvalues.h \ + ../byterun/config.h ../byterun/misc.h ../byterun/fail.h \ + ../byterun/misc.h ../byterun/mlvalues.h ../byterun/io.h \ + ../byterun/misc.h ../byterun/mlvalues.h ../byterun/gc.h \ + ../byterun/mlvalues.h ../byterun/memory.h ../byterun/config.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 ../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/misc.h ../byterun/mlvalues.h ../byterun/misc.h \ + ../byterun/minor_gc.h ../byterun/misc.h ../byterun/misc.h \ + ../byterun/mlvalues.h ../byterun/printexc.h ../byterun/misc.h \ + ../byterun/mlvalues.h ../byterun/signals.h ../byterun/misc.h \ + ../byterun/mlvalues.h stack.h ../byterun/roots.h ../byterun/misc.h \ + ../byterun/memory.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/config.h ../byterun/fail.h \ + ../byterun/misc.h ../byterun/mlvalues.h ../byterun/roots.h \ + ../byterun/misc.h ../byterun/memory.h ../byterun/config.h \ + ../byterun/gc.h ../byterun/mlvalues.h ../byterun/major_gc.h \ ../byterun/freelist.h ../byterun/misc.h ../byterun/mlvalues.h \ - ../byterun/gc.h ../byterun/gc_ctrl.h ../byterun/major_gc.h + ../byterun/misc.h ../byterun/minor_gc.h ../byterun/misc.h \ + ../byterun/misc.h ../byterun/mlvalues.h ../byterun/signals.h \ + ../byterun/misc.h ../byterun/mlvalues.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/config.h ../byterun/misc.h \ + ../byterun/fail.h ../byterun/misc.h ../byterun/mlvalues.h \ + ../byterun/memory.h ../byterun/config.h ../byterun/gc.h \ + ../byterun/mlvalues.h ../byterun/major_gc.h ../byterun/freelist.h \ + ../byterun/misc.h ../byterun/mlvalues.h ../byterun/misc.h \ + ../byterun/minor_gc.h ../byterun/misc.h ../byterun/misc.h \ + ../byterun/mlvalues.h ../byterun/reverse.h ../byterun/stacks.h \ + ../byterun/misc.h ../byterun/mlvalues.h ../byterun/memory.h +freelist.d.o: freelist.c ../byterun/config.h ../byterun/../config/m.h \ + ../byterun/../config/s.h ../byterun/freelist.h ../byterun/misc.h \ + ../byterun/config.h ../byterun/mlvalues.h ../byterun/config.h \ + ../byterun/misc.h ../byterun/gc.h ../byterun/mlvalues.h \ + ../byterun/gc_ctrl.h ../byterun/misc.h ../byterun/major_gc.h \ + ../byterun/freelist.h ../byterun/misc.h gc_ctrl.d.o: gc_ctrl.c ../byterun/alloc.h ../byterun/misc.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 + ../byterun/config.h ../byterun/../config/m.h ../byterun/../config/s.h \ + ../byterun/mlvalues.h ../byterun/config.h ../byterun/misc.h \ + ../byterun/compact.h ../byterun/config.h ../byterun/misc.h \ + ../byterun/custom.h ../byterun/mlvalues.h ../byterun/finalise.h \ + ../byterun/roots.h ../byterun/misc.h ../byterun/memory.h \ + ../byterun/config.h ../byterun/gc.h ../byterun/mlvalues.h \ + ../byterun/major_gc.h ../byterun/freelist.h ../byterun/misc.h \ + ../byterun/mlvalues.h ../byterun/misc.h ../byterun/minor_gc.h \ + ../byterun/misc.h ../byterun/misc.h ../byterun/mlvalues.h \ + ../byterun/gc_ctrl.h ../byterun/misc.h ../byterun/stacks.h \ + ../byterun/misc.h ../byterun/mlvalues.h ../byterun/memory.h globroots.d.o: globroots.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 ../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 + ../byterun/../config/m.h ../byterun/../config/s.h ../byterun/gc.h \ + ../byterun/mlvalues.h ../byterun/config.h ../byterun/misc.h \ + ../byterun/config.h ../byterun/major_gc.h ../byterun/freelist.h \ + ../byterun/misc.h ../byterun/mlvalues.h ../byterun/misc.h \ + ../byterun/minor_gc.h ../byterun/misc.h ../byterun/misc.h \ + ../byterun/mlvalues.h ../byterun/globroots.h ../byterun/mlvalues.h +hash.d.o: hash.c ../byterun/mlvalues.h ../byterun/config.h \ + ../byterun/../config/m.h ../byterun/../config/s.h ../byterun/misc.h \ + ../byterun/config.h ../byterun/custom.h ../byterun/mlvalues.h \ + ../byterun/memory.h ../byterun/config.h ../byterun/gc.h \ + ../byterun/mlvalues.h ../byterun/major_gc.h ../byterun/freelist.h \ + ../byterun/misc.h ../byterun/mlvalues.h ../byterun/misc.h \ + ../byterun/minor_gc.h ../byterun/misc.h ../byterun/misc.h \ + ../byterun/mlvalues.h intern.d.o: intern.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/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 + ../byterun/config.h ../byterun/../config/m.h ../byterun/../config/s.h \ + ../byterun/mlvalues.h ../byterun/config.h ../byterun/misc.h \ + ../byterun/custom.h ../byterun/mlvalues.h ../byterun/fail.h \ + ../byterun/misc.h ../byterun/mlvalues.h ../byterun/gc.h \ + ../byterun/mlvalues.h ../byterun/intext.h ../byterun/misc.h \ + ../byterun/mlvalues.h ../byterun/io.h ../byterun/misc.h \ + ../byterun/mlvalues.h ../byterun/memory.h ../byterun/config.h \ + ../byterun/gc.h ../byterun/major_gc.h ../byterun/freelist.h \ + ../byterun/misc.h ../byterun/mlvalues.h ../byterun/misc.h \ + ../byterun/minor_gc.h ../byterun/misc.h ../byterun/misc.h \ + ../byterun/mlvalues.h ../byterun/reverse.h ../byterun/md5.h \ + ../byterun/mlvalues.h ../byterun/io.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 + ../byterun/../config/m.h ../byterun/../config/s.h ../byterun/mlvalues.h \ + ../byterun/config.h ../byterun/misc.h ../byterun/custom.h \ + ../byterun/mlvalues.h ../byterun/fail.h ../byterun/misc.h \ + ../byterun/mlvalues.h ../byterun/intext.h ../byterun/misc.h \ + ../byterun/mlvalues.h ../byterun/io.h ../byterun/misc.h \ + ../byterun/mlvalues.h ../byterun/memory.h ../byterun/config.h \ + ../byterun/gc.h ../byterun/mlvalues.h ../byterun/major_gc.h \ + ../byterun/freelist.h ../byterun/misc.h ../byterun/mlvalues.h \ + ../byterun/misc.h ../byterun/minor_gc.h ../byterun/misc.h \ + ../byterun/misc.h ../byterun/mlvalues.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/config.h ../byterun/mlvalues.h ../byterun/config.h \ + ../byterun/misc.h ../byterun/custom.h ../byterun/mlvalues.h \ + ../byterun/fail.h ../byterun/misc.h ../byterun/mlvalues.h \ + ../byterun/io.h ../byterun/misc.h ../byterun/mlvalues.h \ + ../byterun/memory.h ../byterun/config.h ../byterun/gc.h \ + ../byterun/mlvalues.h ../byterun/major_gc.h ../byterun/freelist.h \ + ../byterun/misc.h ../byterun/mlvalues.h ../byterun/misc.h \ + ../byterun/minor_gc.h ../byterun/misc.h ../byterun/misc.h \ + ../byterun/mlvalues.h ../byterun/signals.h ../byterun/misc.h \ + ../byterun/mlvalues.h ../byterun/sys.h ../byterun/misc.h lexing.d.o: lexing.c ../byterun/fail.h ../byterun/misc.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 + ../byterun/config.h ../byterun/../config/m.h ../byterun/../config/s.h \ + ../byterun/mlvalues.h ../byterun/config.h ../byterun/misc.h \ + ../byterun/stacks.h ../byterun/misc.h ../byterun/mlvalues.h \ + ../byterun/memory.h ../byterun/config.h ../byterun/gc.h \ + ../byterun/mlvalues.h ../byterun/major_gc.h ../byterun/freelist.h \ + ../byterun/misc.h ../byterun/mlvalues.h ../byterun/misc.h \ + ../byterun/minor_gc.h ../byterun/misc.h ../byterun/misc.h \ + ../byterun/mlvalues.h +main.d.o: main.c ../byterun/misc.h ../byterun/config.h \ + ../byterun/../config/m.h ../byterun/../config/s.h ../byterun/mlvalues.h \ + ../byterun/config.h ../byterun/misc.h ../byterun/sys.h \ + ../byterun/misc.h major_gc.d.o: major_gc.c ../byterun/compact.h ../byterun/config.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 + ../byterun/../config/m.h ../byterun/../config/s.h ../byterun/misc.h \ + ../byterun/config.h ../byterun/custom.h ../byterun/mlvalues.h \ + ../byterun/config.h ../byterun/misc.h ../byterun/fail.h \ + ../byterun/misc.h ../byterun/mlvalues.h ../byterun/finalise.h \ + ../byterun/roots.h ../byterun/misc.h ../byterun/memory.h \ + ../byterun/config.h ../byterun/gc.h ../byterun/mlvalues.h \ + ../byterun/major_gc.h ../byterun/freelist.h ../byterun/misc.h \ + ../byterun/mlvalues.h ../byterun/misc.h ../byterun/minor_gc.h \ + ../byterun/misc.h ../byterun/misc.h ../byterun/mlvalues.h \ + ../byterun/gc_ctrl.h ../byterun/misc.h ../byterun/weak.h \ + ../byterun/mlvalues.h md5.d.o: md5.c ../byterun/alloc.h ../byterun/misc.h ../byterun/config.h \ - ../config/m.h ../config/s.h ../byterun/mlvalues.h ../byterun/fail.h \ - ../byterun/md5.h ../byterun/io.h ../byterun/reverse.h + ../byterun/../config/m.h ../byterun/../config/s.h ../byterun/mlvalues.h \ + ../byterun/config.h ../byterun/misc.h ../byterun/fail.h \ + ../byterun/misc.h ../byterun/mlvalues.h ../byterun/md5.h \ + ../byterun/mlvalues.h ../byterun/io.h ../byterun/misc.h \ + ../byterun/mlvalues.h ../byterun/memory.h ../byterun/config.h \ + ../byterun/gc.h ../byterun/mlvalues.h ../byterun/major_gc.h \ + ../byterun/freelist.h ../byterun/misc.h ../byterun/mlvalues.h \ + ../byterun/misc.h ../byterun/minor_gc.h ../byterun/misc.h \ + ../byterun/misc.h ../byterun/mlvalues.h ../byterun/reverse.h memory.d.o: memory.c ../byterun/fail.h ../byterun/misc.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 + ../byterun/config.h ../byterun/../config/m.h ../byterun/../config/s.h \ + ../byterun/mlvalues.h ../byterun/config.h ../byterun/misc.h \ + ../byterun/freelist.h ../byterun/misc.h ../byterun/mlvalues.h \ + ../byterun/gc.h ../byterun/mlvalues.h ../byterun/gc_ctrl.h \ + ../byterun/misc.h ../byterun/major_gc.h ../byterun/freelist.h \ + ../byterun/misc.h ../byterun/memory.h ../byterun/config.h \ + ../byterun/gc.h ../byterun/major_gc.h ../byterun/minor_gc.h \ + ../byterun/misc.h ../byterun/misc.h ../byterun/mlvalues.h \ + ../byterun/signals.h ../byterun/misc.h ../byterun/mlvalues.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/intext.h \ - ../byterun/io.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 \ - ../config/m.h ../config/s.h ../byterun/mlvalues.h ../byterun/fail.h \ - ../byterun/gc.h ../byterun/interp.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/../config/m.h ../byterun/../config/s.h ../byterun/mlvalues.h \ + ../byterun/config.h ../byterun/misc.h ../byterun/fail.h \ + ../byterun/misc.h ../byterun/mlvalues.h ../byterun/fix_code.h \ + ../byterun/config.h ../byterun/misc.h ../byterun/mlvalues.h \ + ../byterun/interp.h ../byterun/misc.h ../byterun/mlvalues.h \ + ../byterun/intext.h ../byterun/misc.h ../byterun/mlvalues.h \ + ../byterun/io.h ../byterun/misc.h ../byterun/mlvalues.h \ + ../byterun/major_gc.h ../byterun/freelist.h ../byterun/misc.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 + ../byterun/config.h ../byterun/gc.h ../byterun/mlvalues.h \ + ../byterun/major_gc.h ../byterun/minor_gc.h ../byterun/misc.h \ + ../byterun/misc.h ../byterun/mlvalues.h ../byterun/prims.h \ + ../byterun/stacks.h ../byterun/misc.h ../byterun/mlvalues.h \ + ../byterun/memory.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/config.h ../byterun/mlvalues.h ../byterun/config.h \ + ../byterun/misc.h ../byterun/finalise.h ../byterun/roots.h \ + ../byterun/misc.h ../byterun/memory.h ../byterun/config.h \ + ../byterun/gc.h ../byterun/mlvalues.h ../byterun/major_gc.h \ + ../byterun/freelist.h ../byterun/misc.h ../byterun/mlvalues.h \ + ../byterun/misc.h ../byterun/minor_gc.h ../byterun/misc.h \ + ../byterun/misc.h ../byterun/mlvalues.h ../byterun/gc_ctrl.h \ + ../byterun/misc.h ../byterun/signals.h ../byterun/misc.h \ + ../byterun/mlvalues.h +misc.d.o: misc.c ../byterun/config.h ../byterun/../config/m.h \ + ../byterun/../config/s.h ../byterun/misc.h ../byterun/config.h \ + ../byterun/memory.h ../byterun/config.h ../byterun/gc.h \ + ../byterun/mlvalues.h ../byterun/config.h ../byterun/misc.h \ + ../byterun/major_gc.h ../byterun/freelist.h ../byterun/misc.h \ + ../byterun/mlvalues.h ../byterun/misc.h ../byterun/minor_gc.h \ + ../byterun/misc.h ../byterun/misc.h ../byterun/mlvalues.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/config.h ../byterun/misc.h ../byterun/fail.h \ + ../byterun/misc.h ../byterun/mlvalues.h ../byterun/gc.h \ + ../byterun/mlvalues.h ../byterun/interp.h ../byterun/misc.h \ + ../byterun/mlvalues.h ../byterun/major_gc.h ../byterun/freelist.h \ + ../byterun/misc.h ../byterun/mlvalues.h ../byterun/misc.h \ + ../byterun/memory.h ../byterun/config.h ../byterun/gc.h \ + ../byterun/major_gc.h ../byterun/minor_gc.h ../byterun/misc.h \ + ../byterun/misc.h ../byterun/mlvalues.h ../byterun/prims.h +parsing.d.o: parsing.c ../byterun/config.h ../byterun/../config/m.h \ + ../byterun/../config/s.h ../byterun/mlvalues.h ../byterun/config.h \ + ../byterun/misc.h ../byterun/config.h ../byterun/memory.h \ + ../byterun/config.h ../byterun/gc.h ../byterun/mlvalues.h \ + ../byterun/major_gc.h ../byterun/freelist.h ../byterun/misc.h \ + ../byterun/mlvalues.h ../byterun/misc.h ../byterun/minor_gc.h \ + ../byterun/misc.h ../byterun/misc.h ../byterun/mlvalues.h \ + ../byterun/alloc.h ../byterun/misc.h ../byterun/mlvalues.h printexc.d.o: printexc.c ../byterun/backtrace.h ../byterun/mlvalues.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 + ../byterun/config.h ../byterun/../config/m.h ../byterun/../config/s.h \ + ../byterun/misc.h ../byterun/config.h ../byterun/callback.h \ + ../byterun/mlvalues.h ../byterun/debugger.h ../byterun/misc.h \ + ../byterun/mlvalues.h ../byterun/fail.h ../byterun/misc.h \ + ../byterun/mlvalues.h ../byterun/printexc.h ../byterun/misc.h \ + ../byterun/mlvalues.h roots.d.o: roots.c ../byterun/finalise.h ../byterun/roots.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 + ../byterun/misc.h ../byterun/config.h ../byterun/../config/m.h \ + ../byterun/../config/s.h ../byterun/memory.h ../byterun/config.h \ + ../byterun/gc.h ../byterun/mlvalues.h ../byterun/config.h \ + ../byterun/misc.h ../byterun/major_gc.h ../byterun/freelist.h \ + ../byterun/misc.h ../byterun/mlvalues.h ../byterun/misc.h \ + ../byterun/minor_gc.h ../byterun/misc.h ../byterun/misc.h \ + ../byterun/mlvalues.h ../byterun/globroots.h ../byterun/mlvalues.h \ + stack.h signals.d.o: signals.c ../byterun/alloc.h ../byterun/misc.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/osdeps.h ../byterun/signals.h \ - ../byterun/signals_machdep.h signals_osdep.h stack.h ../byterun/sys.h + ../byterun/config.h ../byterun/../config/m.h ../byterun/../config/s.h \ + ../byterun/mlvalues.h ../byterun/config.h ../byterun/misc.h \ + ../byterun/callback.h ../byterun/mlvalues.h ../byterun/memory.h \ + ../byterun/config.h ../byterun/gc.h ../byterun/mlvalues.h \ + ../byterun/major_gc.h ../byterun/freelist.h ../byterun/misc.h \ + ../byterun/mlvalues.h ../byterun/misc.h ../byterun/minor_gc.h \ + ../byterun/misc.h ../byterun/misc.h ../byterun/mlvalues.h \ + ../byterun/fail.h ../byterun/misc.h ../byterun/mlvalues.h \ + ../byterun/osdeps.h ../byterun/misc.h ../byterun/signals.h \ + ../byterun/misc.h ../byterun/mlvalues.h ../byterun/signals_machdep.h \ + signals_osdep.h stack.h ../byterun/sys.h ../byterun/misc.h startup.d.o: startup.c ../byterun/callback.h ../byterun/mlvalues.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 + ../byterun/config.h ../byterun/../config/m.h ../byterun/../config/s.h \ + ../byterun/misc.h ../byterun/config.h ../byterun/custom.h \ + ../byterun/mlvalues.h ../byterun/fail.h ../byterun/misc.h \ + ../byterun/mlvalues.h ../byterun/gc.h ../byterun/mlvalues.h \ + ../byterun/gc_ctrl.h ../byterun/misc.h ../byterun/osdeps.h \ + ../byterun/misc.h ../byterun/printexc.h ../byterun/misc.h \ + ../byterun/mlvalues.h ../byterun/sys.h ../byterun/misc.h str.d.o: str.c ../byterun/alloc.h ../byterun/misc.h ../byterun/config.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 + ../byterun/../config/m.h ../byterun/../config/s.h ../byterun/mlvalues.h \ + ../byterun/config.h ../byterun/misc.h ../byterun/fail.h \ + ../byterun/misc.h ../byterun/mlvalues.h +sys.d.o: sys.c ../byterun/config.h ../byterun/../config/m.h \ + ../byterun/../config/s.h ../byterun/alloc.h ../byterun/misc.h \ + ../byterun/config.h ../byterun/mlvalues.h ../byterun/config.h \ + ../byterun/misc.h ../byterun/debugger.h ../byterun/misc.h \ + ../byterun/mlvalues.h ../byterun/fail.h ../byterun/misc.h \ + ../byterun/mlvalues.h ../byterun/instruct.h ../byterun/osdeps.h \ + ../byterun/misc.h ../byterun/signals.h ../byterun/misc.h \ + ../byterun/mlvalues.h ../byterun/stacks.h ../byterun/misc.h \ + ../byterun/mlvalues.h ../byterun/memory.h ../byterun/config.h \ + ../byterun/gc.h ../byterun/mlvalues.h ../byterun/major_gc.h \ + ../byterun/freelist.h ../byterun/misc.h ../byterun/mlvalues.h \ + ../byterun/misc.h ../byterun/minor_gc.h ../byterun/misc.h \ + ../byterun/misc.h ../byterun/mlvalues.h ../byterun/sys.h \ + ../byterun/misc.h +terminfo.d.o: terminfo.c ../byterun/config.h ../byterun/../config/m.h \ + ../byterun/../config/s.h ../byterun/alloc.h ../byterun/misc.h \ + ../byterun/config.h ../byterun/mlvalues.h ../byterun/config.h \ + ../byterun/misc.h ../byterun/fail.h ../byterun/misc.h \ + ../byterun/mlvalues.h ../byterun/io.h ../byterun/misc.h \ + ../byterun/mlvalues.h +unix.d.o: unix.c ../byterun/config.h ../byterun/../config/m.h \ + ../byterun/../config/s.h ../byterun/memory.h ../byterun/config.h \ + ../byterun/gc.h ../byterun/mlvalues.h ../byterun/config.h \ + ../byterun/misc.h ../byterun/config.h ../byterun/major_gc.h \ + ../byterun/freelist.h ../byterun/misc.h ../byterun/mlvalues.h \ + ../byterun/misc.h ../byterun/minor_gc.h ../byterun/misc.h \ + ../byterun/misc.h ../byterun/mlvalues.h ../byterun/osdeps.h \ + ../byterun/misc.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 + ../byterun/../config/m.h ../byterun/../config/s.h ../byterun/mlvalues.h \ + ../byterun/config.h ../byterun/misc.h ../byterun/fail.h \ + ../byterun/misc.h ../byterun/mlvalues.h ../byterun/major_gc.h \ + ../byterun/freelist.h ../byterun/misc.h ../byterun/mlvalues.h \ + ../byterun/misc.h ../byterun/memory.h ../byterun/config.h \ + ../byterun/gc.h ../byterun/mlvalues.h ../byterun/major_gc.h \ + ../byterun/minor_gc.h ../byterun/misc.h ../byterun/misc.h \ + ../byterun/mlvalues.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 + ../byterun/../config/m.h ../byterun/../config/s.h ../byterun/mlvalues.h \ + ../byterun/config.h ../byterun/misc.h ../byterun/custom.h \ + ../byterun/mlvalues.h ../byterun/major_gc.h ../byterun/freelist.h \ + ../byterun/misc.h ../byterun/mlvalues.h ../byterun/misc.h \ + ../byterun/memory.h ../byterun/config.h ../byterun/gc.h \ + ../byterun/mlvalues.h ../byterun/major_gc.h ../byterun/minor_gc.h \ + ../byterun/misc.h ../byterun/misc.h ../byterun/mlvalues.h \ + ../byterun/stacks.h ../byterun/misc.h ../byterun/mlvalues.h \ + ../byterun/memory.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 + ../byterun/../config/m.h ../byterun/../config/s.h ../byterun/mlvalues.h \ + ../byterun/config.h ../byterun/misc.h ../byterun/fail.h \ + ../byterun/misc.h ../byterun/mlvalues.h ../byterun/memory.h \ + ../byterun/config.h ../byterun/gc.h ../byterun/mlvalues.h \ + ../byterun/major_gc.h ../byterun/freelist.h ../byterun/misc.h \ + ../byterun/mlvalues.h ../byterun/misc.h ../byterun/minor_gc.h \ + ../byterun/misc.h ../byterun/misc.h ../byterun/mlvalues.h callback.p.o: callback.c ../byterun/callback.h ../byterun/mlvalues.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 + ../byterun/config.h ../byterun/../config/m.h ../byterun/../config/s.h \ + ../byterun/misc.h ../byterun/config.h ../byterun/fail.h \ + ../byterun/misc.h ../byterun/mlvalues.h ../byterun/memory.h \ + ../byterun/config.h ../byterun/gc.h ../byterun/mlvalues.h \ + ../byterun/major_gc.h ../byterun/freelist.h ../byterun/misc.h \ + ../byterun/mlvalues.h ../byterun/misc.h ../byterun/minor_gc.h \ + ../byterun/misc.h ../byterun/misc.h ../byterun/mlvalues.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/config.h ../byterun/memory.h \ + ../byterun/config.h ../byterun/gc.h ../byterun/mlvalues.h \ + ../byterun/config.h ../byterun/misc.h ../byterun/major_gc.h \ + ../byterun/freelist.h ../byterun/misc.h ../byterun/mlvalues.h \ + ../byterun/misc.h ../byterun/minor_gc.h ../byterun/misc.h \ + ../byterun/misc.h ../byterun/mlvalues.h ../byterun/gc_ctrl.h \ + ../byterun/misc.h ../byterun/weak.h ../byterun/mlvalues.h compare.p.o: compare.c ../byterun/custom.h ../byterun/mlvalues.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 + ../byterun/config.h ../byterun/../config/m.h ../byterun/../config/s.h \ + ../byterun/misc.h ../byterun/config.h ../byterun/fail.h \ + ../byterun/misc.h ../byterun/mlvalues.h ../byterun/memory.h \ + ../byterun/config.h ../byterun/gc.h ../byterun/mlvalues.h \ + ../byterun/major_gc.h ../byterun/freelist.h ../byterun/misc.h \ + ../byterun/mlvalues.h ../byterun/misc.h ../byterun/minor_gc.h \ + ../byterun/misc.h ../byterun/misc.h ../byterun/mlvalues.h custom.p.o: custom.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/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 + ../byterun/config.h ../byterun/../config/m.h ../byterun/../config/s.h \ + ../byterun/mlvalues.h ../byterun/config.h ../byterun/misc.h \ + ../byterun/custom.h ../byterun/mlvalues.h ../byterun/fail.h \ + ../byterun/misc.h ../byterun/mlvalues.h ../byterun/memory.h \ + ../byterun/config.h ../byterun/gc.h ../byterun/mlvalues.h \ + ../byterun/major_gc.h ../byterun/freelist.h ../byterun/misc.h \ + ../byterun/mlvalues.h ../byterun/misc.h ../byterun/minor_gc.h \ + ../byterun/misc.h ../byterun/misc.h ../byterun/mlvalues.h +dynlink.p.o: dynlink.c ../byterun/config.h ../byterun/../config/m.h \ + ../byterun/../config/s.h ../byterun/alloc.h ../byterun/misc.h \ + ../byterun/config.h ../byterun/mlvalues.h ../byterun/config.h \ + ../byterun/misc.h ../byterun/dynlink.h ../byterun/misc.h \ + ../byterun/fail.h ../byterun/misc.h ../byterun/mlvalues.h \ + ../byterun/memory.h ../byterun/config.h ../byterun/gc.h \ + ../byterun/mlvalues.h ../byterun/major_gc.h ../byterun/freelist.h \ + ../byterun/misc.h ../byterun/mlvalues.h ../byterun/misc.h \ + ../byterun/minor_gc.h ../byterun/misc.h ../byterun/misc.h \ + ../byterun/mlvalues.h ../byterun/osdeps.h ../byterun/misc.h \ + ../byterun/prims.h extern.p.o: extern.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/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/config.h ../byterun/../config/m.h ../byterun/../config/s.h \ + ../byterun/mlvalues.h ../byterun/config.h ../byterun/misc.h \ + ../byterun/custom.h ../byterun/mlvalues.h ../byterun/fail.h \ + ../byterun/misc.h ../byterun/mlvalues.h ../byterun/gc.h \ + ../byterun/mlvalues.h ../byterun/intext.h ../byterun/misc.h \ + ../byterun/mlvalues.h ../byterun/io.h ../byterun/misc.h \ + ../byterun/mlvalues.h ../byterun/memory.h ../byterun/config.h \ + ../byterun/gc.h ../byterun/major_gc.h ../byterun/freelist.h \ + ../byterun/misc.h ../byterun/mlvalues.h ../byterun/misc.h \ + ../byterun/minor_gc.h ../byterun/misc.h ../byterun/misc.h \ + ../byterun/mlvalues.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 ../config/m.h ../config/s.h ../byterun/misc.h \ - ../byterun/fail.h ../byterun/roots.h ../byterun/memory.h \ + ../byterun/../config/m.h ../byterun/../config/s.h ../byterun/mlvalues.h \ + ../byterun/config.h ../byterun/misc.h ../byterun/fail.h \ + ../byterun/misc.h ../byterun/mlvalues.h ../byterun/io.h \ + ../byterun/misc.h ../byterun/mlvalues.h ../byterun/gc.h \ + ../byterun/mlvalues.h ../byterun/memory.h ../byterun/config.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 ../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/misc.h ../byterun/mlvalues.h ../byterun/misc.h \ + ../byterun/minor_gc.h ../byterun/misc.h ../byterun/misc.h \ + ../byterun/mlvalues.h ../byterun/printexc.h ../byterun/misc.h \ + ../byterun/mlvalues.h ../byterun/signals.h ../byterun/misc.h \ + ../byterun/mlvalues.h stack.h ../byterun/roots.h ../byterun/misc.h \ + ../byterun/memory.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/config.h ../byterun/fail.h \ + ../byterun/misc.h ../byterun/mlvalues.h ../byterun/roots.h \ + ../byterun/misc.h ../byterun/memory.h ../byterun/config.h \ + ../byterun/gc.h ../byterun/mlvalues.h ../byterun/major_gc.h \ ../byterun/freelist.h ../byterun/misc.h ../byterun/mlvalues.h \ - ../byterun/gc.h ../byterun/gc_ctrl.h ../byterun/major_gc.h + ../byterun/misc.h ../byterun/minor_gc.h ../byterun/misc.h \ + ../byterun/misc.h ../byterun/mlvalues.h ../byterun/signals.h \ + ../byterun/misc.h ../byterun/mlvalues.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/config.h ../byterun/misc.h \ + ../byterun/fail.h ../byterun/misc.h ../byterun/mlvalues.h \ + ../byterun/memory.h ../byterun/config.h ../byterun/gc.h \ + ../byterun/mlvalues.h ../byterun/major_gc.h ../byterun/freelist.h \ + ../byterun/misc.h ../byterun/mlvalues.h ../byterun/misc.h \ + ../byterun/minor_gc.h ../byterun/misc.h ../byterun/misc.h \ + ../byterun/mlvalues.h ../byterun/reverse.h ../byterun/stacks.h \ + ../byterun/misc.h ../byterun/mlvalues.h ../byterun/memory.h +freelist.p.o: freelist.c ../byterun/config.h ../byterun/../config/m.h \ + ../byterun/../config/s.h ../byterun/freelist.h ../byterun/misc.h \ + ../byterun/config.h ../byterun/mlvalues.h ../byterun/config.h \ + ../byterun/misc.h ../byterun/gc.h ../byterun/mlvalues.h \ + ../byterun/gc_ctrl.h ../byterun/misc.h ../byterun/major_gc.h \ + ../byterun/freelist.h ../byterun/misc.h gc_ctrl.p.o: gc_ctrl.c ../byterun/alloc.h ../byterun/misc.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 + ../byterun/config.h ../byterun/../config/m.h ../byterun/../config/s.h \ + ../byterun/mlvalues.h ../byterun/config.h ../byterun/misc.h \ + ../byterun/compact.h ../byterun/config.h ../byterun/misc.h \ + ../byterun/custom.h ../byterun/mlvalues.h ../byterun/finalise.h \ + ../byterun/roots.h ../byterun/misc.h ../byterun/memory.h \ + ../byterun/config.h ../byterun/gc.h ../byterun/mlvalues.h \ + ../byterun/major_gc.h ../byterun/freelist.h ../byterun/misc.h \ + ../byterun/mlvalues.h ../byterun/misc.h ../byterun/minor_gc.h \ + ../byterun/misc.h ../byterun/misc.h ../byterun/mlvalues.h \ + ../byterun/gc_ctrl.h ../byterun/misc.h ../byterun/stacks.h \ + ../byterun/misc.h ../byterun/mlvalues.h ../byterun/memory.h globroots.p.o: globroots.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 ../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 + ../byterun/../config/m.h ../byterun/../config/s.h ../byterun/gc.h \ + ../byterun/mlvalues.h ../byterun/config.h ../byterun/misc.h \ + ../byterun/config.h ../byterun/major_gc.h ../byterun/freelist.h \ + ../byterun/misc.h ../byterun/mlvalues.h ../byterun/misc.h \ + ../byterun/minor_gc.h ../byterun/misc.h ../byterun/misc.h \ + ../byterun/mlvalues.h ../byterun/globroots.h ../byterun/mlvalues.h +hash.p.o: hash.c ../byterun/mlvalues.h ../byterun/config.h \ + ../byterun/../config/m.h ../byterun/../config/s.h ../byterun/misc.h \ + ../byterun/config.h ../byterun/custom.h ../byterun/mlvalues.h \ + ../byterun/memory.h ../byterun/config.h ../byterun/gc.h \ + ../byterun/mlvalues.h ../byterun/major_gc.h ../byterun/freelist.h \ + ../byterun/misc.h ../byterun/mlvalues.h ../byterun/misc.h \ + ../byterun/minor_gc.h ../byterun/misc.h ../byterun/misc.h \ + ../byterun/mlvalues.h intern.p.o: intern.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/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 + ../byterun/config.h ../byterun/../config/m.h ../byterun/../config/s.h \ + ../byterun/mlvalues.h ../byterun/config.h ../byterun/misc.h \ + ../byterun/custom.h ../byterun/mlvalues.h ../byterun/fail.h \ + ../byterun/misc.h ../byterun/mlvalues.h ../byterun/gc.h \ + ../byterun/mlvalues.h ../byterun/intext.h ../byterun/misc.h \ + ../byterun/mlvalues.h ../byterun/io.h ../byterun/misc.h \ + ../byterun/mlvalues.h ../byterun/memory.h ../byterun/config.h \ + ../byterun/gc.h ../byterun/major_gc.h ../byterun/freelist.h \ + ../byterun/misc.h ../byterun/mlvalues.h ../byterun/misc.h \ + ../byterun/minor_gc.h ../byterun/misc.h ../byterun/misc.h \ + ../byterun/mlvalues.h ../byterun/reverse.h ../byterun/md5.h \ + ../byterun/mlvalues.h ../byterun/io.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 + ../byterun/../config/m.h ../byterun/../config/s.h ../byterun/mlvalues.h \ + ../byterun/config.h ../byterun/misc.h ../byterun/custom.h \ + ../byterun/mlvalues.h ../byterun/fail.h ../byterun/misc.h \ + ../byterun/mlvalues.h ../byterun/intext.h ../byterun/misc.h \ + ../byterun/mlvalues.h ../byterun/io.h ../byterun/misc.h \ + ../byterun/mlvalues.h ../byterun/memory.h ../byterun/config.h \ + ../byterun/gc.h ../byterun/mlvalues.h ../byterun/major_gc.h \ + ../byterun/freelist.h ../byterun/misc.h ../byterun/mlvalues.h \ + ../byterun/misc.h ../byterun/minor_gc.h ../byterun/misc.h \ + ../byterun/misc.h ../byterun/mlvalues.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/config.h ../byterun/mlvalues.h ../byterun/config.h \ + ../byterun/misc.h ../byterun/custom.h ../byterun/mlvalues.h \ + ../byterun/fail.h ../byterun/misc.h ../byterun/mlvalues.h \ + ../byterun/io.h ../byterun/misc.h ../byterun/mlvalues.h \ + ../byterun/memory.h ../byterun/config.h ../byterun/gc.h \ + ../byterun/mlvalues.h ../byterun/major_gc.h ../byterun/freelist.h \ + ../byterun/misc.h ../byterun/mlvalues.h ../byterun/misc.h \ + ../byterun/minor_gc.h ../byterun/misc.h ../byterun/misc.h \ + ../byterun/mlvalues.h ../byterun/signals.h ../byterun/misc.h \ + ../byterun/mlvalues.h ../byterun/sys.h ../byterun/misc.h lexing.p.o: lexing.c ../byterun/fail.h ../byterun/misc.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 + ../byterun/config.h ../byterun/../config/m.h ../byterun/../config/s.h \ + ../byterun/mlvalues.h ../byterun/config.h ../byterun/misc.h \ + ../byterun/stacks.h ../byterun/misc.h ../byterun/mlvalues.h \ + ../byterun/memory.h ../byterun/config.h ../byterun/gc.h \ + ../byterun/mlvalues.h ../byterun/major_gc.h ../byterun/freelist.h \ + ../byterun/misc.h ../byterun/mlvalues.h ../byterun/misc.h \ + ../byterun/minor_gc.h ../byterun/misc.h ../byterun/misc.h \ + ../byterun/mlvalues.h +main.p.o: main.c ../byterun/misc.h ../byterun/config.h \ + ../byterun/../config/m.h ../byterun/../config/s.h ../byterun/mlvalues.h \ + ../byterun/config.h ../byterun/misc.h ../byterun/sys.h \ + ../byterun/misc.h major_gc.p.o: major_gc.c ../byterun/compact.h ../byterun/config.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 + ../byterun/../config/m.h ../byterun/../config/s.h ../byterun/misc.h \ + ../byterun/config.h ../byterun/custom.h ../byterun/mlvalues.h \ + ../byterun/config.h ../byterun/misc.h ../byterun/fail.h \ + ../byterun/misc.h ../byterun/mlvalues.h ../byterun/finalise.h \ + ../byterun/roots.h ../byterun/misc.h ../byterun/memory.h \ + ../byterun/config.h ../byterun/gc.h ../byterun/mlvalues.h \ + ../byterun/major_gc.h ../byterun/freelist.h ../byterun/misc.h \ + ../byterun/mlvalues.h ../byterun/misc.h ../byterun/minor_gc.h \ + ../byterun/misc.h ../byterun/misc.h ../byterun/mlvalues.h \ + ../byterun/gc_ctrl.h ../byterun/misc.h ../byterun/weak.h \ + ../byterun/mlvalues.h md5.p.o: md5.c ../byterun/alloc.h ../byterun/misc.h ../byterun/config.h \ - ../config/m.h ../config/s.h ../byterun/mlvalues.h ../byterun/fail.h \ - ../byterun/md5.h ../byterun/io.h ../byterun/reverse.h + ../byterun/../config/m.h ../byterun/../config/s.h ../byterun/mlvalues.h \ + ../byterun/config.h ../byterun/misc.h ../byterun/fail.h \ + ../byterun/misc.h ../byterun/mlvalues.h ../byterun/md5.h \ + ../byterun/mlvalues.h ../byterun/io.h ../byterun/misc.h \ + ../byterun/mlvalues.h ../byterun/memory.h ../byterun/config.h \ + ../byterun/gc.h ../byterun/mlvalues.h ../byterun/major_gc.h \ + ../byterun/freelist.h ../byterun/misc.h ../byterun/mlvalues.h \ + ../byterun/misc.h ../byterun/minor_gc.h ../byterun/misc.h \ + ../byterun/misc.h ../byterun/mlvalues.h ../byterun/reverse.h memory.p.o: memory.c ../byterun/fail.h ../byterun/misc.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 + ../byterun/config.h ../byterun/../config/m.h ../byterun/../config/s.h \ + ../byterun/mlvalues.h ../byterun/config.h ../byterun/misc.h \ + ../byterun/freelist.h ../byterun/misc.h ../byterun/mlvalues.h \ + ../byterun/gc.h ../byterun/mlvalues.h ../byterun/gc_ctrl.h \ + ../byterun/misc.h ../byterun/major_gc.h ../byterun/freelist.h \ + ../byterun/misc.h ../byterun/memory.h ../byterun/config.h \ + ../byterun/gc.h ../byterun/major_gc.h ../byterun/minor_gc.h \ + ../byterun/misc.h ../byterun/misc.h ../byterun/mlvalues.h \ + ../byterun/signals.h ../byterun/misc.h ../byterun/mlvalues.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/intext.h \ - ../byterun/io.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 \ - ../config/m.h ../config/s.h ../byterun/mlvalues.h ../byterun/fail.h \ - ../byterun/gc.h ../byterun/interp.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/../config/m.h ../byterun/../config/s.h ../byterun/mlvalues.h \ + ../byterun/config.h ../byterun/misc.h ../byterun/fail.h \ + ../byterun/misc.h ../byterun/mlvalues.h ../byterun/fix_code.h \ + ../byterun/config.h ../byterun/misc.h ../byterun/mlvalues.h \ + ../byterun/interp.h ../byterun/misc.h ../byterun/mlvalues.h \ + ../byterun/intext.h ../byterun/misc.h ../byterun/mlvalues.h \ + ../byterun/io.h ../byterun/misc.h ../byterun/mlvalues.h \ + ../byterun/major_gc.h ../byterun/freelist.h ../byterun/misc.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 + ../byterun/config.h ../byterun/gc.h ../byterun/mlvalues.h \ + ../byterun/major_gc.h ../byterun/minor_gc.h ../byterun/misc.h \ + ../byterun/misc.h ../byterun/mlvalues.h ../byterun/prims.h \ + ../byterun/stacks.h ../byterun/misc.h ../byterun/mlvalues.h \ + ../byterun/memory.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/config.h ../byterun/mlvalues.h ../byterun/config.h \ + ../byterun/misc.h ../byterun/finalise.h ../byterun/roots.h \ + ../byterun/misc.h ../byterun/memory.h ../byterun/config.h \ + ../byterun/gc.h ../byterun/mlvalues.h ../byterun/major_gc.h \ + ../byterun/freelist.h ../byterun/misc.h ../byterun/mlvalues.h \ + ../byterun/misc.h ../byterun/minor_gc.h ../byterun/misc.h \ + ../byterun/misc.h ../byterun/mlvalues.h ../byterun/gc_ctrl.h \ + ../byterun/misc.h ../byterun/signals.h ../byterun/misc.h \ + ../byterun/mlvalues.h +misc.p.o: misc.c ../byterun/config.h ../byterun/../config/m.h \ + ../byterun/../config/s.h ../byterun/misc.h ../byterun/config.h \ + ../byterun/memory.h ../byterun/config.h ../byterun/gc.h \ + ../byterun/mlvalues.h ../byterun/config.h ../byterun/misc.h \ + ../byterun/major_gc.h ../byterun/freelist.h ../byterun/misc.h \ + ../byterun/mlvalues.h ../byterun/misc.h ../byterun/minor_gc.h \ + ../byterun/misc.h ../byterun/misc.h ../byterun/mlvalues.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/config.h ../byterun/misc.h ../byterun/fail.h \ + ../byterun/misc.h ../byterun/mlvalues.h ../byterun/gc.h \ + ../byterun/mlvalues.h ../byterun/interp.h ../byterun/misc.h \ + ../byterun/mlvalues.h ../byterun/major_gc.h ../byterun/freelist.h \ + ../byterun/misc.h ../byterun/mlvalues.h ../byterun/misc.h \ + ../byterun/memory.h ../byterun/config.h ../byterun/gc.h \ + ../byterun/major_gc.h ../byterun/minor_gc.h ../byterun/misc.h \ + ../byterun/misc.h ../byterun/mlvalues.h ../byterun/prims.h +parsing.p.o: parsing.c ../byterun/config.h ../byterun/../config/m.h \ + ../byterun/../config/s.h ../byterun/mlvalues.h ../byterun/config.h \ + ../byterun/misc.h ../byterun/config.h ../byterun/memory.h \ + ../byterun/config.h ../byterun/gc.h ../byterun/mlvalues.h \ + ../byterun/major_gc.h ../byterun/freelist.h ../byterun/misc.h \ + ../byterun/mlvalues.h ../byterun/misc.h ../byterun/minor_gc.h \ + ../byterun/misc.h ../byterun/misc.h ../byterun/mlvalues.h \ + ../byterun/alloc.h ../byterun/misc.h ../byterun/mlvalues.h printexc.p.o: printexc.c ../byterun/backtrace.h ../byterun/mlvalues.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 + ../byterun/config.h ../byterun/../config/m.h ../byterun/../config/s.h \ + ../byterun/misc.h ../byterun/config.h ../byterun/callback.h \ + ../byterun/mlvalues.h ../byterun/debugger.h ../byterun/misc.h \ + ../byterun/mlvalues.h ../byterun/fail.h ../byterun/misc.h \ + ../byterun/mlvalues.h ../byterun/printexc.h ../byterun/misc.h \ + ../byterun/mlvalues.h roots.p.o: roots.c ../byterun/finalise.h ../byterun/roots.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 + ../byterun/misc.h ../byterun/config.h ../byterun/../config/m.h \ + ../byterun/../config/s.h ../byterun/memory.h ../byterun/config.h \ + ../byterun/gc.h ../byterun/mlvalues.h ../byterun/config.h \ + ../byterun/misc.h ../byterun/major_gc.h ../byterun/freelist.h \ + ../byterun/misc.h ../byterun/mlvalues.h ../byterun/misc.h \ + ../byterun/minor_gc.h ../byterun/misc.h ../byterun/misc.h \ + ../byterun/mlvalues.h ../byterun/globroots.h ../byterun/mlvalues.h \ + stack.h signals.p.o: signals.c ../byterun/alloc.h ../byterun/misc.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/osdeps.h ../byterun/signals.h \ - ../byterun/signals_machdep.h signals_osdep.h stack.h ../byterun/sys.h + ../byterun/config.h ../byterun/../config/m.h ../byterun/../config/s.h \ + ../byterun/mlvalues.h ../byterun/config.h ../byterun/misc.h \ + ../byterun/callback.h ../byterun/mlvalues.h ../byterun/memory.h \ + ../byterun/config.h ../byterun/gc.h ../byterun/mlvalues.h \ + ../byterun/major_gc.h ../byterun/freelist.h ../byterun/misc.h \ + ../byterun/mlvalues.h ../byterun/misc.h ../byterun/minor_gc.h \ + ../byterun/misc.h ../byterun/misc.h ../byterun/mlvalues.h \ + ../byterun/fail.h ../byterun/misc.h ../byterun/mlvalues.h \ + ../byterun/osdeps.h ../byterun/misc.h ../byterun/signals.h \ + ../byterun/misc.h ../byterun/mlvalues.h ../byterun/signals_machdep.h \ + signals_osdep.h stack.h ../byterun/sys.h ../byterun/misc.h startup.p.o: startup.c ../byterun/callback.h ../byterun/mlvalues.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 + ../byterun/config.h ../byterun/../config/m.h ../byterun/../config/s.h \ + ../byterun/misc.h ../byterun/config.h ../byterun/custom.h \ + ../byterun/mlvalues.h ../byterun/fail.h ../byterun/misc.h \ + ../byterun/mlvalues.h ../byterun/gc.h ../byterun/mlvalues.h \ + ../byterun/gc_ctrl.h ../byterun/misc.h ../byterun/osdeps.h \ + ../byterun/misc.h ../byterun/printexc.h ../byterun/misc.h \ + ../byterun/mlvalues.h ../byterun/sys.h ../byterun/misc.h str.p.o: str.c ../byterun/alloc.h ../byterun/misc.h ../byterun/config.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 + ../byterun/../config/m.h ../byterun/../config/s.h ../byterun/mlvalues.h \ + ../byterun/config.h ../byterun/misc.h ../byterun/fail.h \ + ../byterun/misc.h ../byterun/mlvalues.h +sys.p.o: sys.c ../byterun/config.h ../byterun/../config/m.h \ + ../byterun/../config/s.h ../byterun/alloc.h ../byterun/misc.h \ + ../byterun/config.h ../byterun/mlvalues.h ../byterun/config.h \ + ../byterun/misc.h ../byterun/debugger.h ../byterun/misc.h \ + ../byterun/mlvalues.h ../byterun/fail.h ../byterun/misc.h \ + ../byterun/mlvalues.h ../byterun/instruct.h ../byterun/osdeps.h \ + ../byterun/misc.h ../byterun/signals.h ../byterun/misc.h \ + ../byterun/mlvalues.h ../byterun/stacks.h ../byterun/misc.h \ + ../byterun/mlvalues.h ../byterun/memory.h ../byterun/config.h \ + ../byterun/gc.h ../byterun/mlvalues.h ../byterun/major_gc.h \ + ../byterun/freelist.h ../byterun/misc.h ../byterun/mlvalues.h \ + ../byterun/misc.h ../byterun/minor_gc.h ../byterun/misc.h \ + ../byterun/misc.h ../byterun/mlvalues.h ../byterun/sys.h \ + ../byterun/misc.h +terminfo.p.o: terminfo.c ../byterun/config.h ../byterun/../config/m.h \ + ../byterun/../config/s.h ../byterun/alloc.h ../byterun/misc.h \ + ../byterun/config.h ../byterun/mlvalues.h ../byterun/config.h \ + ../byterun/misc.h ../byterun/fail.h ../byterun/misc.h \ + ../byterun/mlvalues.h ../byterun/io.h ../byterun/misc.h \ + ../byterun/mlvalues.h +unix.p.o: unix.c ../byterun/config.h ../byterun/../config/m.h \ + ../byterun/../config/s.h ../byterun/memory.h ../byterun/config.h \ + ../byterun/gc.h ../byterun/mlvalues.h ../byterun/config.h \ + ../byterun/misc.h ../byterun/config.h ../byterun/major_gc.h \ + ../byterun/freelist.h ../byterun/misc.h ../byterun/mlvalues.h \ + ../byterun/misc.h ../byterun/minor_gc.h ../byterun/misc.h \ + ../byterun/misc.h ../byterun/mlvalues.h ../byterun/osdeps.h \ + ../byterun/misc.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 + ../byterun/../config/m.h ../byterun/../config/s.h ../byterun/mlvalues.h \ + ../byterun/config.h ../byterun/misc.h ../byterun/fail.h \ + ../byterun/misc.h ../byterun/mlvalues.h ../byterun/major_gc.h \ + ../byterun/freelist.h ../byterun/misc.h ../byterun/mlvalues.h \ + ../byterun/misc.h ../byterun/memory.h ../byterun/config.h \ + ../byterun/gc.h ../byterun/mlvalues.h ../byterun/major_gc.h \ + ../byterun/minor_gc.h ../byterun/misc.h ../byterun/misc.h \ + ../byterun/mlvalues.h diff --git a/asmrun/Makefile b/asmrun/Makefile index b8034bab4..cbdc94346 100644 --- a/asmrun/Makefile +++ b/asmrun/Makefile @@ -181,9 +181,8 @@ clean:: rm -f *.o *.a *~ depend: $(COBJS:.o=.c) ${LINKEDFILES} - gcc -MM $(FLAGS) *.c > .depend + -gcc -MM $(FLAGS) *.c > .depend gcc -MM $(FLAGS) -DDEBUG *.c | sed -e 's/\.o/.d.o/' >> .depend gcc -MM $(FLAGS) -DDEBUG *.c | sed -e 's/\.o/.p.o/' >> .depend include .depend - diff --git a/asmrun/i386.S b/asmrun/i386.S index f47d43aca..be02b911e 100644 --- a/asmrun/i386.S +++ b/asmrun/i386.S @@ -89,6 +89,7 @@ LBL(105): pushl %ebx pushl %eax movl %esp, G(caml_gc_regs) + /* MacOSX note: 16-alignment of stack preserved at this point */ /* Call the garbage collector */ call G(caml_garbage_collection) /* Restore all regs used by the code generator */ @@ -116,7 +117,13 @@ LBL(100): movl %eax, G(caml_last_return_address) leal 4(%esp), %eax movl %eax, G(caml_bottom_of_stack) +#ifdef SYS_macosx + subl $12, %esp /* 16-alignment */ +#endif call LBL(105) +#ifdef SYS_macosx + addl $12, %esp /* undo 16-alignment */ +#endif jmp G(caml_alloc1) .align FUNCTION_ALIGN @@ -133,7 +140,13 @@ LBL(101): movl %eax, G(caml_last_return_address) leal 4(%esp), %eax movl %eax, G(caml_bottom_of_stack) +#ifdef SYS_macosx + subl $12, %esp /* 16-alignment */ +#endif call LBL(105) +#ifdef SYS_macosx + addl $12, %esp /* undo 16-alignment */ +#endif jmp G(caml_alloc2) .align FUNCTION_ALIGN @@ -150,7 +163,13 @@ LBL(102): movl %eax, G(caml_last_return_address) leal 4(%esp), %eax movl %eax, G(caml_bottom_of_stack) +#ifdef SYS_macosx + subl $12, %esp /* 16-alignment */ +#endif call LBL(105) +#ifdef SYS_macosx + addl $12, %esp /* undo 16-alignment */ +#endif jmp G(caml_alloc3) .align FUNCTION_ALIGN @@ -171,7 +190,13 @@ LBL(103): movl %eax, G(caml_last_return_address) leal 8(%esp), %eax movl %eax, G(caml_bottom_of_stack) +#ifdef SYS_macosx + subl $8, %esp /* 16-alignment */ +#endif call LBL(105) +#ifdef SYS_macosx + addl $8, %esp /* undo 16-alignment */ +#endif popl %eax /* recover desired size */ jmp G(caml_allocN) diff --git a/asmrun/signals.c b/asmrun/signals.c index 000360d25..30d9402f4 100644 --- a/asmrun/signals.c +++ b/asmrun/signals.c @@ -312,7 +312,7 @@ value caml_install_signal_handler(value signal_number, value action) /* ML */ CAMLlocal1 (res); sig = caml_convert_signal_number(Int_val(signal_number)); - if (sig < 0 || sig >= NSIG) + if (sig < 0 || sig >= NSIG) caml_invalid_argument("Sys.signal: unavailable signal"); #ifdef POSIX_SIGNALS switch(action) { diff --git a/boot/ocamlc b/boot/ocamlc Binary files differindex 94cd0391b..39932e88f 100755 --- a/boot/ocamlc +++ b/boot/ocamlc diff --git a/boot/ocamllex b/boot/ocamllex Binary files differindex 095f11caa..9b69b8328 100755 --- a/boot/ocamllex +++ b/boot/ocamllex diff --git a/byterun/.depend b/byterun/.depend index 441b7e792..c074bc249 100644 --- a/byterun/.depend +++ b/byterun/.depend @@ -77,7 +77,8 @@ major_gc.o: major_gc.c compact.h config.h ../config/m.h ../config/s.h \ compatibility.h misc.h custom.h mlvalues.h fail.h finalise.h roots.h \ memory.h gc.h major_gc.h freelist.h minor_gc.h gc_ctrl.h weak.h md5.o: md5.c alloc.h compatibility.h misc.h config.h ../config/m.h \ - ../config/s.h mlvalues.h fail.h md5.h io.h reverse.h + ../config/s.h mlvalues.h fail.h md5.h io.h memory.h gc.h major_gc.h \ + freelist.h minor_gc.h reverse.h memory.o: memory.c fail.h compatibility.h misc.h config.h ../config/m.h \ ../config/s.h mlvalues.h freelist.h gc.h gc_ctrl.h major_gc.h memory.h \ minor_gc.h signals.h @@ -127,11 +128,8 @@ unix.o: unix.c config.h ../config/m.h ../config/s.h compatibility.h \ memory.h gc.h mlvalues.h misc.h major_gc.h freelist.h minor_gc.h \ osdeps.h weak.o: weak.c alloc.h compatibility.h misc.h config.h ../config/m.h \ - ../config/s.h mlvalues.h fail.h memory.h gc.h major_gc.h freelist.h \ + ../config/s.h mlvalues.h fail.h major_gc.h freelist.h memory.h gc.h \ minor_gc.h -win32.o: win32.c memory.h compatibility.h config.h ../config/m.h \ - ../config/s.h gc.h mlvalues.h misc.h major_gc.h freelist.h minor_gc.h \ - osdeps.h signals.h alloc.d.o: alloc.c alloc.h compatibility.h misc.h config.h ../config/m.h \ ../config/s.h mlvalues.h custom.h major_gc.h freelist.h memory.h gc.h \ minor_gc.h stacks.h @@ -213,7 +211,8 @@ major_gc.d.o: major_gc.c compact.h config.h ../config/m.h ../config/s.h \ compatibility.h misc.h custom.h mlvalues.h fail.h finalise.h roots.h \ memory.h gc.h major_gc.h freelist.h minor_gc.h gc_ctrl.h weak.h md5.d.o: md5.c alloc.h compatibility.h misc.h config.h ../config/m.h \ - ../config/s.h mlvalues.h fail.h md5.h io.h reverse.h + ../config/s.h mlvalues.h fail.h md5.h io.h memory.h gc.h major_gc.h \ + freelist.h minor_gc.h reverse.h memory.d.o: memory.c fail.h compatibility.h misc.h config.h ../config/m.h \ ../config/s.h mlvalues.h freelist.h gc.h gc_ctrl.h major_gc.h memory.h \ minor_gc.h signals.h @@ -263,8 +262,5 @@ unix.d.o: unix.c config.h ../config/m.h ../config/s.h compatibility.h \ memory.h gc.h mlvalues.h misc.h major_gc.h freelist.h minor_gc.h \ osdeps.h weak.d.o: weak.c alloc.h compatibility.h misc.h config.h ../config/m.h \ - ../config/s.h mlvalues.h fail.h memory.h gc.h major_gc.h freelist.h \ + ../config/s.h mlvalues.h fail.h major_gc.h freelist.h memory.h gc.h \ minor_gc.h -win32.d.o: win32.c memory.h compatibility.h config.h ../config/m.h \ - ../config/s.h gc.h mlvalues.h misc.h major_gc.h freelist.h minor_gc.h \ - osdeps.h signals.h diff --git a/byterun/Makefile b/byterun/Makefile index d6e4a6340..cedee2052 100644 --- a/byterun/Makefile +++ b/byterun/Makefile @@ -115,7 +115,7 @@ version.h : ../stdlib/sys.ml @ if test -f $*.f.o; then mv $*.f.o $*.o; else :; fi depend : prims.c opnames.h jumptbl.h version.h - gcc -MM $(BYTECCCOMPOPTS) *.c > .depend - gcc -MM $(BYTECCCOMPOPTS) -DDEBUG *.c | sed -e 's/\.o/.d.o/' >> .depend + -gcc -MM $(BYTECCCOMPOPTS) *.c > .depend + -gcc -MM $(BYTECCCOMPOPTS) -DDEBUG *.c | sed -e 's/\.o/.d.o/' >> .depend include .depend diff --git a/byterun/extern.c b/byterun/extern.c index 81bed2fbe..8ff896e8a 100644 --- a/byterun/extern.c +++ b/byterun/extern.c @@ -401,7 +401,7 @@ static void extern_rec(value v) void (*serialize)(value v, uintnat * wsize_32, uintnat * wsize_64) = Custom_ops_val(v)->serialize; - if (serialize == NULL) + if (serialize == NULL) extern_invalid_argument("output_value: abstract value (Custom)"); Write(CODE_CUSTOM); writeblock(ident, strlen(ident) + 1); @@ -536,17 +536,23 @@ CAMLprim value caml_output_value_to_string(value v, value flags) { intnat len, ofs; value res; - struct output_block * blk; + struct output_block * blk, * nextblk; init_extern_output(); len = extern_value(v, flags); + /* PR#4030: it is prudent to save extern_output_first before allocating + the result, as in caml_output_val */ + blk = extern_output_first; res = caml_alloc_string(len); - for (ofs = 0, blk = extern_output_first; blk != NULL; blk = blk->next) { + ofs = 0; + while (blk != NULL) { int n = blk->end - blk->data; memmove(&Byte(res, ofs), blk->data, n); ofs += n; + nextblk = blk->next; + free(blk); + blk = nextblk; } - free_extern_output(); return res; } @@ -701,7 +707,7 @@ CAMLexport void caml_serialize_block_float_8(void * data, intnat len) memmove(extern_ptr, data, len * 8); extern_ptr += len * 8; #elif ARCH_FLOAT_ENDIANNESS == 0x76543210 - { + { unsigned char * p; char * q; for (p = data, q = extern_ptr; len > 0; len--, p += 8, q += 8) @@ -709,7 +715,7 @@ CAMLexport void caml_serialize_block_float_8(void * data, intnat len) extern_ptr = q; } #else - { + { unsigned char * p; char * q; for (p = data, q = extern_ptr; len > 0; len--, p += 8, q += 8) diff --git a/byterun/memory.h b/byterun/memory.h index 89c7712c3..6c7427ce1 100644 --- a/byterun/memory.h +++ b/byterun/memory.h @@ -278,8 +278,9 @@ CAMLextern struct caml__roots_block *caml_local_roots; /* defined in roots.c */ }while (0) #define CAMLreturn(result) do{ \ + value caml__temp_result = (result); \ caml_local_roots = caml__frame; \ - return (result); \ + return (caml__temp_result); \ }while(0) #define CAMLnoreturn ((void) caml__frame) diff --git a/byterun/sys.c b/byterun/sys.c index 7e130c065..9d3bedbbb 100644 --- a/byterun/sys.c +++ b/byterun/sys.c @@ -72,7 +72,7 @@ CAMLexport void caml_sys_error(value arg) CAMLparam1 (arg); char * err; CAMLlocal1 (str); - + if (errno == EAGAIN || errno == EWOULDBLOCK) { caml_raise_sys_blocked_io(); } else { @@ -233,7 +233,7 @@ CAMLprim value caml_sys_system_command(value command) int status, retcode; char *buf; intnat len; - + len = caml_string_length (command); buf = caml_stat_alloc (len + 1); memmove (buf, String_val (command), len + 1); @@ -311,7 +311,10 @@ CAMLprim value caml_sys_read_directory(value path) struct ext_table tbl; caml_ext_table_init(&tbl, 50); - if (caml_read_directory(String_val(path), &tbl) == -1) caml_sys_error(path); + if (caml_read_directory(String_val(path), &tbl) == -1){ + caml_ext_table_free(&tbl, 1); + caml_sys_error(path); + } caml_ext_table_add(&tbl, NULL); result = caml_copy_string_array((char const **) tbl.contents); caml_ext_table_free(&tbl, 1); diff --git a/camlp4/Makefile b/camlp4/Makefile index 5ee3b97c4..302b12ebf 100644 --- a/camlp4/Makefile +++ b/camlp4/Makefile @@ -1,3 +1,15 @@ +######################################################################### +# # +# Objective Caml # +# # +# Nicolas Pouillard, projet Gallium, INRIA Rocquencourt # +# # +# Copyright 2006 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$ OCAMLRUN=CAML_LD_LIBRARY_PATH=../otherlibs/unix ../boot/ocamlrun @@ -31,6 +43,8 @@ uninstall: rm -rf "$(LIBDIR)/camlp4" cd "$(BINDIR)"; rm -f *camlp4* +depend: + # Normal bootstrap bootstrap: backup promote clean all compare @@ -52,5 +66,5 @@ compare: fi .PHONY: clean install all uninstall backup restore boot-clean promote-debug \ - promote compare opt doc cleanall all-local clean-local + promote compare opt doc cleanall all-local clean-local depend diff --git a/config/Makefile.msvc b/config/Makefile.msvc index 4e3a5e013..fa1787f32 100644 --- a/config/Makefile.msvc +++ b/config/Makefile.msvc @@ -45,7 +45,7 @@ EXE=.exe ########## Configuration for the bytecode compiler ### Which C compiler to use for the bytecode interpreter. -BYTECC=cl /nologo +BYTECC=cl /nologo -D_CRT_SECURE_NO_DEPRECATE ### Additional compile-time options for $(BYTECC). (For static linking.) BYTECCCOMPOPTS=/Ox /MT @@ -67,7 +67,7 @@ CPP=cl /nologo /EP MKDLL=link /nologo /dll /out:$(1) /implib:$(2) $(3) ### How to build a static library -MKLIB=link /lib /nologo /debugtype:CV /out:$(1) $(2) +MKLIB=link /lib /nologo /out:$(1) $(2) ### Canonicalize the name of a system library SYSLIB=$(1).lib @@ -90,7 +90,7 @@ MODEL=default SYSTEM=win32 ### Which C compiler to use for the native-code compiler. -NATIVECC=cl /nologo +NATIVECC=cl /nologo -D_CRT_SECURE_NO_DEPRECATE ### Additional compile-time options for $(NATIVECC). NATIVECCCOMPOPTS=/Ox /MT @@ -99,7 +99,7 @@ NATIVECCCOMPOPTS=/Ox /MT NATIVECCLINKOPTS=/MT ### Build partially-linked object file -PARTIALLD=lib /nologo /debugtype:cv +PARTIALLD=lib /nologo PACKLD=ld -r --oformat pe-i386 ############# Configuration for the contributed libraries diff --git a/debugger/.depend b/debugger/.depend index 84bc0e598..996033416 100644 --- a/debugger/.depend +++ b/debugger/.depend @@ -1,60 +1,64 @@ -breakpoints.cmi: primitives.cmi ../bytecomp/instruct.cmi -checkpoints.cmi: primitives.cmi debugcom.cmi -debugcom.cmi: primitives.cmi +breakpoints.cmi: ./primitives.cmi ../bytecomp/instruct.cmi +checkpoints.cmi: ./primitives.cmi ./debugcom.cmi +debugcom.cmi: ./primitives.cmi envaux.cmi: ../typing/path.cmi ../bytecomp/instruct.cmi ../typing/env.cmi -eval.cmi: ../typing/types.cmi ../typing/path.cmi parser_aux.cmi \ +eval.cmi: ../typing/types.cmi ../typing/path.cmi ./parser_aux.cmi \ ../parsing/longident.cmi ../bytecomp/instruct.cmi ../typing/ident.cmi \ - ../typing/env.cmi debugcom.cmi + ../typing/env.cmi ./debugcom.cmi events.cmi: ../bytecomp/instruct.cmi -frames.cmi: primitives.cmi ../bytecomp/instruct.cmi -input_handling.cmi: primitives.cmi -lexer.cmi: parser.cmi -loadprinter.cmi: ../parsing/longident.cmi dynlink.cmi -parser_aux.cmi: primitives.cmi ../parsing/longident.cmi -parser.cmi: parser_aux.cmi ../parsing/longident.cmi -pattern_matching.cmi: ../typing/typedtree.cmi parser_aux.cmi debugcom.cmi +frames.cmi: ./primitives.cmi ../bytecomp/instruct.cmi +input_handling.cmi: ./primitives.cmi +lexer.cmi: ./parser.cmi +loadprinter.cmi: ../parsing/longident.cmi ./dynlink.cmi +parser.cmi: ./parser_aux.cmi ../parsing/longident.cmi +parser_aux.cmi: ./primitives.cmi ../parsing/longident.cmi +pattern_matching.cmi: ../typing/typedtree.cmi ./parser_aux.cmi ./debugcom.cmi pos.cmi: ../bytecomp/instruct.cmi primitives.cmi: ../otherlibs/unix/unix.cmi -printval.cmi: ../typing/types.cmi ../typing/path.cmi parser_aux.cmi \ - ../typing/env.cmi debugcom.cmi -program_loading.cmi: primitives.cmi +printval.cmi: ../typing/types.cmi ../typing/path.cmi ./parser_aux.cmi \ + ../typing/env.cmi ./debugcom.cmi +program_loading.cmi: ./primitives.cmi show_information.cmi: ../bytecomp/instruct.cmi show_source.cmi: ../bytecomp/instruct.cmi symbols.cmi: ../bytecomp/instruct.cmi -time_travel.cmi: primitives.cmi +time_travel.cmi: ./primitives.cmi unix_tools.cmi: ../otherlibs/unix/unix.cmi -breakpoints.cmo: symbols.cmi source.cmi primitives.cmi pos.cmi \ - ../bytecomp/instruct.cmi exec.cmi debugcom.cmi checkpoints.cmi \ +breakpoints.cmo: ./symbols.cmi ./source.cmi ./primitives.cmi ./pos.cmi \ + ../bytecomp/instruct.cmi ./exec.cmi ./debugcom.cmi ./checkpoints.cmi \ breakpoints.cmi -breakpoints.cmx: symbols.cmx source.cmx primitives.cmx pos.cmx \ - ../bytecomp/instruct.cmx exec.cmx debugcom.cmx checkpoints.cmx \ +breakpoints.cmx: ./symbols.cmx ./source.cmx ./primitives.cmx ./pos.cmx \ + ../bytecomp/instruct.cmx ./exec.cmx ./debugcom.cmx ./checkpoints.cmx \ breakpoints.cmi -checkpoints.cmo: primitives.cmi int64ops.cmi debugcom.cmi checkpoints.cmi -checkpoints.cmx: primitives.cmx int64ops.cmx debugcom.cmx checkpoints.cmi -command_line.cmo: unix_tools.cmi ../otherlibs/unix/unix.cmi \ - ../typing/types.cmi time_travel.cmi symbols.cmi source.cmi \ - show_source.cmi show_information.cmi program_management.cmi \ - program_loading.cmi printval.cmi primitives.cmi pos.cmi parser_aux.cmi \ - parser.cmi parameters.cmi ../utils/misc.cmi ../parsing/location.cmi \ - loadprinter.cmi lexer.cmi int64ops.cmi ../bytecomp/instruct.cmi \ - input_handling.cmi history.cmi frames.cmi events.cmi eval.cmi envaux.cmi \ - debugger_config.cmi debugcom.cmi ../typing/ctype.cmi ../utils/config.cmi \ - checkpoints.cmi breakpoints.cmi command_line.cmi -command_line.cmx: unix_tools.cmx ../otherlibs/unix/unix.cmx \ - ../typing/types.cmx time_travel.cmx symbols.cmx source.cmx \ - show_source.cmx show_information.cmx program_management.cmx \ - program_loading.cmx printval.cmx primitives.cmx pos.cmx parser_aux.cmi \ - parser.cmx parameters.cmx ../utils/misc.cmx ../parsing/location.cmx \ - loadprinter.cmx lexer.cmx int64ops.cmx ../bytecomp/instruct.cmx \ - input_handling.cmx history.cmx frames.cmx events.cmx eval.cmx envaux.cmx \ - debugger_config.cmx debugcom.cmx ../typing/ctype.cmx ../utils/config.cmx \ - checkpoints.cmx breakpoints.cmx command_line.cmi -debugcom.cmo: primitives.cmi ../utils/misc.cmi int64ops.cmi \ - input_handling.cmi debugcom.cmi -debugcom.cmx: primitives.cmx ../utils/misc.cmx int64ops.cmx \ - input_handling.cmx debugcom.cmi -debugger_config.cmo: int64ops.cmi debugger_config.cmi -debugger_config.cmx: int64ops.cmx debugger_config.cmi +checkpoints.cmo: ./primitives.cmi ./int64ops.cmi ./debugcom.cmi \ + checkpoints.cmi +checkpoints.cmx: ./primitives.cmx ./int64ops.cmx ./debugcom.cmx \ + checkpoints.cmi +command_line.cmo: ./unix_tools.cmi ../otherlibs/unix/unix.cmi \ + ../typing/types.cmi ./time_travel.cmi ./symbols.cmi ./source.cmi \ + ./show_source.cmi ./show_information.cmi ./program_management.cmi \ + ./program_loading.cmi ./printval.cmi ./primitives.cmi ./pos.cmi \ + ./parser_aux.cmi ./parser.cmi ./parameters.cmi ../utils/misc.cmi \ + ../parsing/location.cmi ./loadprinter.cmi ./lexer.cmi ./int64ops.cmi \ + ../bytecomp/instruct.cmi ./input_handling.cmi ./history.cmi ./frames.cmi \ + ./events.cmi ./eval.cmi ./envaux.cmi ./debugger_config.cmi ./debugcom.cmi \ + ../typing/ctype.cmi ../utils/config.cmi ./checkpoints.cmi \ + ./breakpoints.cmi command_line.cmi +command_line.cmx: ./unix_tools.cmx ../otherlibs/unix/unix.cmx \ + ../typing/types.cmx ./time_travel.cmx ./symbols.cmx ./source.cmx \ + ./show_source.cmx ./show_information.cmx ./program_management.cmx \ + ./program_loading.cmx ./printval.cmx ./primitives.cmx ./pos.cmx \ + ./parser_aux.cmi ./parser.cmx ./parameters.cmx ../utils/misc.cmx \ + ../parsing/location.cmx ./loadprinter.cmx ./lexer.cmx ./int64ops.cmx \ + ../bytecomp/instruct.cmx ./input_handling.cmx ./history.cmx ./frames.cmx \ + ./events.cmx ./eval.cmx ./envaux.cmx ./debugger_config.cmx ./debugcom.cmx \ + ../typing/ctype.cmx ../utils/config.cmx ./checkpoints.cmx \ + ./breakpoints.cmx command_line.cmi +debugcom.cmo: ./primitives.cmi ../utils/misc.cmi ./int64ops.cmi \ + ./input_handling.cmi debugcom.cmi +debugcom.cmx: ./primitives.cmx ../utils/misc.cmx ./int64ops.cmx \ + ./input_handling.cmx debugcom.cmi +debugger_config.cmo: ./int64ops.cmi debugger_config.cmi +debugger_config.cmx: ./int64ops.cmx debugger_config.cmi dynlink.cmo: ../bytecomp/symtable.cmi ../bytecomp/opcodes.cmo \ ../utils/misc.cmi ../bytecomp/meta.cmi ../bytecomp/dll.cmi \ ../utils/consistbl.cmi ../utils/config.cmi ../bytecomp/cmo_format.cmi \ @@ -69,137 +73,145 @@ envaux.cmo: ../typing/types.cmi ../typing/printtyp.cmi ../typing/path.cmi \ envaux.cmx: ../typing/types.cmx ../typing/printtyp.cmx ../typing/path.cmx \ ../typing/mtype.cmx ../utils/misc.cmx ../bytecomp/instruct.cmx \ ../typing/env.cmx envaux.cmi -eval.cmo: ../typing/types.cmi ../bytecomp/symtable.cmi printval.cmi \ +eval.cmo: ../typing/types.cmi ../bytecomp/symtable.cmi ./printval.cmi \ ../typing/printtyp.cmi ../typing/predef.cmi ../typing/path.cmi \ - parser_aux.cmi ../utils/misc.cmi ../parsing/longident.cmi \ - ../bytecomp/instruct.cmi ../typing/ident.cmi frames.cmi ../typing/env.cmi \ - debugger_config.cmi debugcom.cmi ../typing/ctype.cmi ../typing/btype.cmi \ - eval.cmi -eval.cmx: ../typing/types.cmx ../bytecomp/symtable.cmx printval.cmx \ + ./parser_aux.cmi ../utils/misc.cmi ../parsing/longident.cmi \ + ../bytecomp/instruct.cmi ../typing/ident.cmi ./frames.cmi \ + ../typing/env.cmi ./debugger_config.cmi ./debugcom.cmi \ + ../typing/ctype.cmi ../typing/btype.cmi eval.cmi +eval.cmx: ../typing/types.cmx ../bytecomp/symtable.cmx ./printval.cmx \ ../typing/printtyp.cmx ../typing/predef.cmx ../typing/path.cmx \ - parser_aux.cmi ../utils/misc.cmx ../parsing/longident.cmx \ - ../bytecomp/instruct.cmx ../typing/ident.cmx frames.cmx ../typing/env.cmx \ - debugger_config.cmx debugcom.cmx ../typing/ctype.cmx ../typing/btype.cmx \ - eval.cmi -events.cmo: primitives.cmi ../parsing/location.cmi ../bytecomp/instruct.cmi \ - checkpoints.cmi events.cmi -events.cmx: primitives.cmx ../parsing/location.cmx ../bytecomp/instruct.cmx \ - checkpoints.cmx events.cmi + ./parser_aux.cmi ../utils/misc.cmx ../parsing/longident.cmx \ + ../bytecomp/instruct.cmx ../typing/ident.cmx ./frames.cmx \ + ../typing/env.cmx ./debugger_config.cmx ./debugcom.cmx \ + ../typing/ctype.cmx ../typing/btype.cmx eval.cmi +events.cmo: ./primitives.cmi ../parsing/location.cmi ../bytecomp/instruct.cmi \ + ./checkpoints.cmi events.cmi +events.cmx: ./primitives.cmx ../parsing/location.cmx ../bytecomp/instruct.cmx \ + ./checkpoints.cmx events.cmi exec.cmo: exec.cmi exec.cmx: exec.cmi -frames.cmo: symbols.cmi primitives.cmi ../utils/misc.cmi \ - ../bytecomp/instruct.cmi events.cmi debugcom.cmi checkpoints.cmi \ +frames.cmo: ./symbols.cmi ./primitives.cmi ../utils/misc.cmi \ + ../bytecomp/instruct.cmi ./events.cmi ./debugcom.cmi ./checkpoints.cmi \ frames.cmi -frames.cmx: symbols.cmx primitives.cmx ../utils/misc.cmx \ - ../bytecomp/instruct.cmx events.cmx debugcom.cmx checkpoints.cmx \ +frames.cmx: ./symbols.cmx ./primitives.cmx ../utils/misc.cmx \ + ../bytecomp/instruct.cmx ./events.cmx ./debugcom.cmx ./checkpoints.cmx \ frames.cmi -history.cmo: primitives.cmi ../utils/misc.cmi int64ops.cmi \ - debugger_config.cmi checkpoints.cmi history.cmi -history.cmx: primitives.cmx ../utils/misc.cmx int64ops.cmx \ - debugger_config.cmx checkpoints.cmx history.cmi -input_handling.cmo: ../otherlibs/unix/unix.cmi primitives.cmi lexer.cmi \ +history.cmo: ./primitives.cmi ../utils/misc.cmi ./int64ops.cmi \ + ./debugger_config.cmi ./checkpoints.cmi history.cmi +history.cmx: ./primitives.cmx ../utils/misc.cmx ./int64ops.cmx \ + ./debugger_config.cmx ./checkpoints.cmx history.cmi +input_handling.cmo: ../otherlibs/unix/unix.cmi ./primitives.cmi ./lexer.cmi \ input_handling.cmi -input_handling.cmx: ../otherlibs/unix/unix.cmx primitives.cmx lexer.cmx \ +input_handling.cmx: ../otherlibs/unix/unix.cmx ./primitives.cmx ./lexer.cmx \ input_handling.cmi int64ops.cmo: int64ops.cmi int64ops.cmx: int64ops.cmi -lexer.cmo: primitives.cmi parser.cmi lexer.cmi -lexer.cmx: primitives.cmx parser.cmx lexer.cmi -loadprinter.cmo: ../typing/types.cmi ../bytecomp/symtable.cmi printval.cmi \ +lexer.cmo: ./primitives.cmi ./parser.cmi lexer.cmi +lexer.cmx: ./primitives.cmx ./parser.cmx lexer.cmi +loadprinter.cmo: ../typing/types.cmi ../bytecomp/symtable.cmi ./printval.cmi \ ../typing/printtyp.cmi ../typing/path.cmi ../utils/misc.cmi \ ../parsing/longident.cmi ../typing/ident.cmi ../typing/env.cmi \ - dynlink.cmi debugger_config.cmi ../typing/ctype.cmi ../utils/config.cmi \ - loadprinter.cmi -loadprinter.cmx: ../typing/types.cmx ../bytecomp/symtable.cmx printval.cmx \ + ./dynlink.cmi ./debugger_config.cmi ../typing/ctype.cmi \ + ../utils/config.cmi loadprinter.cmi +loadprinter.cmx: ../typing/types.cmx ../bytecomp/symtable.cmx ./printval.cmx \ ../typing/printtyp.cmx ../typing/path.cmx ../utils/misc.cmx \ ../parsing/longident.cmx ../typing/ident.cmx ../typing/env.cmx \ - dynlink.cmx debugger_config.cmx ../typing/ctype.cmx ../utils/config.cmx \ - loadprinter.cmi -main.cmo: unix_tools.cmi ../otherlibs/unix/unix.cmi time_travel.cmi \ - show_information.cmi program_management.cmi primitives.cmi parameters.cmi \ - ../utils/misc.cmi input_handling.cmi frames.cmi exec.cmi \ - ../typing/env.cmi debugger_config.cmi ../utils/config.cmi \ - command_line.cmi checkpoints.cmi -main.cmx: unix_tools.cmx ../otherlibs/unix/unix.cmx time_travel.cmx \ - show_information.cmx program_management.cmx primitives.cmx parameters.cmx \ - ../utils/misc.cmx input_handling.cmx frames.cmx exec.cmx \ - ../typing/env.cmx debugger_config.cmx ../utils/config.cmx \ - command_line.cmx checkpoints.cmx -parameters.cmo: primitives.cmi ../utils/misc.cmi envaux.cmi \ + ./dynlink.cmx ./debugger_config.cmx ../typing/ctype.cmx \ + ../utils/config.cmx loadprinter.cmi +main.cmo: ./unix_tools.cmi ../otherlibs/unix/unix.cmi ./time_travel.cmi \ + ./show_information.cmi ./program_management.cmi ./primitives.cmi \ + ./parameters.cmi ../utils/misc.cmi ./input_handling.cmi ./frames.cmi \ + ./exec.cmi ../typing/env.cmi ./debugger_config.cmi ../utils/config.cmi \ + ./command_line.cmi ./checkpoints.cmi +main.cmx: ./unix_tools.cmx ../otherlibs/unix/unix.cmx ./time_travel.cmx \ + ./show_information.cmx ./program_management.cmx ./primitives.cmx \ + ./parameters.cmx ../utils/misc.cmx ./input_handling.cmx ./frames.cmx \ + ./exec.cmx ../typing/env.cmx ./debugger_config.cmx ../utils/config.cmx \ + ./command_line.cmx ./checkpoints.cmx +parameters.cmo: ./primitives.cmi ../utils/misc.cmi ./envaux.cmi \ ../utils/config.cmi parameters.cmi -parameters.cmx: primitives.cmx ../utils/misc.cmx envaux.cmx \ +parameters.cmx: ./primitives.cmx ../utils/misc.cmx ./envaux.cmx \ ../utils/config.cmx parameters.cmi -parser.cmo: primitives.cmi parser_aux.cmi ../parsing/longident.cmi \ - int64ops.cmi input_handling.cmi parser.cmi -parser.cmx: primitives.cmx parser_aux.cmi ../parsing/longident.cmx \ - int64ops.cmx input_handling.cmx parser.cmi -pattern_matching.cmo: ../typing/typedtree.cmi parser_aux.cmi \ - ../utils/misc.cmi debugger_config.cmi debugcom.cmi ../typing/ctype.cmi \ - pattern_matching.cmi -pattern_matching.cmx: ../typing/typedtree.cmx parser_aux.cmi \ - ../utils/misc.cmx debugger_config.cmx debugcom.cmx ../typing/ctype.cmx \ - pattern_matching.cmi -pos.cmo: source.cmi primitives.cmi ../parsing/location.cmi \ +parser.cmo: ./primitives.cmi ./parser_aux.cmi ../parsing/longident.cmi \ + ./int64ops.cmi ./input_handling.cmi parser.cmi +parser.cmx: ./primitives.cmx ./parser_aux.cmi ../parsing/longident.cmx \ + ./int64ops.cmx ./input_handling.cmx parser.cmi +pattern_matching.cmo: ../typing/typedtree.cmi ./parser_aux.cmi \ + ../utils/misc.cmi ./debugger_config.cmi ./debugcom.cmi \ + ../typing/ctype.cmi pattern_matching.cmi +pattern_matching.cmx: ../typing/typedtree.cmx ./parser_aux.cmi \ + ../utils/misc.cmx ./debugger_config.cmx ./debugcom.cmx \ + ../typing/ctype.cmx pattern_matching.cmi +pos.cmo: ./source.cmi ./primitives.cmi ../parsing/location.cmi \ ../bytecomp/instruct.cmi pos.cmi -pos.cmx: source.cmx primitives.cmx ../parsing/location.cmx \ +pos.cmx: ./source.cmx ./primitives.cmx ../parsing/location.cmx \ ../bytecomp/instruct.cmx pos.cmi primitives.cmo: ../otherlibs/unix/unix.cmi primitives.cmi primitives.cmx: ../otherlibs/unix/unix.cmx primitives.cmi printval.cmo: ../typing/types.cmi ../bytecomp/symtable.cmi \ - ../typing/printtyp.cmi ../typing/path.cmi parser_aux.cmi \ + ../typing/printtyp.cmi ../typing/path.cmi ./parser_aux.cmi \ ../typing/outcometree.cmi ../typing/oprint.cmi ../utils/misc.cmi \ - ../toplevel/genprintval.cmi debugcom.cmi printval.cmi + ../toplevel/genprintval.cmi ./debugcom.cmi printval.cmi printval.cmx: ../typing/types.cmx ../bytecomp/symtable.cmx \ - ../typing/printtyp.cmx ../typing/path.cmx parser_aux.cmi \ + ../typing/printtyp.cmx ../typing/path.cmx ./parser_aux.cmi \ ../typing/outcometree.cmi ../typing/oprint.cmx ../utils/misc.cmx \ - ../toplevel/genprintval.cmx debugcom.cmx printval.cmi -program_loading.cmo: unix_tools.cmi ../otherlibs/unix/unix.cmi primitives.cmi \ - parameters.cmi ../utils/misc.cmi input_handling.cmi debugger_config.cmi \ - program_loading.cmi -program_loading.cmx: unix_tools.cmx ../otherlibs/unix/unix.cmx primitives.cmx \ - parameters.cmx ../utils/misc.cmx input_handling.cmx debugger_config.cmx \ - program_loading.cmi -program_management.cmo: unix_tools.cmi ../otherlibs/unix/unix.cmi \ - time_travel.cmi symbols.cmi program_loading.cmi primitives.cmi \ - parameters.cmi ../utils/misc.cmi int64ops.cmi ../bytecomp/instruct.cmi \ - input_handling.cmi history.cmi debugger_config.cmi debugcom.cmi \ - breakpoints.cmi program_management.cmi -program_management.cmx: unix_tools.cmx ../otherlibs/unix/unix.cmx \ - time_travel.cmx symbols.cmx program_loading.cmx primitives.cmx \ - parameters.cmx ../utils/misc.cmx int64ops.cmx ../bytecomp/instruct.cmx \ - input_handling.cmx history.cmx debugger_config.cmx debugcom.cmx \ - breakpoints.cmx program_management.cmi -show_information.cmo: symbols.cmi show_source.cmi printval.cmi primitives.cmi \ - ../utils/misc.cmi ../bytecomp/instruct.cmi frames.cmi events.cmi \ - debugcom.cmi checkpoints.cmi breakpoints.cmi show_information.cmi -show_information.cmx: symbols.cmx show_source.cmx printval.cmx primitives.cmx \ - ../utils/misc.cmx ../bytecomp/instruct.cmx frames.cmx events.cmx \ - debugcom.cmx checkpoints.cmx breakpoints.cmx show_information.cmi -show_source.cmo: source.cmi primitives.cmi parameters.cmi ../utils/misc.cmi \ - ../parsing/location.cmi ../bytecomp/instruct.cmi events.cmi \ - debugger_config.cmi show_source.cmi -show_source.cmx: source.cmx primitives.cmx parameters.cmx ../utils/misc.cmx \ - ../parsing/location.cmx ../bytecomp/instruct.cmx events.cmx \ - debugger_config.cmx show_source.cmi -source.cmo: primitives.cmi ../utils/misc.cmi ../utils/config.cmi source.cmi -source.cmx: primitives.cmx ../utils/misc.cmx ../utils/config.cmx source.cmi -symbols.cmo: ../bytecomp/symtable.cmi primitives.cmi ../bytecomp/instruct.cmi \ - events.cmi debugger_config.cmi debugcom.cmi checkpoints.cmi \ - ../bytecomp/bytesections.cmi symbols.cmi -symbols.cmx: ../bytecomp/symtable.cmx primitives.cmx ../bytecomp/instruct.cmx \ - events.cmx debugger_config.cmx debugcom.cmx checkpoints.cmx \ - ../bytecomp/bytesections.cmx symbols.cmi -time_travel.cmo: trap_barrier.cmi symbols.cmi program_loading.cmi \ - primitives.cmi ../utils/misc.cmi int64ops.cmi ../bytecomp/instruct.cmi \ - input_handling.cmi exec.cmi events.cmi debugger_config.cmi debugcom.cmi \ - checkpoints.cmi breakpoints.cmi time_travel.cmi -time_travel.cmx: trap_barrier.cmx symbols.cmx program_loading.cmx \ - primitives.cmx ../utils/misc.cmx int64ops.cmx ../bytecomp/instruct.cmx \ - input_handling.cmx exec.cmx events.cmx debugger_config.cmx debugcom.cmx \ - checkpoints.cmx breakpoints.cmx time_travel.cmi -trap_barrier.cmo: exec.cmi debugcom.cmi checkpoints.cmi trap_barrier.cmi -trap_barrier.cmx: exec.cmx debugcom.cmx checkpoints.cmx trap_barrier.cmi -unix_tools.cmo: ../otherlibs/unix/unix.cmi primitives.cmi ../utils/misc.cmi \ + ../toplevel/genprintval.cmx ./debugcom.cmx printval.cmi +program_loading.cmo: ./unix_tools.cmi ../otherlibs/unix/unix.cmi \ + ./primitives.cmi ./parameters.cmi ../utils/misc.cmi ./input_handling.cmi \ + ./debugger_config.cmi program_loading.cmi +program_loading.cmx: ./unix_tools.cmx ../otherlibs/unix/unix.cmx \ + ./primitives.cmx ./parameters.cmx ../utils/misc.cmx ./input_handling.cmx \ + ./debugger_config.cmx program_loading.cmi +program_management.cmo: ./unix_tools.cmi ../otherlibs/unix/unix.cmi \ + ./time_travel.cmi ./symbols.cmi ./program_loading.cmi ./primitives.cmi \ + ./parameters.cmi ../utils/misc.cmi ./int64ops.cmi \ + ../bytecomp/instruct.cmi ./input_handling.cmi ./history.cmi \ + ./debugger_config.cmi ./debugcom.cmi ./breakpoints.cmi \ + program_management.cmi +program_management.cmx: ./unix_tools.cmx ../otherlibs/unix/unix.cmx \ + ./time_travel.cmx ./symbols.cmx ./program_loading.cmx ./primitives.cmx \ + ./parameters.cmx ../utils/misc.cmx ./int64ops.cmx \ + ../bytecomp/instruct.cmx ./input_handling.cmx ./history.cmx \ + ./debugger_config.cmx ./debugcom.cmx ./breakpoints.cmx \ + program_management.cmi +show_information.cmo: ./symbols.cmi ./show_source.cmi ./printval.cmi \ + ./primitives.cmi ../utils/misc.cmi ../bytecomp/instruct.cmi ./frames.cmi \ + ./events.cmi ./debugcom.cmi ./checkpoints.cmi ./breakpoints.cmi \ + show_information.cmi +show_information.cmx: ./symbols.cmx ./show_source.cmx ./printval.cmx \ + ./primitives.cmx ../utils/misc.cmx ../bytecomp/instruct.cmx ./frames.cmx \ + ./events.cmx ./debugcom.cmx ./checkpoints.cmx ./breakpoints.cmx \ + show_information.cmi +show_source.cmo: ./source.cmi ./primitives.cmi ./parameters.cmi \ + ../utils/misc.cmi ../parsing/location.cmi ../bytecomp/instruct.cmi \ + ./events.cmi ./debugger_config.cmi show_source.cmi +show_source.cmx: ./source.cmx ./primitives.cmx ./parameters.cmx \ + ../utils/misc.cmx ../parsing/location.cmx ../bytecomp/instruct.cmx \ + ./events.cmx ./debugger_config.cmx show_source.cmi +source.cmo: ./primitives.cmi ../utils/misc.cmi ../utils/config.cmi source.cmi +source.cmx: ./primitives.cmx ../utils/misc.cmx ../utils/config.cmx source.cmi +symbols.cmo: ../bytecomp/symtable.cmi ./primitives.cmi \ + ../bytecomp/instruct.cmi ./events.cmi ./debugger_config.cmi \ + ./debugcom.cmi ./checkpoints.cmi ../bytecomp/bytesections.cmi symbols.cmi +symbols.cmx: ../bytecomp/symtable.cmx ./primitives.cmx \ + ../bytecomp/instruct.cmx ./events.cmx ./debugger_config.cmx \ + ./debugcom.cmx ./checkpoints.cmx ../bytecomp/bytesections.cmx symbols.cmi +time_travel.cmo: ./trap_barrier.cmi ./symbols.cmi ./program_loading.cmi \ + ./primitives.cmi ../utils/misc.cmi ./int64ops.cmi \ + ../bytecomp/instruct.cmi ./input_handling.cmi ./exec.cmi ./events.cmi \ + ./debugger_config.cmi ./debugcom.cmi ./checkpoints.cmi ./breakpoints.cmi \ + time_travel.cmi +time_travel.cmx: ./trap_barrier.cmx ./symbols.cmx ./program_loading.cmx \ + ./primitives.cmx ../utils/misc.cmx ./int64ops.cmx \ + ../bytecomp/instruct.cmx ./input_handling.cmx ./exec.cmx ./events.cmx \ + ./debugger_config.cmx ./debugcom.cmx ./checkpoints.cmx ./breakpoints.cmx \ + time_travel.cmi +trap_barrier.cmo: ./exec.cmi ./debugcom.cmi ./checkpoints.cmi \ + trap_barrier.cmi +trap_barrier.cmx: ./exec.cmx ./debugcom.cmx ./checkpoints.cmx \ + trap_barrier.cmi +unix_tools.cmo: ../otherlibs/unix/unix.cmi ./primitives.cmi ../utils/misc.cmi \ unix_tools.cmi -unix_tools.cmx: ../otherlibs/unix/unix.cmx primitives.cmx ../utils/misc.cmx \ +unix_tools.cmx: ../otherlibs/unix/unix.cmx ./primitives.cmx ../utils/misc.cmx \ unix_tools.cmi diff --git a/lex/.depend b/lex/.depend index df3964912..8e824ae97 100644 --- a/lex/.depend +++ b/lex/.depend @@ -1,32 +1,32 @@ -common.cmi: syntax.cmi lexgen.cmi -compact.cmi: lexgen.cmi -lexer.cmi: parser.cmi -lexgen.cmi: syntax.cmi -output.cmi: syntax.cmi lexgen.cmi compact.cmi common.cmi -outputbis.cmi: syntax.cmi lexgen.cmi common.cmi -parser.cmi: syntax.cmi -syntax.cmi: cset.cmi -common.cmo: syntax.cmi lexgen.cmi common.cmi -common.cmx: syntax.cmx lexgen.cmx common.cmi -compact.cmo: table.cmi lexgen.cmi compact.cmi -compact.cmx: table.cmx lexgen.cmx compact.cmi +common.cmi: ./syntax.cmi ./lexgen.cmi +compact.cmi: ./lexgen.cmi +lexer.cmi: ./parser.cmi +lexgen.cmi: ./syntax.cmi +output.cmi: ./syntax.cmi ./lexgen.cmi ./compact.cmi ./common.cmi +outputbis.cmi: ./syntax.cmi ./lexgen.cmi ./common.cmi +parser.cmi: ./syntax.cmi +syntax.cmi: ./cset.cmi +common.cmo: ./syntax.cmi ./lexgen.cmi common.cmi +common.cmx: ./syntax.cmx ./lexgen.cmx common.cmi +compact.cmo: ./table.cmi ./lexgen.cmi compact.cmi +compact.cmx: ./table.cmx ./lexgen.cmx compact.cmi cset.cmo: cset.cmi cset.cmx: cset.cmi -lexer.cmo: syntax.cmi parser.cmi lexer.cmi -lexer.cmx: syntax.cmx parser.cmx lexer.cmi -lexgen.cmo: table.cmi syntax.cmi cset.cmi lexgen.cmi -lexgen.cmx: table.cmx syntax.cmx cset.cmx lexgen.cmi -main.cmo: syntax.cmi parser.cmi outputbis.cmi output.cmi lexgen.cmi lexer.cmi \ - cset.cmi compact.cmi common.cmi -main.cmx: syntax.cmx parser.cmx outputbis.cmx output.cmx lexgen.cmx lexer.cmx \ - cset.cmx compact.cmx common.cmx -output.cmo: syntax.cmi lexgen.cmi compact.cmi common.cmi output.cmi -output.cmx: syntax.cmx lexgen.cmx compact.cmx common.cmx output.cmi -outputbis.cmo: syntax.cmi lexgen.cmi common.cmi outputbis.cmi -outputbis.cmx: syntax.cmx lexgen.cmx common.cmx outputbis.cmi -parser.cmo: syntax.cmi cset.cmi parser.cmi -parser.cmx: syntax.cmx cset.cmx parser.cmi -syntax.cmo: cset.cmi syntax.cmi -syntax.cmx: cset.cmx syntax.cmi +lexer.cmo: ./syntax.cmi ./parser.cmi lexer.cmi +lexer.cmx: ./syntax.cmx ./parser.cmx lexer.cmi +lexgen.cmo: ./table.cmi ./syntax.cmi ./cset.cmi lexgen.cmi +lexgen.cmx: ./table.cmx ./syntax.cmx ./cset.cmx lexgen.cmi +main.cmo: ./syntax.cmi ./parser.cmi ./outputbis.cmi ./output.cmi ./lexgen.cmi \ + ./lexer.cmi ./cset.cmi ./compact.cmi ./common.cmi +main.cmx: ./syntax.cmx ./parser.cmx ./outputbis.cmx ./output.cmx ./lexgen.cmx \ + ./lexer.cmx ./cset.cmx ./compact.cmx ./common.cmx +output.cmo: ./syntax.cmi ./lexgen.cmi ./compact.cmi ./common.cmi output.cmi +output.cmx: ./syntax.cmx ./lexgen.cmx ./compact.cmx ./common.cmx output.cmi +outputbis.cmo: ./syntax.cmi ./lexgen.cmi ./common.cmi outputbis.cmi +outputbis.cmx: ./syntax.cmx ./lexgen.cmx ./common.cmx outputbis.cmi +parser.cmo: ./syntax.cmi ./cset.cmi parser.cmi +parser.cmx: ./syntax.cmx ./cset.cmx parser.cmi +syntax.cmo: ./cset.cmi syntax.cmi +syntax.cmx: ./cset.cmx syntax.cmi table.cmo: table.cmi table.cmx: table.cmi diff --git a/ocamldoc/.depend b/ocamldoc/.depend index 238d372c5..af9cf8f2c 100644 --- a/ocamldoc/.depend +++ b/ocamldoc/.depend @@ -1,233 +1,242 @@ -odoc.cmo: ../typing/typedtree.cmi odoc_texi.cmo odoc_messages.cmo \ - odoc_man.cmo odoc_latex.cmo odoc_info.cmi odoc_html.cmo odoc_global.cmi \ - odoc_dot.cmo odoc_config.cmi odoc_args.cmi odoc_analyse.cmi \ - ../utils/misc.cmi ../utils/config.cmi ../utils/clflags.cmo -odoc.cmx: ../typing/typedtree.cmx odoc_texi.cmx odoc_messages.cmx \ - odoc_man.cmx odoc_latex.cmx odoc_info.cmx odoc_html.cmx odoc_global.cmx \ - odoc_dot.cmx odoc_config.cmx odoc_args.cmx odoc_analyse.cmx \ - ../utils/misc.cmx ../utils/config.cmx ../utils/clflags.cmx +odoc.cmo: ../typing/typedtree.cmi ./odoc_texi.cmo ./odoc_messages.cmo \ + ./odoc_man.cmo ./odoc_latex.cmo ./odoc_info.cmi ./odoc_html.cmo \ + ./odoc_global.cmi ./odoc_dot.cmo ./odoc_config.cmi ./odoc_args.cmi \ + ./odoc_analyse.cmi ../utils/misc.cmi ../utils/config.cmi \ + ../utils/clflags.cmi +odoc.cmx: ../typing/typedtree.cmx ./odoc_texi.cmx ./odoc_messages.cmx \ + ./odoc_man.cmx ./odoc_latex.cmx ./odoc_info.cmx ./odoc_html.cmx \ + ./odoc_global.cmx ./odoc_dot.cmx ./odoc_config.cmx ./odoc_args.cmx \ + ./odoc_analyse.cmx ../utils/misc.cmx ../utils/config.cmx \ + ../utils/clflags.cmx odoc_analyse.cmo: ../utils/warnings.cmi ../typing/typetexp.cmi \ ../typing/types.cmi ../typing/typemod.cmi ../typing/typedtree.cmi \ ../typing/typedecl.cmi ../typing/typecore.cmi ../typing/typeclass.cmi \ ../bytecomp/translcore.cmi ../bytecomp/translclass.cmi \ - ../parsing/syntaxerr.cmi ../parsing/parse.cmi odoc_types.cmi \ - odoc_text.cmi odoc_sig.cmi odoc_module.cmo odoc_misc.cmi \ - odoc_messages.cmo odoc_merge.cmi odoc_global.cmi odoc_dep.cmo \ - odoc_cross.cmi odoc_comments.cmi odoc_class.cmo odoc_ast.cmi \ - odoc_args.cmi ../utils/misc.cmi ../parsing/location.cmi \ + ../parsing/syntaxerr.cmi ../parsing/parse.cmi ./odoc_types.cmi \ + ./odoc_text.cmi ./odoc_sig.cmi ./odoc_module.cmo ./odoc_misc.cmi \ + ./odoc_messages.cmo ./odoc_merge.cmi ./odoc_global.cmi ./odoc_dep.cmo \ + ./odoc_cross.cmi ./odoc_comments.cmi ./odoc_class.cmo ./odoc_ast.cmi \ + ./odoc_args.cmi ../utils/misc.cmi ../parsing/location.cmi \ ../parsing/lexer.cmi ../typing/includemod.cmi ../typing/env.cmi \ - ../typing/ctype.cmi ../utils/config.cmi ../utils/clflags.cmo \ + ../typing/ctype.cmi ../utils/config.cmi ../utils/clflags.cmi \ ../utils/ccomp.cmi odoc_analyse.cmi odoc_analyse.cmx: ../utils/warnings.cmx ../typing/typetexp.cmx \ ../typing/types.cmx ../typing/typemod.cmx ../typing/typedtree.cmx \ ../typing/typedecl.cmx ../typing/typecore.cmx ../typing/typeclass.cmx \ ../bytecomp/translcore.cmx ../bytecomp/translclass.cmx \ - ../parsing/syntaxerr.cmx ../parsing/parse.cmx odoc_types.cmx \ - odoc_text.cmx odoc_sig.cmx odoc_module.cmx odoc_misc.cmx \ - odoc_messages.cmx odoc_merge.cmx odoc_global.cmx odoc_dep.cmx \ - odoc_cross.cmx odoc_comments.cmx odoc_class.cmx odoc_ast.cmx \ - odoc_args.cmx ../utils/misc.cmx ../parsing/location.cmx \ + ../parsing/syntaxerr.cmx ../parsing/parse.cmx ./odoc_types.cmx \ + ./odoc_text.cmx ./odoc_sig.cmx ./odoc_module.cmx ./odoc_misc.cmx \ + ./odoc_messages.cmx ./odoc_merge.cmx ./odoc_global.cmx ./odoc_dep.cmx \ + ./odoc_cross.cmx ./odoc_comments.cmx ./odoc_class.cmx ./odoc_ast.cmx \ + ./odoc_args.cmx ../utils/misc.cmx ../parsing/location.cmx \ ../parsing/lexer.cmx ../typing/includemod.cmx ../typing/env.cmx \ ../typing/ctype.cmx ../utils/config.cmx ../utils/clflags.cmx \ ../utils/ccomp.cmx odoc_analyse.cmi -odoc_args.cmo: odoc_types.cmi odoc_module.cmo odoc_messages.cmo \ - odoc_global.cmi odoc_config.cmi ../utils/misc.cmi ../utils/config.cmi \ - ../utils/clflags.cmo odoc_args.cmi -odoc_args.cmx: odoc_types.cmx odoc_module.cmx odoc_messages.cmx \ - odoc_global.cmx odoc_config.cmx ../utils/misc.cmx ../utils/config.cmx \ +odoc_args.cmo: ./odoc_types.cmi ./odoc_module.cmo ./odoc_messages.cmo \ + ./odoc_global.cmi ./odoc_config.cmi ../utils/misc.cmi ../utils/config.cmi \ + ../utils/clflags.cmi odoc_args.cmi +odoc_args.cmx: ./odoc_types.cmx ./odoc_module.cmx ./odoc_messages.cmx \ + ./odoc_global.cmx ./odoc_config.cmx ../utils/misc.cmx ../utils/config.cmx \ ../utils/clflags.cmx odoc_args.cmi odoc_ast.cmo: ../typing/types.cmi ../typing/typedtree.cmi \ ../typing/predef.cmi ../typing/path.cmi ../parsing/parsetree.cmi \ - odoc_value.cmo odoc_types.cmi odoc_type.cmo odoc_sig.cmi \ - odoc_parameter.cmo odoc_name.cmi odoc_module.cmo odoc_messages.cmo \ - odoc_global.cmi odoc_exception.cmo odoc_env.cmi odoc_class.cmo \ - odoc_args.cmi ../utils/misc.cmi ../parsing/location.cmi \ - ../parsing/asttypes.cmi odoc_ast.cmi + ./odoc_value.cmo ./odoc_types.cmi ./odoc_type.cmo ./odoc_sig.cmi \ + ./odoc_parameter.cmo ./odoc_name.cmi ./odoc_module.cmo \ + ./odoc_messages.cmo ./odoc_global.cmi ./odoc_exception.cmo ./odoc_env.cmi \ + ./odoc_class.cmo ./odoc_args.cmi ../utils/misc.cmi \ + ../parsing/location.cmi ../typing/ident.cmi ../parsing/asttypes.cmi \ + odoc_ast.cmi odoc_ast.cmx: ../typing/types.cmx ../typing/typedtree.cmx \ ../typing/predef.cmx ../typing/path.cmx ../parsing/parsetree.cmi \ - odoc_value.cmx odoc_types.cmx odoc_type.cmx odoc_sig.cmx \ - odoc_parameter.cmx odoc_name.cmx odoc_module.cmx odoc_messages.cmx \ - odoc_global.cmx odoc_exception.cmx odoc_env.cmx odoc_class.cmx \ - odoc_args.cmx ../utils/misc.cmx ../parsing/location.cmx \ - ../parsing/asttypes.cmi odoc_ast.cmi -odoc_class.cmo: ../typing/types.cmi odoc_value.cmo odoc_types.cmi \ - odoc_parameter.cmo odoc_name.cmi -odoc_class.cmx: ../typing/types.cmx odoc_value.cmx odoc_types.cmx \ - odoc_parameter.cmx odoc_name.cmx -odoc_comments.cmo: odoc_types.cmi odoc_text.cmi odoc_see_lexer.cmo \ - odoc_parser.cmi odoc_misc.cmi odoc_messages.cmo odoc_lexer.cmo \ - odoc_global.cmi odoc_comments_global.cmi odoc_comments.cmi -odoc_comments.cmx: odoc_types.cmx odoc_text.cmx odoc_see_lexer.cmx \ - odoc_parser.cmx odoc_misc.cmx odoc_messages.cmx odoc_lexer.cmx \ - odoc_global.cmx odoc_comments_global.cmx odoc_comments.cmi + ./odoc_value.cmx ./odoc_types.cmx ./odoc_type.cmx ./odoc_sig.cmx \ + ./odoc_parameter.cmx ./odoc_name.cmx ./odoc_module.cmx \ + ./odoc_messages.cmx ./odoc_global.cmx ./odoc_exception.cmx ./odoc_env.cmx \ + ./odoc_class.cmx ./odoc_args.cmx ../utils/misc.cmx \ + ../parsing/location.cmx ../typing/ident.cmx ../parsing/asttypes.cmi \ + odoc_ast.cmi +odoc_class.cmo: ../typing/types.cmi ./odoc_value.cmo ./odoc_types.cmi \ + ./odoc_parameter.cmo ./odoc_name.cmi +odoc_class.cmx: ../typing/types.cmx ./odoc_value.cmx ./odoc_types.cmx \ + ./odoc_parameter.cmx ./odoc_name.cmx +odoc_comments.cmo: ./odoc_types.cmi ./odoc_text.cmi ./odoc_see_lexer.cmo \ + ./odoc_parser.cmi ./odoc_misc.cmi ./odoc_messages.cmo ./odoc_lexer.cmo \ + ./odoc_global.cmi ./odoc_cross.cmi ./odoc_comments_global.cmi \ + odoc_comments.cmi +odoc_comments.cmx: ./odoc_types.cmx ./odoc_text.cmx ./odoc_see_lexer.cmx \ + ./odoc_parser.cmx ./odoc_misc.cmx ./odoc_messages.cmx ./odoc_lexer.cmx \ + ./odoc_global.cmx ./odoc_cross.cmx ./odoc_comments_global.cmx \ + odoc_comments.cmi odoc_comments_global.cmo: odoc_comments_global.cmi odoc_comments_global.cmx: odoc_comments_global.cmi odoc_config.cmo: ../utils/config.cmi odoc_config.cmi odoc_config.cmx: ../utils/config.cmx odoc_config.cmi -odoc_cross.cmo: odoc_value.cmo odoc_types.cmi odoc_type.cmo odoc_search.cmi \ - odoc_scan.cmo odoc_parameter.cmo odoc_name.cmi odoc_module.cmo \ - odoc_misc.cmi odoc_messages.cmo odoc_exception.cmo odoc_class.cmo \ - odoc_cross.cmi -odoc_cross.cmx: odoc_value.cmx odoc_types.cmx odoc_type.cmx odoc_search.cmx \ - odoc_scan.cmx odoc_parameter.cmx odoc_name.cmx odoc_module.cmx \ - odoc_misc.cmx odoc_messages.cmx odoc_exception.cmx odoc_class.cmx \ - odoc_cross.cmi -odoc_dag2html.cmo: odoc_info.cmi odoc_dag2html.cmi -odoc_dag2html.cmx: odoc_info.cmx odoc_dag2html.cmi -odoc_dep.cmo: ../parsing/parsetree.cmi odoc_type.cmo odoc_print.cmi \ - odoc_module.cmo ../tools/depend.cmi -odoc_dep.cmx: ../parsing/parsetree.cmi odoc_type.cmx odoc_print.cmx \ - odoc_module.cmx ../tools/depend.cmx -odoc_dot.cmo: odoc_info.cmi -odoc_dot.cmx: odoc_info.cmx +odoc_cross.cmo: ./odoc_value.cmo ./odoc_types.cmi ./odoc_type.cmo \ + ./odoc_search.cmi ./odoc_scan.cmo ./odoc_parameter.cmo ./odoc_name.cmi \ + ./odoc_module.cmo ./odoc_misc.cmi ./odoc_messages.cmo \ + ./odoc_exception.cmo ./odoc_class.cmo odoc_cross.cmi +odoc_cross.cmx: ./odoc_value.cmx ./odoc_types.cmx ./odoc_type.cmx \ + ./odoc_search.cmx ./odoc_scan.cmx ./odoc_parameter.cmx ./odoc_name.cmx \ + ./odoc_module.cmx ./odoc_misc.cmx ./odoc_messages.cmx \ + ./odoc_exception.cmx ./odoc_class.cmx odoc_cross.cmi +odoc_dag2html.cmo: ./odoc_info.cmi odoc_dag2html.cmi +odoc_dag2html.cmx: ./odoc_info.cmx odoc_dag2html.cmi +odoc_dep.cmo: ../parsing/parsetree.cmi ./odoc_type.cmo ./odoc_print.cmi \ + ./odoc_module.cmo ../tools/depend.cmi +odoc_dep.cmx: ../parsing/parsetree.cmi ./odoc_type.cmx ./odoc_print.cmx \ + ./odoc_module.cmx ../tools/depend.cmx +odoc_dot.cmo: ./odoc_info.cmi +odoc_dot.cmx: ./odoc_info.cmx odoc_env.cmo: ../typing/types.cmi ../typing/printtyp.cmi ../typing/predef.cmi \ - ../typing/path.cmi odoc_name.cmi ../typing/btype.cmi odoc_env.cmi + ../typing/path.cmi ./odoc_name.cmi ../typing/btype.cmi odoc_env.cmi odoc_env.cmx: ../typing/types.cmx ../typing/printtyp.cmx ../typing/predef.cmx \ - ../typing/path.cmx odoc_name.cmx ../typing/btype.cmx odoc_env.cmi -odoc_exception.cmo: ../typing/types.cmi odoc_types.cmi odoc_name.cmi -odoc_exception.cmx: ../typing/types.cmx odoc_types.cmx odoc_name.cmx -odoc_global.cmo: ../utils/clflags.cmo odoc_global.cmi + ../typing/path.cmx ./odoc_name.cmx ../typing/btype.cmx odoc_env.cmi +odoc_exception.cmo: ../typing/types.cmi ./odoc_types.cmi ./odoc_name.cmi +odoc_exception.cmx: ../typing/types.cmx ./odoc_types.cmx ./odoc_name.cmx +odoc_global.cmo: ../utils/clflags.cmi odoc_global.cmi odoc_global.cmx: ../utils/clflags.cmx odoc_global.cmi -odoc_html.cmo: odoc_text.cmi odoc_ocamlhtml.cmo odoc_messages.cmo \ - odoc_info.cmi odoc_dag2html.cmi odoc_args.cmi -odoc_html.cmx: odoc_text.cmx odoc_ocamlhtml.cmx odoc_messages.cmx \ - odoc_info.cmx odoc_dag2html.cmx odoc_args.cmx -odoc_info.cmo: ../typing/printtyp.cmi odoc_value.cmo odoc_types.cmi \ - odoc_type.cmo odoc_text.cmi odoc_str.cmi odoc_search.cmi odoc_scan.cmo \ - odoc_print.cmi odoc_parameter.cmo odoc_name.cmi odoc_module.cmo \ - odoc_misc.cmi odoc_messages.cmo odoc_global.cmi odoc_exception.cmo \ - odoc_dep.cmo odoc_comments.cmi odoc_class.cmo odoc_args.cmi \ - odoc_analyse.cmi odoc_info.cmi -odoc_info.cmx: ../typing/printtyp.cmx odoc_value.cmx odoc_types.cmx \ - odoc_type.cmx odoc_text.cmx odoc_str.cmx odoc_search.cmx odoc_scan.cmx \ - odoc_print.cmx odoc_parameter.cmx odoc_name.cmx odoc_module.cmx \ - odoc_misc.cmx odoc_messages.cmx odoc_global.cmx odoc_exception.cmx \ - odoc_dep.cmx odoc_comments.cmx odoc_class.cmx odoc_args.cmx \ - odoc_analyse.cmx odoc_info.cmi -odoc_latex.cmo: odoc_to_text.cmo odoc_messages.cmo odoc_latex_style.cmo \ - odoc_info.cmi -odoc_latex.cmx: odoc_to_text.cmx odoc_messages.cmx odoc_latex_style.cmx \ - odoc_info.cmx -odoc_lexer.cmo: odoc_parser.cmi odoc_messages.cmo odoc_comments_global.cmi \ - odoc_args.cmi -odoc_lexer.cmx: odoc_parser.cmx odoc_messages.cmx odoc_comments_global.cmx \ - odoc_args.cmx -odoc_man.cmo: odoc_str.cmi odoc_print.cmi odoc_misc.cmi odoc_messages.cmo \ - odoc_info.cmi odoc_args.cmi -odoc_man.cmx: odoc_str.cmx odoc_print.cmx odoc_misc.cmx odoc_messages.cmx \ - odoc_info.cmx odoc_args.cmx -odoc_merge.cmo: odoc_value.cmo odoc_types.cmi odoc_type.cmo \ - odoc_parameter.cmo odoc_name.cmi odoc_module.cmo odoc_messages.cmo \ - odoc_exception.cmo odoc_class.cmo odoc_args.cmi odoc_merge.cmi -odoc_merge.cmx: odoc_value.cmx odoc_types.cmx odoc_type.cmx \ - odoc_parameter.cmx odoc_name.cmx odoc_module.cmx odoc_messages.cmx \ - odoc_exception.cmx odoc_class.cmx odoc_args.cmx odoc_merge.cmi -odoc_messages.cmo: odoc_global.cmi ../utils/config.cmi -odoc_messages.cmx: odoc_global.cmx ../utils/config.cmx +odoc_html.cmo: ./odoc_text.cmi ./odoc_ocamlhtml.cmo ./odoc_messages.cmo \ + ./odoc_info.cmi ./odoc_dag2html.cmi ./odoc_args.cmi +odoc_html.cmx: ./odoc_text.cmx ./odoc_ocamlhtml.cmx ./odoc_messages.cmx \ + ./odoc_info.cmx ./odoc_dag2html.cmx ./odoc_args.cmx +odoc_info.cmo: ../typing/printtyp.cmi ./odoc_value.cmo ./odoc_types.cmi \ + ./odoc_type.cmo ./odoc_text.cmi ./odoc_str.cmi ./odoc_search.cmi \ + ./odoc_scan.cmo ./odoc_print.cmi ./odoc_parameter.cmo ./odoc_name.cmi \ + ./odoc_module.cmo ./odoc_misc.cmi ./odoc_messages.cmo ./odoc_global.cmi \ + ./odoc_exception.cmo ./odoc_dep.cmo ./odoc_comments.cmi ./odoc_class.cmo \ + ./odoc_args.cmi ./odoc_analyse.cmi odoc_info.cmi +odoc_info.cmx: ../typing/printtyp.cmx ./odoc_value.cmx ./odoc_types.cmx \ + ./odoc_type.cmx ./odoc_text.cmx ./odoc_str.cmx ./odoc_search.cmx \ + ./odoc_scan.cmx ./odoc_print.cmx ./odoc_parameter.cmx ./odoc_name.cmx \ + ./odoc_module.cmx ./odoc_misc.cmx ./odoc_messages.cmx ./odoc_global.cmx \ + ./odoc_exception.cmx ./odoc_dep.cmx ./odoc_comments.cmx ./odoc_class.cmx \ + ./odoc_args.cmx ./odoc_analyse.cmx odoc_info.cmi +odoc_latex.cmo: ./odoc_to_text.cmo ./odoc_messages.cmo ./odoc_latex_style.cmo \ + ./odoc_info.cmi +odoc_latex.cmx: ./odoc_to_text.cmx ./odoc_messages.cmx ./odoc_latex_style.cmx \ + ./odoc_info.cmx +odoc_lexer.cmo: ./odoc_parser.cmi ./odoc_messages.cmo \ + ./odoc_comments_global.cmi ./odoc_args.cmi +odoc_lexer.cmx: ./odoc_parser.cmx ./odoc_messages.cmx \ + ./odoc_comments_global.cmx ./odoc_args.cmx +odoc_man.cmo: ./odoc_str.cmi ./odoc_print.cmi ./odoc_misc.cmi \ + ./odoc_messages.cmo ./odoc_info.cmi ./odoc_args.cmi +odoc_man.cmx: ./odoc_str.cmx ./odoc_print.cmx ./odoc_misc.cmx \ + ./odoc_messages.cmx ./odoc_info.cmx ./odoc_args.cmx +odoc_merge.cmo: ./odoc_value.cmo ./odoc_types.cmi ./odoc_type.cmo \ + ./odoc_parameter.cmo ./odoc_name.cmi ./odoc_module.cmo \ + ./odoc_messages.cmo ./odoc_exception.cmo ./odoc_class.cmo ./odoc_args.cmi \ + odoc_merge.cmi +odoc_merge.cmx: ./odoc_value.cmx ./odoc_types.cmx ./odoc_type.cmx \ + ./odoc_parameter.cmx ./odoc_name.cmx ./odoc_module.cmx \ + ./odoc_messages.cmx ./odoc_exception.cmx ./odoc_class.cmx ./odoc_args.cmx \ + odoc_merge.cmi +odoc_messages.cmo: ./odoc_global.cmi ../utils/config.cmi +odoc_messages.cmx: ./odoc_global.cmx ../utils/config.cmx odoc_misc.cmo: ../typing/types.cmi ../typing/predef.cmi ../typing/path.cmi \ - odoc_types.cmi odoc_messages.cmo ../parsing/longident.cmi \ + ./odoc_types.cmi ./odoc_messages.cmo ../parsing/longident.cmi \ ../typing/ctype.cmi ../typing/btype.cmi odoc_misc.cmi odoc_misc.cmx: ../typing/types.cmx ../typing/predef.cmx ../typing/path.cmx \ - odoc_types.cmx odoc_messages.cmx ../parsing/longident.cmx \ + ./odoc_types.cmx ./odoc_messages.cmx ../parsing/longident.cmx \ ../typing/ctype.cmx ../typing/btype.cmx odoc_misc.cmi -odoc_module.cmo: ../typing/types.cmi odoc_value.cmo odoc_types.cmi \ - odoc_type.cmo odoc_name.cmi odoc_exception.cmo odoc_class.cmo -odoc_module.cmx: ../typing/types.cmx odoc_value.cmx odoc_types.cmx \ - odoc_type.cmx odoc_name.cmx odoc_exception.cmx odoc_class.cmx -odoc_name.cmo: ../typing/path.cmi ../parsing/longident.cmi \ - ../typing/ident.cmi odoc_name.cmi -odoc_name.cmx: ../typing/path.cmx ../parsing/longident.cmx \ - ../typing/ident.cmx odoc_name.cmi -odoc_opt.cmo: ../typing/typedtree.cmi odoc_texi.cmo odoc_messages.cmo \ - odoc_man.cmo odoc_latex.cmo odoc_info.cmi odoc_html.cmo odoc_global.cmi \ - odoc_dot.cmo odoc_args.cmi odoc_analyse.cmi ../utils/misc.cmi \ - ../utils/config.cmi ../utils/clflags.cmo -odoc_opt.cmx: ../typing/typedtree.cmx odoc_texi.cmx odoc_messages.cmx \ - odoc_man.cmx odoc_latex.cmx odoc_info.cmx odoc_html.cmx odoc_global.cmx \ - odoc_dot.cmx odoc_args.cmx odoc_analyse.cmx ../utils/misc.cmx \ - ../utils/config.cmx ../utils/clflags.cmx -odoc_parameter.cmo: ../typing/types.cmi odoc_types.cmi -odoc_parameter.cmx: ../typing/types.cmx odoc_types.cmx -odoc_parser.cmo: odoc_types.cmi odoc_comments_global.cmi odoc_parser.cmi -odoc_parser.cmx: odoc_types.cmx odoc_comments_global.cmx odoc_parser.cmi +odoc_module.cmo: ../typing/types.cmi ./odoc_value.cmo ./odoc_types.cmi \ + ./odoc_type.cmo ./odoc_name.cmi ./odoc_exception.cmo ./odoc_class.cmo +odoc_module.cmx: ../typing/types.cmx ./odoc_value.cmx ./odoc_types.cmx \ + ./odoc_type.cmx ./odoc_name.cmx ./odoc_exception.cmx ./odoc_class.cmx +odoc_name.cmo: ../typing/path.cmi ./odoc_misc.cmi ../typing/ident.cmi \ + odoc_name.cmi +odoc_name.cmx: ../typing/path.cmx ./odoc_misc.cmx ../typing/ident.cmx \ + odoc_name.cmi +odoc_opt.cmo: ../typing/typedtree.cmi ./odoc_texi.cmo ./odoc_messages.cmo \ + ./odoc_man.cmo ./odoc_latex.cmo ./odoc_info.cmi ./odoc_html.cmo \ + ./odoc_global.cmi ./odoc_dot.cmo ./odoc_args.cmi ./odoc_analyse.cmi \ + ../utils/misc.cmi ../utils/config.cmi ../utils/clflags.cmi +odoc_opt.cmx: ../typing/typedtree.cmx ./odoc_texi.cmx ./odoc_messages.cmx \ + ./odoc_man.cmx ./odoc_latex.cmx ./odoc_info.cmx ./odoc_html.cmx \ + ./odoc_global.cmx ./odoc_dot.cmx ./odoc_args.cmx ./odoc_analyse.cmx \ + ../utils/misc.cmx ../utils/config.cmx ../utils/clflags.cmx +odoc_parameter.cmo: ../typing/types.cmi ./odoc_types.cmi +odoc_parameter.cmx: ../typing/types.cmx ./odoc_types.cmx +odoc_parser.cmo: ./odoc_types.cmi ./odoc_comments_global.cmi odoc_parser.cmi +odoc_parser.cmx: ./odoc_types.cmx ./odoc_comments_global.cmx odoc_parser.cmi odoc_print.cmo: ../typing/types.cmi ../typing/printtyp.cmi odoc_print.cmi odoc_print.cmx: ../typing/types.cmx ../typing/printtyp.cmx odoc_print.cmi -odoc_scan.cmo: odoc_value.cmo odoc_types.cmi odoc_type.cmo odoc_module.cmo \ - odoc_exception.cmo odoc_class.cmo -odoc_scan.cmx: odoc_value.cmx odoc_types.cmx odoc_type.cmx odoc_module.cmx \ - odoc_exception.cmx odoc_class.cmx -odoc_search.cmo: odoc_value.cmo odoc_types.cmi odoc_type.cmo \ - odoc_parameter.cmo odoc_name.cmi odoc_module.cmo odoc_exception.cmo \ - odoc_class.cmo odoc_search.cmi -odoc_search.cmx: odoc_value.cmx odoc_types.cmx odoc_type.cmx \ - odoc_parameter.cmx odoc_name.cmx odoc_module.cmx odoc_exception.cmx \ - odoc_class.cmx odoc_search.cmi -odoc_see_lexer.cmo: odoc_parser.cmi -odoc_see_lexer.cmx: odoc_parser.cmx +odoc_scan.cmo: ./odoc_value.cmo ./odoc_types.cmi ./odoc_type.cmo \ + ./odoc_module.cmo ./odoc_exception.cmo ./odoc_class.cmo +odoc_scan.cmx: ./odoc_value.cmx ./odoc_types.cmx ./odoc_type.cmx \ + ./odoc_module.cmx ./odoc_exception.cmx ./odoc_class.cmx +odoc_search.cmo: ./odoc_value.cmo ./odoc_types.cmi ./odoc_type.cmo \ + ./odoc_parameter.cmo ./odoc_name.cmi ./odoc_module.cmo \ + ./odoc_exception.cmo ./odoc_class.cmo odoc_search.cmi +odoc_search.cmx: ./odoc_value.cmx ./odoc_types.cmx ./odoc_type.cmx \ + ./odoc_parameter.cmx ./odoc_name.cmx ./odoc_module.cmx \ + ./odoc_exception.cmx ./odoc_class.cmx odoc_search.cmi +odoc_see_lexer.cmo: ./odoc_parser.cmi +odoc_see_lexer.cmx: ./odoc_parser.cmx odoc_sig.cmo: ../typing/types.cmi ../typing/typedtree.cmi ../typing/path.cmi \ - ../parsing/parsetree.cmi odoc_value.cmo odoc_types.cmi odoc_type.cmo \ - odoc_print.cmi odoc_parameter.cmo odoc_name.cmi odoc_module.cmo \ - odoc_misc.cmi odoc_messages.cmo odoc_merge.cmi odoc_global.cmi \ - odoc_exception.cmo odoc_env.cmi odoc_class.cmo odoc_args.cmi \ - ../utils/misc.cmi ../parsing/location.cmi ../typing/btype.cmi \ - ../parsing/asttypes.cmi odoc_sig.cmi + ../parsing/parsetree.cmi ./odoc_value.cmo ./odoc_types.cmi \ + ./odoc_type.cmo ./odoc_print.cmi ./odoc_parameter.cmo ./odoc_name.cmi \ + ./odoc_module.cmo ./odoc_misc.cmi ./odoc_messages.cmo ./odoc_merge.cmi \ + ./odoc_global.cmi ./odoc_exception.cmo ./odoc_env.cmi ./odoc_class.cmo \ + ./odoc_args.cmi ../utils/misc.cmi ../parsing/location.cmi \ + ../typing/btype.cmi ../parsing/asttypes.cmi odoc_sig.cmi odoc_sig.cmx: ../typing/types.cmx ../typing/typedtree.cmx ../typing/path.cmx \ - ../parsing/parsetree.cmi odoc_value.cmx odoc_types.cmx odoc_type.cmx \ - odoc_print.cmx odoc_parameter.cmx odoc_name.cmx odoc_module.cmx \ - odoc_misc.cmx odoc_messages.cmx odoc_merge.cmx odoc_global.cmx \ - odoc_exception.cmx odoc_env.cmx odoc_class.cmx odoc_args.cmx \ - ../utils/misc.cmx ../parsing/location.cmx ../typing/btype.cmx \ - ../parsing/asttypes.cmi odoc_sig.cmi -odoc_str.cmo: ../typing/types.cmi ../typing/printtyp.cmi odoc_value.cmo \ - odoc_type.cmo odoc_print.cmi odoc_name.cmi odoc_misc.cmi \ - odoc_messages.cmo odoc_exception.cmo odoc_class.cmo odoc_str.cmi -odoc_str.cmx: ../typing/types.cmx ../typing/printtyp.cmx odoc_value.cmx \ - odoc_type.cmx odoc_print.cmx odoc_name.cmx odoc_misc.cmx \ - odoc_messages.cmx odoc_exception.cmx odoc_class.cmx odoc_str.cmi -odoc_test.cmo: odoc_info.cmi -odoc_test.cmx: odoc_info.cmx -odoc_texi.cmo: odoc_to_text.cmo odoc_messages.cmo odoc_info.cmi -odoc_texi.cmx: odoc_to_text.cmx odoc_messages.cmx odoc_info.cmx -odoc_text.cmo: odoc_types.cmi odoc_text_parser.cmi odoc_text_lexer.cmo \ + ../parsing/parsetree.cmi ./odoc_value.cmx ./odoc_types.cmx \ + ./odoc_type.cmx ./odoc_print.cmx ./odoc_parameter.cmx ./odoc_name.cmx \ + ./odoc_module.cmx ./odoc_misc.cmx ./odoc_messages.cmx ./odoc_merge.cmx \ + ./odoc_global.cmx ./odoc_exception.cmx ./odoc_env.cmx ./odoc_class.cmx \ + ./odoc_args.cmx ../utils/misc.cmx ../parsing/location.cmx \ + ../typing/btype.cmx ../parsing/asttypes.cmi odoc_sig.cmi +odoc_str.cmo: ../typing/types.cmi ../typing/printtyp.cmi ./odoc_value.cmo \ + ./odoc_type.cmo ./odoc_print.cmi ./odoc_name.cmi ./odoc_misc.cmi \ + ./odoc_messages.cmo ./odoc_exception.cmo ./odoc_class.cmo odoc_str.cmi +odoc_str.cmx: ../typing/types.cmx ../typing/printtyp.cmx ./odoc_value.cmx \ + ./odoc_type.cmx ./odoc_print.cmx ./odoc_name.cmx ./odoc_misc.cmx \ + ./odoc_messages.cmx ./odoc_exception.cmx ./odoc_class.cmx odoc_str.cmi +odoc_test.cmo: ./odoc_info.cmi +odoc_test.cmx: ./odoc_info.cmx +odoc_texi.cmo: ./odoc_to_text.cmo ./odoc_messages.cmo ./odoc_info.cmi +odoc_texi.cmx: ./odoc_to_text.cmx ./odoc_messages.cmx ./odoc_info.cmx +odoc_text.cmo: ./odoc_types.cmi ./odoc_text_parser.cmi ./odoc_text_lexer.cmo \ odoc_text.cmi -odoc_text.cmx: odoc_types.cmx odoc_text_parser.cmx odoc_text_lexer.cmx \ +odoc_text.cmx: ./odoc_types.cmx ./odoc_text_parser.cmx ./odoc_text_lexer.cmx \ odoc_text.cmi -odoc_text_lexer.cmo: odoc_text_parser.cmi odoc_misc.cmi -odoc_text_lexer.cmx: odoc_text_parser.cmx odoc_misc.cmx -odoc_text_parser.cmo: odoc_types.cmi odoc_misc.cmi odoc_text_parser.cmi -odoc_text_parser.cmx: odoc_types.cmx odoc_misc.cmx odoc_text_parser.cmi -odoc_to_text.cmo: odoc_messages.cmo odoc_info.cmi -odoc_to_text.cmx: odoc_messages.cmx odoc_info.cmx -odoc_type.cmo: ../typing/types.cmi odoc_types.cmi odoc_name.cmi -odoc_type.cmx: ../typing/types.cmx odoc_types.cmx odoc_name.cmx -odoc_types.cmo: odoc_messages.cmo odoc_types.cmi -odoc_types.cmx: odoc_messages.cmx odoc_types.cmi -odoc_value.cmo: ../typing/types.cmi ../typing/printtyp.cmi odoc_types.cmi \ - odoc_parameter.cmo odoc_name.cmi -odoc_value.cmx: ../typing/types.cmx ../typing/printtyp.cmx odoc_types.cmx \ - odoc_parameter.cmx odoc_name.cmx -odoc_analyse.cmi: odoc_module.cmo odoc_args.cmi -odoc_args.cmi: odoc_types.cmi odoc_module.cmo +odoc_text_lexer.cmo: ./odoc_text_parser.cmi ./odoc_misc.cmi +odoc_text_lexer.cmx: ./odoc_text_parser.cmx ./odoc_misc.cmx +odoc_text_parser.cmo: ./odoc_types.cmi ./odoc_misc.cmi odoc_text_parser.cmi +odoc_text_parser.cmx: ./odoc_types.cmx ./odoc_misc.cmx odoc_text_parser.cmi +odoc_to_text.cmo: ./odoc_messages.cmo ./odoc_info.cmi +odoc_to_text.cmx: ./odoc_messages.cmx ./odoc_info.cmx +odoc_type.cmo: ../typing/types.cmi ./odoc_types.cmi ./odoc_name.cmi +odoc_type.cmx: ../typing/types.cmx ./odoc_types.cmx ./odoc_name.cmx +odoc_types.cmo: ./odoc_messages.cmo odoc_types.cmi +odoc_types.cmx: ./odoc_messages.cmx odoc_types.cmi +odoc_value.cmo: ../typing/types.cmi ../typing/printtyp.cmi ./odoc_types.cmi \ + ./odoc_parameter.cmo ./odoc_name.cmi +odoc_value.cmx: ../typing/types.cmx ../typing/printtyp.cmx ./odoc_types.cmx \ + ./odoc_parameter.cmx ./odoc_name.cmx +odoc_analyse.cmi: ./odoc_module.cmo ./odoc_args.cmi +odoc_args.cmi: ./odoc_types.cmi ./odoc_module.cmo odoc_ast.cmi: ../typing/types.cmi ../typing/typedtree.cmi ../typing/path.cmi \ - ../parsing/parsetree.cmi odoc_sig.cmi odoc_name.cmi odoc_module.cmo -odoc_comments.cmi: odoc_types.cmi -odoc_cross.cmi: odoc_module.cmo -odoc_dag2html.cmi: odoc_info.cmi -odoc_env.cmi: ../typing/types.cmi odoc_name.cmi -odoc_info.cmi: ../typing/types.cmi odoc_value.cmo odoc_types.cmi \ - odoc_type.cmo odoc_search.cmi odoc_parameter.cmo odoc_module.cmo \ - odoc_exception.cmo odoc_class.cmo -odoc_merge.cmi: odoc_types.cmi odoc_module.cmo -odoc_misc.cmi: ../typing/types.cmi odoc_types.cmi ../parsing/longident.cmi + ../parsing/parsetree.cmi ./odoc_sig.cmi ./odoc_name.cmi ./odoc_module.cmo +odoc_comments.cmi: ./odoc_types.cmi ./odoc_module.cmo +odoc_cross.cmi: ./odoc_types.cmi ./odoc_module.cmo +odoc_dag2html.cmi: ./odoc_info.cmi +odoc_env.cmi: ../typing/types.cmi ./odoc_name.cmi +odoc_info.cmi: ../typing/types.cmi ./odoc_value.cmo ./odoc_types.cmi \ + ./odoc_type.cmo ./odoc_search.cmi ./odoc_parameter.cmo ./odoc_module.cmo \ + ./odoc_exception.cmo ./odoc_class.cmo +odoc_merge.cmi: ./odoc_types.cmi ./odoc_module.cmo +odoc_misc.cmi: ../typing/types.cmi ./odoc_types.cmi ../parsing/longident.cmi odoc_name.cmi: ../typing/path.cmi ../parsing/longident.cmi \ ../typing/ident.cmi -odoc_parser.cmi: odoc_types.cmi +odoc_parser.cmi: ./odoc_types.cmi odoc_print.cmi: ../typing/types.cmi -odoc_search.cmi: odoc_value.cmo odoc_types.cmi odoc_type.cmo odoc_module.cmo \ - odoc_exception.cmo odoc_class.cmo -odoc_sig.cmi: ../typing/types.cmi ../parsing/parsetree.cmi odoc_types.cmi \ - odoc_type.cmo odoc_name.cmi odoc_module.cmo odoc_env.cmi odoc_class.cmo -odoc_str.cmi: ../typing/types.cmi odoc_value.cmo odoc_type.cmo \ - odoc_exception.cmo odoc_class.cmo -odoc_text.cmi: odoc_types.cmi -odoc_text_parser.cmi: odoc_types.cmi +odoc_search.cmi: ./odoc_value.cmo ./odoc_types.cmi ./odoc_type.cmo \ + ./odoc_module.cmo ./odoc_exception.cmo ./odoc_class.cmo +odoc_sig.cmi: ../typing/types.cmi ../parsing/parsetree.cmi ./odoc_types.cmi \ + ./odoc_type.cmo ./odoc_name.cmi ./odoc_module.cmo ./odoc_env.cmi \ + ./odoc_class.cmo +odoc_str.cmi: ../typing/types.cmi ./odoc_value.cmo ./odoc_type.cmo \ + ./odoc_exception.cmo ./odoc_class.cmo +odoc_text.cmi: ./odoc_types.cmi +odoc_text_parser.cmi: ./odoc_types.cmi diff --git a/ocamldoc/Changes.txt b/ocamldoc/Changes.txt index 5f67b0cf4..77f100de4 100644 --- a/ocamldoc/Changes.txt +++ b/ocamldoc/Changes.txt @@ -1,10 +1,28 @@ TODO: - need to fix display of type parameters for inherited classes/class types + - need to add an environment while generating to print correct links: + file foo.mli: + type u + module type M = sig type u end + module N : sig include M val f: u -> unit end + Here, in html for example, f in displayed being of type Foo.u instead of Foo.M.u - latex: types variant polymorphes dépassent de la page quand ils sont trop longs - utilisation nouvelles infos de Xavier: "début de rec", etc. - xml generator ===== +Release 3.09.3: +- mod: PR#4017 new option -short-functors to use a short form to display + functors in html generator +- fix: PR#4016 (using modtype constraint to filter module elements displayed in doc) +- fix: PR#4066 (missing crossref in text from intro files) +- fix: PR#4007 (error in merging of top dependencies of modules) +- fix: PR#3981 (-dot-colors has no effect) +- mod: name resolution in cross-referencing: {!name} if name is not + found, then it is searched in the parent module/class, and in the parent + of the parent, and so on until it is found. + +===== Release 3.09.1: - fix: remove .TP for generated man pages, use .sp instead (.TP caused a lot of odd margins) diff --git a/ocamldoc/Makefile b/ocamldoc/Makefile index ad213b443..b6b47156f 100644 --- a/ocamldoc/Makefile +++ b/ocamldoc/Makefile @@ -93,7 +93,6 @@ CMOFILES= odoc_config.cmo \ odoc_parser.cmo\ odoc_lexer.cmo\ odoc_see_lexer.cmo\ - odoc_comments.cmo\ odoc_env.cmo\ odoc_merge.cmo\ odoc_sig.cmo\ @@ -103,6 +102,7 @@ CMOFILES= odoc_config.cmo \ odoc_search.cmo\ odoc_scan.cmo\ odoc_cross.cmo\ + odoc_comments.cmo\ odoc_dep.cmo\ odoc_analyse.cmo\ odoc_info.cmo @@ -211,6 +211,10 @@ $(OCAMLDOC_LIBCMXA): $(LIBCMXFILES) manpages: stdlib_man/Pervasives.3o +dot: $(EXECMOFILES) odoc.cmo + $(OCAMLDOC_RUN) -dot -dot-reduce -o ocamldoc.dot $(INCLUDES) \ + odoc*.ml + # Parsers and lexers dependencies : ################################### odoc_text_parser.ml: odoc_text_parser.mly diff --git a/ocamldoc/Makefile.nt b/ocamldoc/Makefile.nt index 3a5a4ba24..c11f1bd0f 100644 --- a/ocamldoc/Makefile.nt +++ b/ocamldoc/Makefile.nt @@ -87,7 +87,6 @@ CMOFILES= odoc_config.cmo \ odoc_parser.cmo\ odoc_lexer.cmo\ odoc_see_lexer.cmo\ - odoc_comments.cmo\ odoc_env.cmo\ odoc_merge.cmo\ odoc_sig.cmo\ @@ -97,6 +96,7 @@ CMOFILES= odoc_config.cmo \ odoc_search.cmo\ odoc_scan.cmo\ odoc_cross.cmo\ + odoc_comments.cmo\ odoc_dep.cmo\ odoc_analyse.cmo\ odoc_info.cmo diff --git a/ocamldoc/odoc.ml b/ocamldoc/odoc.ml index 1d4df9c6a..e66ce3754 100644 --- a/ocamldoc/odoc.ml +++ b/ocamldoc/odoc.ml @@ -21,7 +21,7 @@ open Typedtree module M = Odoc_messages -let print_DEBUG s = print_string s ; print_newline () +let print_DEBUG s = print_string s ; print_newline () (* we check if we must load a module given on the command line *) let arg_list = Array.to_list Sys.argv @@ -42,7 +42,7 @@ let (cmo_or_cma_opt, paths) = let _ = print_DEBUG "Fin analyse des arguments pour le dynamic load" -(** Return the real name of the file to load, +(** Return the real name of the file to load, searching it in the paths if it is a simple name and not in the current directory. *) let get_real_filename name = @@ -74,16 +74,16 @@ let _ = let real_file = get_real_filename file in ignore(Dynlink.loadfile real_file) with - Dynlink.Error e -> + Dynlink.Error e -> prerr_endline (Odoc_messages.load_file_error file (Dynlink.error_message e)) ; exit 1 | Not_found -> prerr_endline (Odoc_messages.load_file_error file "Not_found"); - exit 1 + exit 1 | Sys_error s | Failure s -> prerr_endline (Odoc_messages.load_file_error file s); - exit 1 + exit 1 let _ = print_DEBUG "Fin du chargement dynamique éventuel" @@ -101,16 +101,16 @@ let _ = Odoc_args.parse let loaded_modules = - List.flatten - (List.map + List.flatten + (List.map (fun f -> Odoc_info.verbose (Odoc_messages.loading f); - try + try let l = Odoc_analyse.load_modules f in Odoc_info.verbose Odoc_messages.ok; l - with Failure s -> - prerr_endline s ; + with Failure s -> + prerr_endline s ; incr Odoc_global.errors ; [] ) @@ -124,20 +124,20 @@ let _ = None -> () | Some f -> try Odoc_analyse.dump_modules f modules - with Failure s -> + with Failure s -> prerr_endline s ; incr Odoc_global.errors -let _ = +let _ = match !Odoc_args.doc_generator with None -> () - | Some gen -> + | Some gen -> Odoc_info.verbose Odoc_messages.generating_doc; gen#generate modules; Odoc_info.verbose Odoc_messages.ok -let _ = +let _ = if !Odoc_global.errors > 0 then ( prerr_endline (Odoc_messages.errors_occured !Odoc_global.errors) ; @@ -145,6 +145,6 @@ let _ = ) else exit 0 - + (* eof $Id$ *) diff --git a/ocamldoc/odoc_args.ml b/ocamldoc/odoc_args.ml index 91122ed68..f266e99f5 100644 --- a/ocamldoc/odoc_args.ml +++ b/ocamldoc/odoc_args.ml @@ -124,6 +124,8 @@ let index_only = ref false let colorize_code = ref false +let html_short_functors = ref false + let with_header = ref true let with_trailer = ref true @@ -256,7 +258,8 @@ let options = ref [ "-all-params", Arg.Set with_parameter_list, M.with_parameter_list ; "-css-style", Arg.String (fun s -> css_style := Some s), M.css_style ; "-index-only", Arg.Set index_only, M.index_only ; - "-colorize-code", Arg.Set colorize_code, M.colorize_code ^ + "-colorize-code", Arg.Set colorize_code, M.colorize_code ; + "-short-functors", Arg.Set html_short_functors, M.html_short_functors ^ "\n\n *** LaTeX options ***\n"; (* latex only options *) diff --git a/ocamldoc/odoc_args.mli b/ocamldoc/odoc_args.mli index 242f55659..3aaa270f6 100644 --- a/ocamldoc/odoc_args.mli +++ b/ocamldoc/odoc_args.mli @@ -94,6 +94,10 @@ val index_only : bool ref (** To colorize code in HTML generated documentation pages, not code pages. *) val colorize_code : bool ref +(** To display functors in short form rather than with "functor ... -> ", + in HTML generated documentation. *) +val html_short_functors : bool ref + (** The flag which indicates if we must generate a header (for LaTeX). *) val with_header : bool ref diff --git a/ocamldoc/odoc_ast.ml b/ocamldoc/odoc_ast.ml index a04af1b57..7c4e022ca 100644 --- a/ocamldoc/odoc_ast.ml +++ b/ocamldoc/odoc_ast.ml @@ -33,10 +33,10 @@ open Odoc_types (** This variable contains the regular expression representing a blank.*) let blank = "[ \010\013\009\012']" + (** This variable contains the regular expression representing a blank but not a '\n'.*) let simple_blank = "[ \013\009\012]" - (** This module is used to search for structure items by name in a Typedtree.structure. One function creates two hash tables, which can then be used to search for elements. Class elements do not use tables. @@ -68,12 +68,12 @@ module Typedtree_search = | Typedtree.Tstr_module (ident, _) -> Hashtbl.add table (M (Name.from_ident ident)) tt | Typedtree.Tstr_recmodule mods -> - List.iter - (fun (ident,mod_expr) -> - Hashtbl.add table (M (Name.from_ident ident)) - (Typedtree.Tstr_module (ident,mod_expr)) - ) - mods + List.iter + (fun (ident,mod_expr) -> + Hashtbl.add table (M (Name.from_ident ident)) + (Typedtree.Tstr_module (ident,mod_expr)) + ) + mods | Typedtree.Tstr_modtype (ident, _) -> Hashtbl.add table (MT (Name.from_ident ident)) tt | Typedtree.Tstr_exception (ident, _) -> @@ -388,7 +388,7 @@ module Analyser = (* ( match clexp.Typedtree.cl_desc with - Tclass_ident _ -> prerr_endline "Tclass_ident" + Tclass_ident _ -> prerr_endline "Tclass_ident" | Tclass_structure _ -> prerr_endline "Tclass_structure" | Tclass_fun _ -> prerr_endline "Tclass_fun" | Tclass_apply _ -> prerr_endline "Tclass_apply" @@ -507,18 +507,18 @@ module Analyser = with Not_found -> raise (Failure (Odoc_messages.inherit_classexp_not_found_in_typedtree n)) in let (info_opt, ele_comments) = - get_comments_in_class last_pos - p_clexp.Parsetree.pcl_loc.Location.loc_start.Lexing.pos_cnum - in + get_comments_in_class last_pos + p_clexp.Parsetree.pcl_loc.Location.loc_start.Lexing.pos_cnum + in let text_opt = match info_opt with None -> None | Some i -> i.Odoc_types.i_desc in let name = tt_name_of_class_expr tt_clexp in let inher = - { - ic_name = Odoc_env.full_class_or_class_type_name env name ; - ic_class = None ; - ic_text = text_opt ; - } - in + { + ic_name = Odoc_env.full_class_or_class_type_name env name ; + ic_class = None ; + ic_text = text_opt ; + } + in iter (acc_inher @ [ inher ]) (acc_fields @ ele_comments) p_clexp.Parsetree.pcl_loc.Location.loc_end.Lexing.pos_cnum q @@ -826,7 +826,7 @@ module Analyser = { (* A VOIR : chercher dans les modules et les module types, avec quel env ? *) im_name = tt_name_from_module_expr mod_expr ; im_module = None ; - im_info = None ; + im_info = None ; } ] | _ -> @@ -842,7 +842,7 @@ module Analyser = [] | ((Element_included_module im) :: q, (im_repl :: im_q)) -> (Element_included_module { im_repl with im_info = im.im_info }) - :: (f (q, im_q)) + :: (f (q, im_q)) | ((Element_included_module im) :: q, []) -> (Element_included_module im) :: q | (ele :: q, l) -> @@ -850,6 +850,94 @@ module Analyser = in f (module_elements, included_modules) + (** This function removes the elements of the module which does not + belong to the given module type, if the module type is expanded + and the module has a "structure" kind. *) + let rec filter_module_with_module_type_constraint m mt = + match m.m_kind, mt with + Module_struct l, Types.Tmty_signature lsig -> + m.m_kind <- Module_struct (filter_module_elements_with_module_type_constraint l lsig); + m.m_type <- mt; + | _ -> () + + (** This function removes the elements of the module type which does not + belong to the given module type, if the module type is expanded + and the module type has a "structure" kind. *) + and filter_module_type_with_module_type_constraint mtyp mt = + match mtyp.mt_kind, mt with + Some Module_type_struct l, Types.Tmty_signature lsig -> + mtyp.mt_kind <- Some (Module_type_struct (filter_module_elements_with_module_type_constraint l lsig)); + mtyp.mt_type <- Some mt; + | _ -> () + + and filter_module_elements_with_module_type_constraint l lsig = + let pred ele = + let f = match ele with + Element_module m -> + (function + Types.Tsig_module (ident,t,_) -> + let n1 = Name.simple m.m_name + and n2 = Ident.name ident in + ( + match n1 = n2 with + true -> filter_module_with_module_type_constraint m t; true + | false -> false + ) + | _ -> false) + | Element_module_type mt -> + (function + Types.Tsig_modtype (ident,Types.Tmodtype_manifest t) -> + let n1 = Name.simple mt.mt_name + and n2 = Ident.name ident in + ( + match n1 = n2 with + true -> filter_module_type_with_module_type_constraint mt t; true + | false -> false + ) + | _ -> false) + | Element_value v -> + (function + Types.Tsig_value (ident,_) -> + let n1 = Name.simple v.val_name + and n2 = Ident.name ident in + n1 = n2 + | _ -> false) + | Element_type t -> + (function + Types.Tsig_type (ident,_,_) -> + (* A VOIR: il est possible que le détail du type soit caché *) + let n1 = Name.simple t.ty_name + and n2 = Ident.name ident in + n1 = n2 + | _ -> false) + | Element_exception e -> + (function + Types.Tsig_exception (ident,_) -> + let n1 = Name.simple e.ex_name + and n2 = Ident.name ident in + n1 = n2 + | _ -> false) + | Element_class c -> + (function + Types.Tsig_class (ident,_,_) -> + let n1 = Name.simple c.cl_name + and n2 = Ident.name ident in + n1 = n2 + | _ -> false) + | Element_class_type ct -> + (function + Types.Tsig_cltype (ident,_,_) -> + let n1 = Name.simple ct.clt_name + and n2 = Ident.name ident in + n1 = n2 + | _ -> false) + | Element_module_comment _ -> fun _ -> true + | Element_included_module _ -> fun _ -> true + in + List.exists f lsig + in + List.filter pred l + (** Analysis of a parse tree structure with a typed tree, to return module elements.*) let rec analyse_structure env current_module_name last_pos pos_limit parsetree typedtree = print_DEBUG "Odoc_ast:analyse_struture"; @@ -1033,13 +1121,13 @@ module Analyser = ty_name = complete_name ; ty_info = com_opt ; ty_parameters = - List.map2 - (fun p (co,cn,_) -> - (Odoc_env.subst_type new_env p, - co, cn) - ) - tt_type_decl.Types.type_params - tt_type_decl.Types.type_variance ; + List.map2 + (fun p (co,cn,_) -> + (Odoc_env.subst_type new_env p, + co, cn) + ) + tt_type_decl.Types.type_params + tt_type_decl.Types.type_variance ; ty_kind = kind ; ty_manifest = (match tt_type_decl.Types.type_manifest with @@ -1047,12 +1135,12 @@ module Analyser = | Some t -> Some (Odoc_env.subst_type new_env t)); ty_loc = { loc_impl = Some (!file_name, loc_start) ; loc_inter = None } ; ty_code = - ( - if !Odoc_args.keep_code then - Some (get_string_of_file loc_start new_end) - else - None - ) ; + ( + if !Odoc_args.keep_code then + Some (get_string_of_file loc_start new_end) + else + None + ) ; } in let (maybe_more2, info_after_opt) = @@ -1086,13 +1174,13 @@ module Analyser = ex_args = List.map (Odoc_env.subst_type new_env) tt_excep_decl ; ex_alias = None ; ex_loc = { loc_impl = Some (!file_name, loc.Location.loc_start.Lexing.pos_cnum) ; loc_inter = None } ; - ex_code = + ex_code = ( - if !Odoc_args.keep_code then + if !Odoc_args.keep_code then Some (get_string_of_file loc_start loc_end) else None - ) ; + ) ; } in (0, new_env, [ Element_exception new_ex ]) @@ -1133,18 +1221,18 @@ module Analyser = module_expr tt_module_expr in - let code = - if !Odoc_args.keep_code then - let loc = module_expr.Parsetree.pmod_loc in - let st = loc.Location.loc_start.Lexing.pos_cnum in - let en = loc.Location.loc_end.Lexing.pos_cnum in - Some (get_string_of_file st en) - else - None - in - let new_module = - { new_module_pre with m_code = code } - in + let code = + if !Odoc_args.keep_code then + let loc = module_expr.Parsetree.pmod_loc in + let st = loc.Location.loc_start.Lexing.pos_cnum in + let en = loc.Location.loc_end.Lexing.pos_cnum in + Some (get_string_of_file st en) + else + None + in + let new_module = + { new_module_pre with m_code = code } + in let new_env = Odoc_env.add_module env new_module.m_name in let new_env2 = match new_module.m_type with @@ -1163,14 +1251,14 @@ module Analyser = ) | Parsetree.Pstr_recmodule mods -> - (* A VOIR ICI ca merde avec /work/tmp/graph.ml: pas de lien avec les module type - dans les contraintes sur les modules *) - let new_env = + (* A VOIR ICI pb: pas de lien avec les module type + dans les contraintes sur les modules *) + let new_env = List.fold_left (fun acc_env (name, _, mod_exp) -> let complete_name = Name.concat current_module_name name in - let e = Odoc_env.add_module acc_env complete_name in - let tt_mod_exp = + let e = Odoc_env.add_module acc_env complete_name in + let tt_mod_exp = try Typedtree_search.search_module table name with Not_found -> raise (Failure (Odoc_messages.module_not_found_in_typedtree complete_name)) in @@ -1181,12 +1269,12 @@ module Analyser = None mod_exp tt_mod_exp - in - match new_module.m_type with + in + match new_module.m_type with Types.Tmty_signature s -> Odoc_env.add_signature e new_module.m_name - ~rel: (Name.simple new_module.m_name) s - | _ -> + ~rel: (Name.simple new_module.m_name) s + | _ -> e ) env @@ -1209,14 +1297,14 @@ module Analyser = else get_comments_in_module last_pos loc_start in - let new_module = analyse_module + let new_module = analyse_module new_env current_module_name name com_opt mod_exp tt_mod_exp - in + in let eles = f loc_end q in ele_comments @ ((Element_module new_module) :: eles) in @@ -1371,7 +1459,7 @@ module Analyser = { im_name = "dummy" ; im_module = None ; - im_info = comment_opt ; + im_info = comment_opt ; } in (0, env, [ Element_included_module im ]) (* A VOIR : étendre l'environnement ? avec quoi ? *) @@ -1383,16 +1471,16 @@ module Analyser = let pos_end = p_module_expr.Parsetree.pmod_loc.Location.loc_end.Lexing.pos_cnum in let modtype = (* A VOIR : Odoc_env.subst_module_type env ? *) - tt_module_expr.Typedtree.mod_type + tt_module_expr.Typedtree.mod_type in let m_code_intf = - match p_module_expr.Parsetree.pmod_desc with - Parsetree.Pmod_constraint (_, pmodule_type) -> - let loc_start = pmodule_type.Parsetree.pmty_loc.Location.loc_start.Lexing.pos_cnum in + match p_module_expr.Parsetree.pmod_desc with + Parsetree.Pmod_constraint (_, pmodule_type) -> + let loc_start = pmodule_type.Parsetree.pmty_loc.Location.loc_start.Lexing.pos_cnum in let loc_end = pmodule_type.Parsetree.pmty_loc.Location.loc_end.Lexing.pos_cnum in - Some (get_string_of_file loc_start loc_end) - | _ -> - None + Some (get_string_of_file loc_start loc_end) + | _ -> + None in let m_base = { @@ -1404,9 +1492,9 @@ module Analyser = m_kind = Module_struct [] ; m_loc = { loc_impl = Some (!file_name, pos_start) ; loc_inter = None } ; m_top_deps = [] ; - m_code = None ; (* code is set by the caller, after the module is created *) - m_code_intf = m_code_intf ; - m_text_only = false ; + m_code = None ; (* code is set by the caller, after the module is created *) + m_code_intf = m_code_intf ; + m_text_only = false ; } in match (p_module_expr.Parsetree.pmod_desc, tt_module_expr.Typedtree.mod_desc) with @@ -1424,24 +1512,24 @@ module Analyser = | (Parsetree.Pmod_functor (_, pmodule_type, p_module_expr2), Typedtree.Tmod_functor (ident, mtyp, tt_module_expr2)) -> - let loc_start = pmodule_type.Parsetree.pmty_loc.Location.loc_start.Lexing.pos_cnum in + let loc_start = pmodule_type.Parsetree.pmty_loc.Location.loc_start.Lexing.pos_cnum in let loc_end = pmodule_type.Parsetree.pmty_loc.Location.loc_end.Lexing.pos_cnum in - let mp_type_code = get_string_of_file loc_start loc_end in - print_DEBUG (Printf.sprintf "mp_type_code=%s" mp_type_code); - let mp_name = Name.from_ident ident in - let mp_kind = Sig.analyse_module_type_kind env - current_module_name pmodule_type mtyp - in + let mp_type_code = get_string_of_file loc_start loc_end in + print_DEBUG (Printf.sprintf "mp_type_code=%s" mp_type_code); + let mp_name = Name.from_ident ident in + let mp_kind = Sig.analyse_module_type_kind env + current_module_name pmodule_type mtyp + in let param = { mp_name = mp_name ; mp_type = Odoc_env.subst_module_type env mtyp ; - mp_type_code = mp_type_code ; - mp_kind = mp_kind ; + mp_type_code = mp_type_code ; + mp_kind = mp_kind ; } in let dummy_complete_name = (*Name.concat "__"*) param.mp_name in - (* TODO: A VOIR CE __ *) + (* TODO: A VOIR CE __ *) let new_env = Odoc_env.add_module env dummy_complete_name in let m_base2 = analyse_module new_env @@ -1458,9 +1546,9 @@ module Analyser = Typedtree.Tmod_apply (tt_module_expr1, tt_module_expr2, _)) | (Parsetree.Pmod_apply (p_module_expr1, p_module_expr2), Typedtree.Tmod_constraint - ({ Typedtree.mod_desc = Typedtree.Tmod_apply (tt_module_expr1, tt_module_expr2, _)}, + ({ Typedtree.mod_desc = Typedtree.Tmod_apply (tt_module_expr1, tt_module_expr2, _)}, _, _) - ) -> + ) -> let m1 = analyse_module env current_module_name @@ -1481,12 +1569,7 @@ module Analyser = | (Parsetree.Pmod_constraint (p_module_expr2, p_modtype), Typedtree.Tmod_constraint (tt_module_expr2, tt_modtype, _)) -> - print_DEBUG ("Odoc_ast: case Parsetree.Pmod_constraint + Typedtree.Tmod_constraint "^module_name); - - (* we create the module with p_module_expr2 and tt_module_expr2 - but we change its type according to the constraint. - A VOIR : est-ce que c'est bien ? - *) + print_DEBUG ("Odoc_ast: case Parsetree.Pmod_constraint + Typedtree.Tmod_constraint "^module_name); let m_base2 = analyse_module env current_module_name @@ -1495,58 +1578,54 @@ module Analyser = p_module_expr2 tt_module_expr2 in - let mtkind = Sig.analyse_module_type_kind - env + let mtkind = Sig.analyse_module_type_kind env (Name.concat current_module_name "??") p_modtype tt_modtype in + let tt_modtype = Odoc_env.subst_module_type env tt_modtype in + filter_module_with_module_type_constraint m_base2 tt_modtype; { m_base with - m_type = Odoc_env.subst_module_type env tt_modtype ; - m_kind = Module_constraint (m_base2.m_kind, - mtkind) - -(* Module_type_alias { mta_name = "Not analyzed" ; - mta_module = None }) -*) + m_type = tt_modtype ; + m_kind = Module_constraint (m_base2.m_kind, mtkind) ; } | (Parsetree.Pmod_structure p_structure, Typedtree.Tmod_constraint - ({ Typedtree.mod_desc = Typedtree.Tmod_structure tt_structure}, - tt_modtype, _) - ) -> - (* needed for recursive modules *) + ({ Typedtree.mod_desc = Typedtree.Tmod_structure tt_structure}, + tt_modtype, _) + ) -> + (* needed for recursive modules *) - print_DEBUG ("Odoc_ast: case Parsetree.Pmod_structure + Typedtree.Tmod_constraint "^module_name); - let elements = analyse_structure env complete_name pos_start pos_end p_structure tt_structure in + print_DEBUG ("Odoc_ast: case Parsetree.Pmod_structure + Typedtree.Tmod_constraint "^module_name); + let elements = analyse_structure env complete_name pos_start pos_end p_structure tt_structure in (* we must complete the included modules *) let included_modules_from_tt = tt_get_included_module_list tt_structure in let elements2 = replace_dummy_included_modules elements included_modules_from_tt in { m_base with - m_type = Odoc_env.subst_module_type env tt_modtype ; - m_kind = Module_struct elements2 ; - } + m_type = Odoc_env.subst_module_type env tt_modtype ; + m_kind = Module_struct elements2 ; + } | (parsetree, typedtree) -> (*DEBUG*)let s_parse = (*DEBUG*) match parsetree with (*DEBUG*) Parsetree.Pmod_ident _ -> "Pmod_ident" - (*DEBUG*) | Parsetree.Pmod_structure _ -> "Pmod_structure" - (*DEBUG*) | Parsetree.Pmod_functor _ -> "Pmod_functor" - (*DEBUG*) | Parsetree.Pmod_apply _ -> "Pmod_apply" - (*DEBUG*) | Parsetree.Pmod_constraint _ -> "Pmod_constraint" - (*DEBUG*)in - (*DEBUG*)let s_typed = + (*DEBUG*) | Parsetree.Pmod_structure _ -> "Pmod_structure" + (*DEBUG*) | Parsetree.Pmod_functor _ -> "Pmod_functor" + (*DEBUG*) | Parsetree.Pmod_apply _ -> "Pmod_apply" + (*DEBUG*) | Parsetree.Pmod_constraint _ -> "Pmod_constraint" + (*DEBUG*)in + (*DEBUG*)let s_typed = (*DEBUG*) match typedtree with (*DEBUG*) Typedtree.Tmod_ident _ -> "Tmod_ident" - (*DEBUG*) | Typedtree.Tmod_structure _ -> "Tmod_structure" - (*DEBUG*) | Typedtree.Tmod_functor _ -> "Tmod_functor" - (*DEBUG*) | Typedtree.Tmod_apply _ -> "Tmod_apply" - (*DEBUG*) | Typedtree.Tmod_constraint _ -> "Tmod_constraint" - (*DEBUG*)in - (*DEBUG*)let code = get_string_of_file pos_start pos_end in - print_DEBUG (Printf.sprintf "code=%s\ns_parse=%s\ns_typed=%s\n" code s_parse s_typed); + (*DEBUG*) | Typedtree.Tmod_structure _ -> "Tmod_structure" + (*DEBUG*) | Typedtree.Tmod_functor _ -> "Tmod_functor" + (*DEBUG*) | Typedtree.Tmod_apply _ -> "Tmod_apply" + (*DEBUG*) | Typedtree.Tmod_constraint _ -> "Tmod_constraint" + (*DEBUG*)in + (*DEBUG*)let code = get_string_of_file pos_start pos_end in + print_DEBUG (Printf.sprintf "code=%s\ns_parse=%s\ns_typed=%s\n" code s_parse s_typed); raise (Failure "analyse_module: parsetree and typedtree don't match.") @@ -1586,12 +1665,8 @@ module Analyser = m_kind = kind ; m_loc = { loc_impl = Some (!file_name, 0) ; loc_inter = None } ; m_top_deps = [] ; - m_code = (if !Odoc_args.keep_code then Some !file else None) ; - m_code_intf = None ; - m_text_only = false ; + m_code = (if !Odoc_args.keep_code then Some !file else None) ; + m_code_intf = None ; + m_text_only = false ; } end - - - -(* eof $Id$ *) diff --git a/ocamldoc/odoc_comments.ml b/ocamldoc/odoc_comments.ml index 54650acb5..51873e305 100644 --- a/ocamldoc/odoc_comments.ml +++ b/ocamldoc/odoc_comments.ml @@ -333,12 +333,11 @@ let info_of_string s = None -> dummy | Some i -> i -let info_of_comment_file f = +let info_of_comment_file modlist f = try let s = Odoc_misc.input_file_as_string f in - info_of_string s + let i = info_of_string s in + Odoc_cross.assoc_comments_info "" modlist i with Sys_error s -> failwith s - -(* eof $Id$ *) diff --git a/ocamldoc/odoc_comments.mli b/ocamldoc/odoc_comments.mli index b78369d18..28122cda9 100644 --- a/ocamldoc/odoc_comments.mli +++ b/ocamldoc/odoc_comments.mli @@ -66,7 +66,9 @@ val info_of_string : string -> Odoc_types.info (** [info_of_comment_file file] parses the given file and return an {!Odoc_types.info} structure. The content of the file must have the same syntax as the content of a special comment. + The given module list is used for cross reference. @raise Failure is the file could not be opened or there is a syntax error. *) -val info_of_comment_file : string -> Odoc_types.info +val info_of_comment_file : + Odoc_module.t_module list -> string -> Odoc_types.info diff --git a/ocamldoc/odoc_cross.ml b/ocamldoc/odoc_cross.ml index f589858fa..02ad79f50 100644 --- a/ocamldoc/odoc_cross.ml +++ b/ocamldoc/odoc_cross.ml @@ -87,8 +87,8 @@ let rec build_alias_list = function ( match m.m_kind with Module_alias ma -> - Hashtbl.add module_aliases m.m_name (ma.ma_name, Alias_to_resolve); - Hashtbl.add module_and_modtype_aliases m.m_name (ma.ma_name, Alias_to_resolve) + Hashtbl.add module_aliases m.m_name (ma.ma_name, Alias_to_resolve); + Hashtbl.add module_and_modtype_aliases m.m_name (ma.ma_name, Alias_to_resolve) | _ -> () ); build_alias_list q @@ -96,8 +96,8 @@ let rec build_alias_list = function ( match mt.mt_kind with Some (Module_type_alias mta) -> - Hashtbl.add module_and_modtype_aliases - mt.mt_name (mta.mta_name, Alias_to_resolve) + Hashtbl.add module_and_modtype_aliases + mt.mt_name (mta.mta_name, Alias_to_resolve) | _ -> () ); build_alias_list q @@ -106,8 +106,8 @@ let rec build_alias_list = function match e.ex_alias with None -> () | Some ea -> - Hashtbl.add exception_aliases - e.ex_name (ea.ea_name,Alias_to_resolve) + Hashtbl.add exception_aliases + e.ex_name (ea.ea_name,Alias_to_resolve) ); build_alias_list q | _ :: q -> @@ -126,26 +126,26 @@ let name_alias = let rec f t name = try match Hashtbl.find t name with - (s, Alias_resolved) -> s - | (s, Alias_to_resolve) -> f t s + (s, Alias_resolved) -> s + | (s, Alias_to_resolve) -> f t s with Not_found -> - try - Hashtbl.iter - (fun n2 (n3, _) -> - if Name.prefix n2 name then - let ln2 = String.length n2 in - let s = n3^(String.sub name ln2 ((String.length name) - ln2)) in - raise (Found s) - ) - t ; - Hashtbl.replace t name (name, Alias_resolved); - name - with - Found s -> - let s2 = f t s in - Hashtbl.replace t s2 (s2, Alias_resolved); - s2 + try + Hashtbl.iter + (fun n2 (n3, _) -> + if Name.prefix n2 name then + let ln2 = String.length n2 in + let s = n3^(String.sub name ln2 ((String.length name) - ln2)) in + raise (Found s) + ) + t ; + Hashtbl.replace t name (name, Alias_resolved); + name + with + Found s -> + let s2 = f t s in + Hashtbl.replace t s2 (s2, Alias_resolved); + s2 in fun name alias_tbl -> f alias_tbl name @@ -169,7 +169,7 @@ let add_known_element name k = Not_found -> known_elements := Ele_map.add name [k] !known_elements -let get_known_elements name = +let rec get_known_elements name = try Ele_map.find name !known_elements with Not_found -> [] @@ -252,10 +252,10 @@ class scan = add_known_element e.ex_name (Odoc_search.Res_exception e) method scan_attribute a = add_known_element a.att_value.val_name - (Odoc_search.Res_attribute a) + (Odoc_search.Res_attribute a) method scan_method m = add_known_element m.met_value.val_name - (Odoc_search.Res_method m) + (Odoc_search.Res_method m) method scan_class_pre c = add_known_element c.cl_name (Odoc_search.Res_class c); true @@ -576,118 +576,165 @@ and associate_in_class_type module_list (acc_b_modif, acc_incomplete_top_module_ let ao = Odoc_misc.apply_opt -let rec assoc_comments_text_elements module_list t_ele = +let not_found_of_kind kind name = + (match kind with + RK_module -> Odoc_messages.cross_module_not_found + | RK_module_type -> Odoc_messages.cross_module_type_not_found + | RK_class -> Odoc_messages.cross_class_not_found + | RK_class_type -> Odoc_messages.cross_class_type_not_found + | RK_value -> Odoc_messages.cross_value_not_found + | RK_type -> Odoc_messages.cross_type_not_found + | RK_exception -> Odoc_messages.cross_exception_not_found + | RK_attribute -> Odoc_messages.cross_attribute_not_found + | RK_method -> Odoc_messages.cross_method_not_found + | RK_section _ -> Odoc_messages.cross_section_not_found + ) name + +let rec assoc_comments_text_elements parent_name module_list t_ele = match t_ele with | Raw _ | Code _ | CodePre _ | Latex _ | Verbatim _ -> t_ele - | Bold t -> Bold (assoc_comments_text module_list t) - | Italic t -> Italic (assoc_comments_text module_list t) - | Center t -> Center (assoc_comments_text module_list t) - | Left t -> Left (assoc_comments_text module_list t) - | Right t -> Right (assoc_comments_text module_list t) - | Emphasize t -> Emphasize (assoc_comments_text module_list t) - | List l -> List (List.map (assoc_comments_text module_list) l) - | Enum l -> Enum (List.map (assoc_comments_text module_list) l) + | Bold t -> Bold (assoc_comments_text parent_name module_list t) + | Italic t -> Italic (assoc_comments_text parent_name module_list t) + | Center t -> Center (assoc_comments_text parent_name module_list t) + | Left t -> Left (assoc_comments_text parent_name module_list t) + | Right t -> Right (assoc_comments_text parent_name module_list t) + | Emphasize t -> Emphasize (assoc_comments_text parent_name module_list t) + | List l -> List (List.map (assoc_comments_text parent_name module_list) l) + | Enum l -> Enum (List.map (assoc_comments_text parent_name module_list) l) | Newline -> Newline - | Block t -> Block (assoc_comments_text module_list t) - | Superscript t -> Superscript (assoc_comments_text module_list t) - | Subscript t -> Subscript (assoc_comments_text module_list t) - | Title (n, l_opt, t) -> Title (n, l_opt, (assoc_comments_text module_list t)) - | Link (s, t) -> Link (s, (assoc_comments_text module_list t)) - | Ref (name, None) -> + | Block t -> Block (assoc_comments_text parent_name module_list t) + | Superscript t -> Superscript (assoc_comments_text parent_name module_list t) + | Subscript t -> Subscript (assoc_comments_text parent_name module_list t) + | Title (n, l_opt, t) -> Title (n, l_opt, (assoc_comments_text parent_name module_list t)) + | Link (s, t) -> Link (s, (assoc_comments_text parent_name module_list t)) + | Ref (initial_name, None) -> ( - match get_known_elements name with - [] -> - ( - try - let re = Str.regexp ("^"^(Str.quote name)^"$") in - let t = Odoc_search.find_section module_list re in - let v2 = (name, Some (RK_section t)) in - add_verified v2 ; - Ref (name, Some (RK_section t)) - with - Not_found -> - Odoc_messages.pwarning (Odoc_messages.cross_element_not_found name); - Ref (name, None) - ) - | ele :: _ -> - (* we look for the first element with this name *) - let kind = - match ele with - Odoc_search.Res_module _ -> RK_module - | Odoc_search.Res_module_type _ -> RK_module_type - | Odoc_search.Res_class _ -> RK_class - | Odoc_search.Res_class_type _ -> RK_class_type - | Odoc_search.Res_value _ -> RK_value - | Odoc_search.Res_type _ -> RK_type - | Odoc_search.Res_exception _ -> RK_exception - | Odoc_search.Res_attribute _ -> RK_attribute - | Odoc_search.Res_method _ -> RK_method - | Odoc_search.Res_section (_ ,t)-> assert false - in - add_verified (name, Some kind) ; - Ref (name, Some kind) + let rec iter_parent ?parent_name name = + let res = + match get_known_elements name with + [] -> + ( + try + let re = Str.regexp ("^"^(Str.quote name)^"$") in + let t = Odoc_search.find_section module_list re in + let v2 = (name, Some (RK_section t)) in + add_verified v2 ; + (name, Some (RK_section t)) + with + Not_found -> + (name, None) + ) + | ele :: _ -> + (* we look for the first element with this name *) + let (name, kind) = + match ele with + Odoc_search.Res_module m -> (m.m_name, RK_module) + | Odoc_search.Res_module_type mt -> (mt.mt_name, RK_module_type) + | Odoc_search.Res_class c -> (c.cl_name, RK_class) + | Odoc_search.Res_class_type ct -> (ct.clt_name, RK_class_type) + | Odoc_search.Res_value v -> (v.val_name, RK_value) + | Odoc_search.Res_type t -> (t.ty_name, RK_type) + | Odoc_search.Res_exception e -> (e.ex_name, RK_exception) + | Odoc_search.Res_attribute a -> (a.att_value.val_name, RK_attribute) + | Odoc_search.Res_method m -> (m.met_value.val_name, RK_method) + | Odoc_search.Res_section (_ ,t)-> assert false + in + add_verified (name, Some kind) ; + (name, Some kind) + in + match res with + | (name, Some k) -> Ref (name, Some k) + | (_, None) -> + match parent_name with + None -> + Odoc_messages.pwarning (Odoc_messages.cross_element_not_found initial_name); + Ref (initial_name, None) + | Some p -> + let parent_name = + match Name.father p with + "" -> None + | s -> Some s + in + iter_parent ?parent_name (Name.concat p initial_name) + in + iter_parent ~parent_name initial_name ) - | Ref (name, Some kind) -> + | Ref (initial_name, Some kind) -> ( - let v = (name, Some kind) in - if was_verified v then - Ref (name, Some kind) - else - match kind with - | RK_section _ -> - ( - (** we just verify that we find an element of this kind with this name *) - try - let re = Str.regexp ("^"^(Str.quote name)^"$") in - let t = Odoc_search.find_section module_list re in - let v2 = (name, Some (RK_section t)) in - add_verified v2 ; - Ref (name, Some (RK_section t)) - with - Not_found -> - Odoc_messages.pwarning (Odoc_messages.cross_section_not_found name); - Ref (name, None) - ) - | _ -> - let (f,f_mes) = - match kind with - RK_module -> module_exists, Odoc_messages.cross_module_not_found - | RK_module_type -> module_type_exists, Odoc_messages.cross_module_type_not_found - | RK_class -> class_exists, Odoc_messages.cross_class_not_found - | RK_class_type -> class_type_exists, Odoc_messages.cross_class_type_not_found - | RK_value -> value_exists, Odoc_messages.cross_value_not_found - | RK_type -> type_exists, Odoc_messages.cross_type_not_found - | RK_exception -> exception_exists, Odoc_messages.cross_exception_not_found - | RK_attribute -> attribute_exists, Odoc_messages.cross_attribute_not_found - | RK_method -> method_exists, Odoc_messages.cross_method_not_found - | RK_section _ -> assert false - in - if f name then - ( - add_verified v ; - Ref (name, Some kind) - ) - else - ( - Odoc_messages.pwarning (f_mes name); - Ref (name, None) - ) + let rec iter_parent ?parent_name name = + let v = (name, Some kind) in + if was_verified v then + Ref (name, Some kind) + else + let res = + match kind with + | RK_section _ -> + ( + (** we just verify that we find an element of this kind with this name *) + try + let re = Str.regexp ("^"^(Str.quote name)^"$") in + let t = Odoc_search.find_section module_list re in + let v2 = (name, Some (RK_section t)) in + add_verified v2 ; + (name, Some (RK_section t)) + with + Not_found -> + (name, None) + ) + | _ -> + let f = + match kind with + RK_module -> module_exists + | RK_module_type -> module_type_exists + | RK_class -> class_exists + | RK_class_type -> class_type_exists + | RK_value -> value_exists + | RK_type -> type_exists + | RK_exception -> exception_exists + | RK_attribute -> attribute_exists + | RK_method -> method_exists + | RK_section _ -> assert false + in + if f name then + ( + add_verified v ; + (name, Some kind) + ) + else + (name, None) + in + match res with + | (name, Some k) -> Ref (name, Some k) + | (_, None) -> + match parent_name with + None -> + Odoc_messages.pwarning (not_found_of_kind kind initial_name); + Ref (initial_name, None) + | Some p -> + let parent_name = + match Name.father p with + "" -> None + | s -> Some s + in + iter_parent ?parent_name (Name.concat p initial_name) + in + iter_parent ~parent_name initial_name ) | Module_list l -> Module_list l | Index_list -> Index_list - | Custom (s,t) -> Custom (s, (assoc_comments_text module_list t)) + | Custom (s,t) -> Custom (s, (assoc_comments_text parent_name module_list t)) -and assoc_comments_text module_list text = - List.map (assoc_comments_text_elements module_list) text +and assoc_comments_text parent_name module_list text = + List.map (assoc_comments_text_elements parent_name module_list) text -and assoc_comments_info module_list i = - let ft = assoc_comments_text module_list in +and assoc_comments_info parent_name module_list i = + let ft = assoc_comments_text parent_name module_list in { i with i_desc = ao ft i.i_desc ; @@ -700,133 +747,155 @@ and assoc_comments_info module_list i = } -let rec assoc_comments_module_element module_list m_ele = +let rec assoc_comments_module_element parent_name module_list m_ele = match m_ele with - Element_module m -> Element_module (assoc_comments_module module_list m) - | Element_module_type mt -> Element_module_type (assoc_comments_module_type module_list mt) - | Element_included_module _ -> m_ele (* don't go down into the aliases *) - | Element_class c -> Element_class (assoc_comments_class module_list c) - | Element_class_type ct -> Element_class_type (assoc_comments_class_type module_list ct) - | Element_value v -> Element_value (assoc_comments_value module_list v) - | Element_exception e -> Element_exception (assoc_comments_exception module_list e) - | Element_type t -> Element_type (assoc_comments_type module_list t) - | Element_module_comment t -> Element_module_comment (assoc_comments_text module_list t) - -and assoc_comments_class_element module_list c_ele = + Element_module m -> + Element_module (assoc_comments_module module_list m) + | Element_module_type mt -> + Element_module_type (assoc_comments_module_type module_list mt) + | Element_included_module _ -> + m_ele (* don't go down into the aliases *) + | Element_class c -> + Element_class (assoc_comments_class module_list c) + | Element_class_type ct -> + Element_class_type (assoc_comments_class_type module_list ct) + | Element_value v -> + Element_value (assoc_comments_value module_list v) + | Element_exception e -> + Element_exception (assoc_comments_exception module_list e) + | Element_type t -> + Element_type (assoc_comments_type module_list t) + | Element_module_comment t -> + Element_module_comment (assoc_comments_text parent_name module_list t) + +and assoc_comments_class_element parent_name module_list c_ele = match c_ele with - Class_attribute a -> Class_attribute (assoc_comments_attribute module_list a) - | Class_method m -> Class_method (assoc_comments_method module_list m) - | Class_comment t -> Class_comment (assoc_comments_text module_list t) - -and assoc_comments_module_kind module_list mk = + Class_attribute a -> + Class_attribute (assoc_comments_attribute module_list a) + | Class_method m -> + Class_method (assoc_comments_method module_list m) + | Class_comment t -> + Class_comment (assoc_comments_text parent_name module_list t) + +and assoc_comments_module_kind parent_name module_list mk = match mk with | Module_struct eles -> - Module_struct (List.map (assoc_comments_module_element module_list) eles) + Module_struct + (List.map (assoc_comments_module_element parent_name module_list) eles) | Module_alias _ | Module_functor _ -> mk | Module_apply (mk1, mk2) -> - Module_apply (assoc_comments_module_kind module_list mk1, - assoc_comments_module_kind module_list mk2) + Module_apply (assoc_comments_module_kind parent_name module_list mk1, + assoc_comments_module_kind parent_name module_list mk2) | Module_with (mtk, s) -> - Module_with (assoc_comments_module_type_kind module_list mtk, s) + Module_with (assoc_comments_module_type_kind parent_name module_list mtk, s) | Module_constraint (mk1, mtk) -> - Module_constraint (assoc_comments_module_kind module_list mk1, - assoc_comments_module_type_kind module_list mtk) + Module_constraint + (assoc_comments_module_kind parent_name module_list mk1, + assoc_comments_module_type_kind parent_name module_list mtk) -and assoc_comments_module_type_kind module_list mtk = +and assoc_comments_module_type_kind parent_name module_list mtk = match mtk with | Module_type_struct eles -> - Module_type_struct (List.map (assoc_comments_module_element module_list) eles) + Module_type_struct + (List.map (assoc_comments_module_element parent_name module_list) eles) | Module_type_functor (params, mtk1) -> - Module_type_functor (params, assoc_comments_module_type_kind module_list mtk1) + Module_type_functor + (params, assoc_comments_module_type_kind parent_name module_list mtk1) | Module_type_alias _ -> mtk | Module_type_with (mtk1, s) -> - Module_type_with (assoc_comments_module_type_kind module_list mtk1, s) + Module_type_with + (assoc_comments_module_type_kind parent_name module_list mtk1, s) -and assoc_comments_class_kind module_list ck = +and assoc_comments_class_kind parent_name module_list ck = match ck with Class_structure (inher, eles) -> let inher2 = List.map - (fun ic -> { ic with - ic_text = ao (assoc_comments_text module_list) ic.ic_text }) + (fun ic -> + { ic with + ic_text = ao (assoc_comments_text parent_name module_list) ic.ic_text }) inher in - Class_structure (inher2, List.map (assoc_comments_class_element module_list) eles) + Class_structure + (inher2, List.map (assoc_comments_class_element parent_name module_list) eles) | Class_apply _ | Class_constr _ -> ck | Class_constraint (ck1, ctk) -> - Class_constraint (assoc_comments_class_kind module_list ck1, - assoc_comments_class_type_kind module_list ctk) + Class_constraint (assoc_comments_class_kind parent_name module_list ck1, + assoc_comments_class_type_kind parent_name module_list ctk) -and assoc_comments_class_type_kind module_list ctk = +and assoc_comments_class_type_kind parent_name module_list ctk = match ctk with Class_signature (inher, eles) -> let inher2 = List.map (fun ic -> { ic with - ic_text = ao (assoc_comments_text module_list) ic.ic_text }) + ic_text = ao (assoc_comments_text parent_name module_list) ic.ic_text }) inher in - Class_signature (inher2, List.map (assoc_comments_class_element module_list) eles) + Class_signature (inher2, List.map (assoc_comments_class_element parent_name module_list) eles) | Class_type _ -> ctk and assoc_comments_module module_list m = - m.m_info <- ao (assoc_comments_info module_list) m.m_info ; - m.m_kind <- assoc_comments_module_kind module_list m.m_kind ; + m.m_info <- ao (assoc_comments_info m.m_name module_list) m.m_info ; + m.m_kind <- assoc_comments_module_kind m.m_name module_list m.m_kind ; m and assoc_comments_module_type module_list mt = - mt.mt_info <- ao (assoc_comments_info module_list) mt.mt_info ; - mt.mt_kind <- ao (assoc_comments_module_type_kind module_list) mt.mt_kind ; + mt.mt_info <- ao (assoc_comments_info mt.mt_name module_list) mt.mt_info ; + mt.mt_kind <- ao (assoc_comments_module_type_kind mt.mt_name module_list) mt.mt_kind ; mt and assoc_comments_class module_list c = - c.cl_info <- ao (assoc_comments_info module_list) c.cl_info ; - c.cl_kind <- assoc_comments_class_kind module_list c.cl_kind ; - assoc_comments_parameter_list module_list c.cl_parameters; + c.cl_info <- ao (assoc_comments_info c.cl_name module_list) c.cl_info ; + c.cl_kind <- assoc_comments_class_kind c.cl_name module_list c.cl_kind ; + assoc_comments_parameter_list c.cl_name module_list c.cl_parameters; c and assoc_comments_class_type module_list ct = - ct.clt_info <- ao (assoc_comments_info module_list) ct.clt_info ; - ct.clt_kind <- assoc_comments_class_type_kind module_list ct.clt_kind ; + ct.clt_info <- ao (assoc_comments_info ct.clt_name module_list) ct.clt_info ; + ct.clt_kind <- assoc_comments_class_type_kind ct.clt_name module_list ct.clt_kind ; ct -and assoc_comments_parameter module_list p = +and assoc_comments_parameter parent_name module_list p = match p with Simple_name sn -> - sn.sn_text <- ao (assoc_comments_text module_list) sn.sn_text + sn.sn_text <- ao (assoc_comments_text parent_name module_list) sn.sn_text | Tuple (l, t) -> - List.iter (assoc_comments_parameter module_list) l + List.iter (assoc_comments_parameter parent_name module_list) l -and assoc_comments_parameter_list module_list pl = - List.iter (assoc_comments_parameter module_list) pl +and assoc_comments_parameter_list parent_name module_list pl = + List.iter (assoc_comments_parameter parent_name module_list) pl and assoc_comments_value module_list v = - v.val_info <- ao (assoc_comments_info module_list) v.val_info ; - assoc_comments_parameter_list module_list v.val_parameters; + let parent = Name.father v.val_name in + v.val_info <- ao (assoc_comments_info parent module_list) v.val_info ; + assoc_comments_parameter_list parent module_list v.val_parameters; v and assoc_comments_exception module_list e = - e.ex_info <- ao (assoc_comments_info module_list) e.ex_info ; + let parent = Name.father e.ex_name in + e.ex_info <- ao (assoc_comments_info parent module_list) e.ex_info ; e and assoc_comments_type module_list t = - t.ty_info <- ao (assoc_comments_info module_list) t.ty_info ; + let parent = Name.father t.ty_name in + t.ty_info <- ao (assoc_comments_info parent module_list) t.ty_info ; (match t.ty_kind with Type_abstract -> () | Type_variant (vl, _) -> List.iter - (fun vc -> vc.vc_text <- ao (assoc_comments_text module_list) vc.vc_text) + (fun vc -> vc.vc_text <- ao (assoc_comments_text parent module_list) vc.vc_text) vl | Type_record (fl, _) -> List.iter - (fun rf -> rf.rf_text <- ao (assoc_comments_text module_list) rf.rf_text) + (fun rf -> rf.rf_text <- ao (assoc_comments_text parent module_list) rf.rf_text) fl ); t @@ -836,8 +905,9 @@ and assoc_comments_attribute module_list a = a and assoc_comments_method module_list m = + let parent_name = Name.father m.met_value.val_name in let _ = assoc_comments_value module_list m.met_value in - assoc_comments_parameter_list module_list m.met_value.val_parameters; + assoc_comments_parameter_list parent_name module_list m.met_value.val_parameters; m @@ -897,6 +967,3 @@ let associate module_list = (* Find a type for each name of element which is referenced in comments. *) ignore (associate_type_of_elements_in_comments module_list) - - -(* eof $Id$ *) diff --git a/ocamldoc/odoc_cross.mli b/ocamldoc/odoc_cross.mli index 1c6a35702..2fce2c48c 100644 --- a/ocamldoc/odoc_cross.mli +++ b/ocamldoc/odoc_cross.mli @@ -15,3 +15,6 @@ val associate : Odoc_module.t_module list -> unit +val assoc_comments_info : + string -> Odoc_module.t_module list -> + Odoc_types.info -> Odoc_types.info diff --git a/ocamldoc/odoc_dot.ml b/ocamldoc/odoc_dot.ml index 877a84b91..452bf2bfa 100644 --- a/ocamldoc/odoc_dot.ml +++ b/ocamldoc/odoc_dot.ml @@ -11,7 +11,7 @@ (* $Id$ *) -(** Definition of a class which outputs a dot file showing +(** Definition of a class which outputs a dot file showing top modules dependencies.*) open Odoc_info @@ -32,7 +32,7 @@ class dot = val mutable colors = !Args.dot_colors (** Graph header. *) - method header = + method header = "digraph G {\n"^ " size=\"10,7.5\";\n"^ " ratio=\"fill\";\n"^ @@ -43,14 +43,14 @@ class dot = method get_one_color = match colors with [] -> None - | h :: q -> + | h :: q -> colors <- q ; Some h method node_color s = try Some (List.assoc s loc_colors) with - Not_found -> + Not_found -> match self#get_one_color with None -> None | Some c -> @@ -71,10 +71,10 @@ class dot = F.fprintf fmt "\"%s\" -> \"%s\";\n" src dest method generate_for_module fmt m = - let l = List.filter - (fun n -> - !Args.dot_include_all or - (List.exists (fun m -> m.Module.m_name = n) modules)) + let l = List.filter + (fun n -> + !Args.dot_include_all or + (List.exists (fun m -> m.Module.m_name = n) modules)) m.Module.m_top_deps in self#print_module_atts fmt m; @@ -91,9 +91,9 @@ class dot = let oc = open_out !Args.out_file in let fmt = F.formatter_of_out_channel oc in F.fprintf fmt "%s" self#header; - let graph = Odoc_info.Dep.deps_of_types + let graph = Odoc_info.Dep.deps_of_types ~kernel: !Args.dot_reduce - types + types in List.iter (self#generate_for_type fmt) graph; F.fprintf fmt "}\n" ; @@ -103,14 +103,14 @@ class dot = Sys_error s -> raise (Failure s) - method generate_modules modules_list = + method generate_modules modules_list = try modules <- modules_list ; let oc = open_out !Args.out_file in let fmt = F.formatter_of_out_channel oc in F.fprintf fmt "%s" self#header; - if !Args.dot_reduce then + if !Args.dot_reduce then Odoc_info.Dep.kernel_deps_of_modules modules_list; List.iter (self#generate_for_module fmt) modules_list; @@ -123,6 +123,7 @@ class dot = (** Generate the dot code in the file {!Odoc_info.Args.out_file}. *) method generate (modules_list : Odoc_info.Module.t_module list) = + colors <- !Args.dot_colors; if !Args.dot_types then self#generate_types (Odoc_info.Search.types modules_list) else diff --git a/ocamldoc/odoc_html.ml b/ocamldoc/odoc_html.ml index 104695813..ff816b24b 100644 --- a/ocamldoc/odoc_html.ml +++ b/ocamldoc/odoc_html.ml @@ -899,7 +899,7 @@ class html = in bs b "<head>\n"; bs b style; - bs b character_encoding ; + bs b character_encoding ; bs b "<link rel=\"Start\" href=\""; bs b self#index; bs b "\">\n" ; @@ -1168,10 +1168,21 @@ class html = bs b (self#create_fully_qualified_module_idents_links father a.ma_name); bs b "</code>" | Module_functor (p, k) -> - bs b "<div class=\"sig_block\">"; + if !Odoc_info.Args.html_short_functors then + bs b " " + else + bs b "<div class=\"sig_block\">"; self#html_of_module_parameter b father p; + ( + match k with + Module_functor _ -> () + | _ when !Odoc_info.Args.html_short_functors -> + bs b ": " + | _ -> () + ); self#html_of_module_kind b father ?modu k; - bs b "</div>" + if not !Odoc_info.Args.html_short_functors then + bs b "</div>" | Module_apply (k1, k2) -> (* TODO: l'application n'est pas correcte dans un .mli. Que faire ? -> afficher le module_type du typedtree *) @@ -1190,14 +1201,20 @@ class html = self#html_of_module_kind b father ?modu k method html_of_module_parameter b father p = + let (s_functor,s_arrow) = + if !Odoc_info.Args.html_short_functors then + "", "" + else + "functor ", "-> " + in self#html_of_text b [ - Code "functor ("; + Code (s_functor^"("); Code p.mp_name ; Code " : "; ] ; self#html_of_module_type_kind b father p.mp_kind; - self#html_of_text b [ Code ") -> "] + self#html_of_text b [ Code (") "^s_arrow)] method html_of_module_element b father ele = match ele with @@ -1628,7 +1645,12 @@ class html = else bs b (Name.simple m.m_name) ); - bs b ": "; + ( + match m.m_kind with + Module_functor _ when !Odoc_info.Args.html_short_functors -> + () + | _ -> bs b ": " + ); self#html_of_module_kind b father ~modu: m m.m_kind; bs b "</pre>"; if info then @@ -2040,7 +2062,7 @@ class html = let b = new_buf () in let pre_name = opt (fun c -> c.cl_name) pre in let post_name = opt (fun c -> c.cl_name) post in - bs b doctype ; + bs b doctype ; bs b "<html>\n"; self#print_header b ~nav: (Some (pre_name, post_name, cl.cl_name)) @@ -2087,7 +2109,7 @@ class html = let b = new_buf () in let pre_name = opt (fun ct -> ct.clt_name) pre in let post_name = opt (fun ct -> ct.clt_name) post in - bs b doctype ; + bs b doctype ; bs b "<html>\n"; self#print_header b ~nav: (Some (pre_name, post_name, clt.clt_name)) @@ -2133,7 +2155,7 @@ class html = let b = new_buf () in let pre_name = opt (fun mt -> mt.mt_name) pre in let post_name = opt (fun mt -> mt.mt_name) post in - bs b doctype ; + bs b doctype ; bs b "<html>\n"; self#print_header b ~nav: (Some (pre_name, post_name, mt.mt_name)) @@ -2201,7 +2223,7 @@ class html = let b = new_buf () in let pre_name = opt (fun m -> m.m_name) pre in let post_name = opt (fun m -> m.m_name) post in - bs b doctype ; + bs b doctype ; bs b "<html>\n"; self#print_header b ~nav: (Some (pre_name, post_name, modu.m_name)) @@ -2210,16 +2232,16 @@ class html = bs b "<body>\n" ; self#print_navbar b pre_name post_name modu.m_name ; bs b "<center><h1>"; - if modu.m_text_only then - bs b modu.m_name - else - ( + if modu.m_text_only then + bs b modu.m_name + else + ( bs b ( if Module.module_is_functor modu then - Odoc_messages.functo + Odoc_messages.functo else - Odoc_messages.modul + Odoc_messages.modul ); bp b " <a href=\"%s\">%s</a>" type_file modu.m_name; ( @@ -2227,7 +2249,7 @@ class html = None -> () | Some _ -> bp b " (<a href=\"%s\">.ml</a>)" code_file ) - ); + ); bs b "</h1></center>\n<br>\n"; if not modu.m_text_only then self#html_of_module b ~with_link: false modu; @@ -2282,7 +2304,7 @@ class html = let chanout = open_out (Filename.concat !Args.target_dir self#index) in let b = new_buf () in let title = match !Args.title with None -> "" | Some t -> self#escape t in - bs b doctype ; + bs b doctype ; bs b "<html>\n"; self#print_header b self#title; bs b "<body>\n"; @@ -2290,7 +2312,8 @@ class html = bs b title; bs b "</h1></center>\n" ; let info = Odoc_info.apply_opt - Odoc_info.info_of_comment_file !Odoc_info.Args.intro_file + (Odoc_info.info_of_comment_file module_list) + !Odoc_info.Args.intro_file in ( match info with @@ -2299,7 +2322,7 @@ class html = bs b "<br/>"; self#html_of_Module_list b (List.map (fun m -> m.m_name) module_list); - bs b "</body>\n</html>" + bs b "</body>\n</html>" | Some i -> self#html_of_info ~indent: false b info ); Buffer.output_buffer chanout b; diff --git a/ocamldoc/odoc_info.mli b/ocamldoc/odoc_info.mli index ae849fa56..3fa8ea822 100644 --- a/ocamldoc/odoc_info.mli +++ b/ocamldoc/odoc_info.mli @@ -210,7 +210,7 @@ module Type : | Type_variant of variant_constructor list * bool (** constructors * bool *) | Type_record of record_field list * bool - (** fields * bool *) + (** fields * bool *) (** Representation of a type. *) type t_type = Odoc_type.t_type = @@ -410,7 +410,7 @@ module Module : { im_name : Name.t ; (** Complete name of the included module. *) mutable im_module : mmt option ; (** The included module or module type, if we found it. *) - mutable im_info : Odoc_types.info option ; (** comment associated to the includ directive *) + mutable im_info : Odoc_types.info option ; (** comment associated to the includ directive *) } and module_alias = Odoc_module.module_alias = @@ -420,10 +420,10 @@ module Module : } and module_parameter = Odoc_module.module_parameter = { - mp_name : string ; (** the name *) - mp_type : Types.module_type ; (** the type *) - mp_type_code : string ; (** the original code *) - mp_kind : module_type_kind ; (** the way the parameter was built *) + mp_name : string ; (** the name *) + mp_type : Types.module_type ; (** the type *) + mp_type_code : string ; (** the original code *) + mp_kind : module_type_kind ; (** the way the parameter was built *) } (** Different kinds of a module. *) @@ -444,16 +444,16 @@ module Module : and t_module = Odoc_module.t_module = { m_name : Name.t ; (** Complete name of the module. *) - m_type : Types.module_type ; (** The type of the module. *) + mutable m_type : Types.module_type ; (** The type of the module. *) mutable m_info : info option ; (** Information found in the optional associated comment. *) m_is_interface : bool ; (** [true] for modules read from interface files *) m_file : string ; (** The file the module is defined in. *) mutable m_kind : module_kind ; (** The way the module is defined. *) mutable m_loc : location ; mutable m_top_deps : Name.t list ; (** The toplevels module names this module depends on. *) - mutable m_code : string option ; (** The whole code of the module *) - mutable m_code_intf : string option ; (** The whole code of the interface of the module *) - m_text_only : bool ; (** [true] if the module comes from a text file *) + mutable m_code : string option ; (** The whole code of the module *) + mutable m_code_intf : string option ; (** The whole code of the interface of the module *) + m_text_only : bool ; (** [true] if the module comes from a text file *) } and module_type_alias = Odoc_module.module_type_alias = @@ -477,7 +477,7 @@ module Module : { mt_name : Name.t ; (** Complete name of the module type. *) mutable mt_info : info option ; (** Information found in the optional associated comment. *) - mt_type : Types.module_type option ; (** [None] means that the module type is abstract. *) + mutable mt_type : Types.module_type option ; (** [None] means that the module type is abstract. *) mt_is_interface : bool ; (** [true] for modules read from interface files. *) mt_file : string ; (** The file the module type is defined in. *) mutable mt_kind : module_type_kind option ; @@ -750,10 +750,11 @@ val info_string_of_info : info -> string (** [info_of_comment_file file] parses the given file and return an {!Odoc_info.info} structure. The content of the file must have the same syntax as the content of a special comment. + The given module list is used for cross reference. @raise Failure is the file could not be opened or there is a syntax error. *) -val info_of_comment_file : string -> info +val info_of_comment_file : Module.t_module list -> string -> info (** [remove_ending_newline s] returns [s] without the optional ending newline. *) val remove_ending_newline : string -> string @@ -919,13 +920,13 @@ module Args : sig (** The kind of source file in arguments. *) type source_file = - Impl_file of string - | Intf_file of string - | Text_file of string + Impl_file of string + | Intf_file of string + | Text_file of string (** The class type of documentation generators. *) class type doc_generator = - object method generate : Module.t_module list -> unit end + object method generate : Module.t_module list -> unit end (** The file used by the generators outputting only one file. *) val out_file : string ref @@ -943,7 +944,7 @@ module Args : val intro_file : string option ref (** Flag to indicate whether we must display the complete list of parameters - for functions and methods. *) + for functions and methods. *) val with_parameter_list : bool ref (** The list of module names to hide. *) @@ -961,6 +962,10 @@ module Args : (** To colorize code in HTML generated documentation pages, not code pages. *) val colorize_code : bool ref + (** To display functors in short form rather than with "functor ... -> ", + in HTML generated documentation. *) + val html_short_functors : bool ref + (** The flag which indicates if we must generate a header (for LaTeX). *) val with_header : bool ref diff --git a/ocamldoc/odoc_latex.ml b/ocamldoc/odoc_latex.ml index 26dfb667f..95d1b9178 100644 --- a/ocamldoc/odoc_latex.ml +++ b/ocamldoc/odoc_latex.ml @@ -1014,15 +1014,15 @@ class latex = method generate_for_top_module fmt m = let (first_t, rest_t) = self#first_and_rest_of_info m.m_info in let text = - if m.m_text_only then - [ Title (1, None, [Raw m.m_name] @ + if m.m_text_only then + [ Title (1, None, [Raw m.m_name] @ (match first_t with [] -> [] | t -> (Raw " : ") :: t) - ) ; - ] - else - [ Title (1, None, + ) ; + ] + else + [ Title (1, None, [ Raw (Odoc_messages.modul^" ") ; Code m.m_name ] @ (match first_t with [] -> [] @@ -1044,7 +1044,7 @@ class latex = (Module.module_elements ~trans: false m) (** Print the header of the TeX document. *) - method latex_header fmt = + method latex_header fmt module_list = ps fmt "\\documentclass[11pt]{article} \n"; ps fmt "\\usepackage[latin1]{inputenc} \n"; ps fmt "\\usepackage[T1]{fontenc} \n"; @@ -1067,7 +1067,8 @@ class latex = if !Args.with_toc then ps fmt "\\tableofcontents\n"; ( let info = Odoc_info.apply_opt - Odoc_info.info_of_comment_file !Odoc_info.Args.intro_file + (Odoc_info.info_of_comment_file module_list) + !Odoc_info.Args.intro_file in (match info with None -> () | Some _ -> ps fmt "\\vspace{0.2cm}"); self#latex_of_info fmt info; @@ -1123,7 +1124,7 @@ class latex = try let chanout = open_out main_file in let fmt = Format.formatter_of_out_channel chanout in - if !Args.with_header then self#latex_header fmt; + if !Args.with_header then self#latex_header fmt module_list; List.iter (fun m -> if !Args.separate_files then diff --git a/ocamldoc/odoc_merge.ml b/ocamldoc/odoc_merge.ml index 216102dc2..468c47113 100644 --- a/ocamldoc/odoc_merge.ml +++ b/ocamldoc/odoc_merge.ml @@ -28,7 +28,7 @@ open Odoc_module The merge treatment depends on a given merge_option list. @return the new info structure.*) let merge_info merge_options (m1 : info) (m2 : info) = - let new_desc_opt = + let new_desc_opt = match m1.i_desc, m2.i_desc with None, None -> None | None, Some d @@ -39,7 +39,7 @@ let merge_info merge_options (m1 : info) (m2 : info) = else Some d1 in - let new_authors = + let new_authors = match m1.i_authors, m2.i_authors with [], [] -> [] | l, [] @@ -50,7 +50,7 @@ let merge_info merge_options (m1 : info) (m2 : info) = else l1 in - let new_version = + let new_version = match m1.i_version , m2.i_version with None, None -> None | Some v, None @@ -61,7 +61,7 @@ let merge_info merge_options (m1 : info) (m2 : info) = else Some v1 in - let new_sees = + let new_sees = match m1.i_sees, m2.i_sees with [], [] -> [] | l, [] @@ -72,7 +72,7 @@ let merge_info merge_options (m1 : info) (m2 : info) = else l1 in - let new_since = + let new_since = match m1.i_since, m2.i_since with None, None -> None | Some v, None @@ -83,7 +83,7 @@ let merge_info merge_options (m1 : info) (m2 : info) = else Some v1 in - let new_dep = + let new_dep = match m1.i_deprecated, m2.i_deprecated with None, None -> None | None, Some t @@ -94,7 +94,7 @@ let merge_info merge_options (m1 : info) (m2 : info) = else Some t1 in - let new_params = + let new_params = match m1.i_params, m2.i_params with [], [] -> [] | l, [] @@ -118,7 +118,7 @@ let merge_info merge_options (m1 : info) (m2 : info) = else l1 in - let new_raised_exceptions = + let new_raised_exceptions = match m1.i_raised_exceptions, m2.i_raised_exceptions with [], [] -> [] | l, [] @@ -142,7 +142,7 @@ let merge_info merge_options (m1 : info) (m2 : info) = else l1 in - let new_rv = + let new_rv = match m1.i_return_value, m2.i_return_value with None, None -> None | None, Some t @@ -156,7 +156,7 @@ let merge_info merge_options (m1 : info) (m2 : info) = let new_custom = match m1.i_custom, m2.i_custom with [], [] -> [] - | [], l + | [], l | l, [] -> l | l1, l2 -> if List.mem Merge_custom merge_options then @@ -175,7 +175,7 @@ let merge_info merge_options (m1 : info) (m2 : info) = Odoc_types.i_raised_exceptions = new_raised_exceptions ; Odoc_types.i_return_value = new_rv ; Odoc_types.i_custom = new_custom ; - } + } (** Merge of two optional info structures. *) let merge_info_opt merge_options mli_opt ml_opt = @@ -203,7 +203,7 @@ let merge_types merge_options mli ml = (fun c2 -> c2.vc_name = cons.vc_name) l2 in - let new_desc = + let new_desc = match cons.vc_text, cons2.vc_text with None, None -> None | Some d, None @@ -231,7 +231,7 @@ let merge_types merge_options mli ml = (fun r -> r.rf_name = record.rf_name) l2 in - let new_desc = + let new_desc = match record.rf_text, record2.rf_text with None, None -> None | Some d, None @@ -258,7 +258,7 @@ let merge_types merge_options mli ml = else raise (Failure (Odoc_messages.different_types mli.ty_name)) -(** Merge of two param_info, one from a .mli, one from a .ml. +(** Merge of two param_info, one from a .mli, one from a .ml. The text fields are not handled but will be recreated from the i_params field of the info structure. Here, if a parameter in the .mli has no name, we take the one @@ -277,7 +277,7 @@ let rec merge_param_info pi_mli pi_ml = (* if we're here, then the tuple in the .mli has no parameter names ; then we take the name of the parameter of the .ml and the type of the .mli. *) Simple_name { sn_ml with sn_type = t_mli } - + | (Tuple (l_mli, t_mli), Tuple (l_ml, _)) -> (* if the two tuples have different lengths (which should not occurs), we return the pi_mli, @@ -313,15 +313,15 @@ let merge_classes merge_options mli ml = (fun a -> try let _ = List.find - (fun ele -> + (fun ele -> match ele with - Class_attribute a2 -> + Class_attribute a2 -> if a2.att_value.val_name = a.att_value.val_name then ( - a.att_value.val_info <- merge_info_opt merge_options + a.att_value.val_info <- merge_info_opt merge_options a.att_value.val_info a2.att_value.val_info; a.att_value.val_loc <- { a.att_value.val_loc with loc_impl = a2.att_value.val_loc.loc_impl } ; - if !Odoc_args.keep_code then + if !Odoc_args.keep_code then a.att_value.val_code <- a2.att_value.val_code; true ) @@ -344,23 +344,23 @@ let merge_classes merge_options mli ml = (fun m -> try let _ = List.find - (fun ele -> + (fun ele -> match ele with - Class_method m2 -> + Class_method m2 -> if m2.met_value.val_name = m.met_value.val_name then ( m.met_value.val_info <- merge_info_opt merge_options m.met_value.val_info m2.met_value.val_info; m.met_value.val_loc <- { m.met_value.val_loc with loc_impl = m2.met_value.val_loc.loc_impl } ; (* merge the parameter names *) - m.met_value.val_parameters <- (merge_parameters + m.met_value.val_parameters <- (merge_parameters m.met_value.val_parameters m2.met_value.val_parameters) ; (* we must reassociate comments in @param to the corresponding parameters because the associated comment of a parameter may have been changed by the merge.*) Odoc_value.update_value_parameters_text m.met_value; - if !Odoc_args.keep_code then + if !Odoc_args.keep_code then m.met_value.val_code <- m2.met_value.val_code; true @@ -385,20 +385,20 @@ let merge_classes merge_options mli ml = let merge_class_types merge_options mli ml = mli.clt_info <- merge_info_opt merge_options mli.clt_info ml.clt_info; mli.clt_loc <- { mli.clt_loc with loc_impl = ml.clt_loc.loc_impl } ; - (* merge values *) + (* merge values *) List.iter (fun a -> try let _ = List.find - (fun ele -> + (fun ele -> match ele with - Class_attribute a2 -> + Class_attribute a2 -> if a2.att_value.val_name = a.att_value.val_name then ( - a.att_value.val_info <- merge_info_opt merge_options + a.att_value.val_info <- merge_info_opt merge_options a.att_value.val_info a2.att_value.val_info; a.att_value.val_loc <- { a.att_value.val_loc with loc_impl = a2.att_value.val_loc.loc_impl } ; - if !Odoc_args.keep_code then + if !Odoc_args.keep_code then a.att_value.val_code <- a2.att_value.val_code; true @@ -422,22 +422,22 @@ let merge_class_types merge_options mli ml = (fun m -> try let _ = List.find - (fun ele -> + (fun ele -> match ele with - Class_method m2 -> + Class_method m2 -> if m2.met_value.val_name = m.met_value.val_name then ( m.met_value.val_info <- merge_info_opt merge_options m.met_value.val_info m2.met_value.val_info; m.met_value.val_loc <- { m.met_value.val_loc with loc_impl = m2.met_value.val_loc.loc_impl } ; - m.met_value.val_parameters <- (merge_parameters + m.met_value.val_parameters <- (merge_parameters m.met_value.val_parameters m2.met_value.val_parameters) ; (* we must reassociate comments in @param to the the corresponding parameters because the associated comment of a parameter may have been changed y the merge.*) Odoc_value.update_value_parameters_text m.met_value; - - if !Odoc_args.keep_code then + + if !Odoc_args.keep_code then m.met_value.val_code <- m2.met_value.val_code; true @@ -468,9 +468,9 @@ let rec merge_module_types merge_options mli ml = (fun ex -> try let _ = List.find - (fun ele -> + (fun ele -> match ele with - Element_exception ex2 -> + Element_exception ex2 -> if ex2.ex_name = ex.ex_name then ( ex.ex_info <- merge_info_opt merge_options ex.ex_info ex2.ex_info; @@ -497,9 +497,9 @@ let rec merge_module_types merge_options mli ml = (fun ty -> try let _ = List.find - (fun ele -> + (fun ele -> match ele with - Element_type ty2 -> + Element_type ty2 -> if ty2.ty_name = ty.ty_name then ( merge_types merge_options ty ty2; @@ -524,9 +524,9 @@ let rec merge_module_types merge_options mli ml = (fun m -> try let _ = List.find - (fun ele -> + (fun ele -> match ele with - Element_module m2 -> + Element_module m2 -> if m2.m_name = m.m_name then ( ignore (merge_modules merge_options m m2); @@ -556,9 +556,9 @@ let rec merge_module_types merge_options mli ml = (fun m -> try let _ = List.find - (fun ele -> + (fun ele -> match ele with - Element_module_type m2 -> + Element_module_type m2 -> if m2.mt_name = m.mt_name then ( merge_module_types merge_options m m2; @@ -586,9 +586,9 @@ let rec merge_module_types merge_options mli ml = (fun v -> try let _ = List.find - (fun ele -> + (fun ele -> match ele with - Element_value v2 -> + Element_value v2 -> if v2.val_name = v.val_name then ( v.val_info <- merge_info_opt merge_options v.val_info v2.val_info ; @@ -601,7 +601,7 @@ let rec merge_module_types merge_options mli ml = parameters because the associated comment of a parameter may have been changed y the merge.*) Odoc_value.update_value_parameters_text v; - if !Odoc_args.keep_code then + if !Odoc_args.keep_code then v.val_code <- v2.val_code; true @@ -626,9 +626,9 @@ let rec merge_module_types merge_options mli ml = (fun c -> try let _ = List.find - (fun ele -> + (fun ele -> match ele with - Element_class c2 -> + Element_class c2 -> if c2.cl_name = c.cl_name then ( merge_classes merge_options c c2; @@ -654,9 +654,9 @@ let rec merge_module_types merge_options mli ml = (fun c -> try let _ = List.find - (fun ele -> + (fun ele -> match ele with - Element_class_type c2 -> + Element_class_type c2 -> if c2.clt_name = c.clt_name then ( merge_class_types merge_options c c2; @@ -682,24 +682,29 @@ let rec merge_module_types merge_options mli ml = and merge_modules merge_options mli ml = mli.m_info <- merge_info_opt merge_options mli.m_info ml.m_info; mli.m_loc <- { mli.m_loc with loc_impl = ml.m_loc.loc_impl } ; - (* More dependencies in the .ml file. *) - mli.m_top_deps <- ml.m_top_deps ; - - let code = + let rec remove_doubles acc = function + [] -> acc + | h :: q -> + if List.mem h acc then remove_doubles acc q + else remove_doubles (h :: acc) q + in + mli.m_top_deps <- remove_doubles mli.m_top_deps ml.m_top_deps ; + + let code = if !Odoc_args.keep_code then match mli.m_code, ml.m_code with - Some s, _ -> Some s - | _, Some s -> Some s - | _ -> None + Some s, _ -> Some s + | _, Some s -> Some s + | _ -> None else None in - let code_intf = + let code_intf = if !Odoc_args.keep_code then match mli.m_code_intf, ml.m_code_intf with - Some s, _ -> Some s - | _, Some s -> Some s - | _ -> None + Some s, _ -> Some s + | _, Some s -> Some s + | _ -> None else None in @@ -711,9 +716,9 @@ and merge_modules merge_options mli ml = (fun ex -> try let _ = List.find - (fun ele -> + (fun ele -> match ele with - Element_exception ex2 -> + Element_exception ex2 -> if ex2.ex_name = ex.ex_name then ( ex.ex_info <- merge_info_opt merge_options ex.ex_info ex2.ex_info; @@ -740,9 +745,9 @@ and merge_modules merge_options mli ml = (fun ty -> try let _ = List.find - (fun ele -> + (fun ele -> match ele with - Element_type ty2 -> + Element_type ty2 -> if ty2.ty_name = ty.ty_name then ( merge_types merge_options ty ty2; @@ -767,9 +772,9 @@ and merge_modules merge_options mli ml = (fun m -> try let _ = List.find - (fun ele -> + (fun ele -> match ele with - Element_module m2 -> + Element_module m2 -> if m2.m_name = m.m_name then ( ignore (merge_modules merge_options m m2); @@ -799,9 +804,9 @@ and merge_modules merge_options mli ml = (fun m -> try let _ = List.find - (fun ele -> + (fun ele -> match ele with - Element_module_type m2 -> + Element_module_type m2 -> if m2.mt_name = m.mt_name then ( merge_module_types merge_options m m2; @@ -841,8 +846,8 @@ and merge_modules merge_options mli ml = (* we must reassociate comments in @param to the the corresponding parameters because the associated comment of a parameter may have been changed y the merge.*) Odoc_value.update_value_parameters_text v; - - if !Odoc_args.keep_code then + + if !Odoc_args.keep_code then v.val_code <- v2.val_code; true ) @@ -864,9 +869,9 @@ and merge_modules merge_options mli ml = (fun c -> try let _ = List.find - (fun ele -> + (fun ele -> match ele with - Element_class c2 -> + Element_class c2 -> if c2.cl_name = c.cl_name then ( merge_classes merge_options c c2; @@ -892,9 +897,9 @@ and merge_modules merge_options mli ml = (fun c -> try let _ = List.find - (fun ele -> + (fun ele -> match ele with - Element_class_type c2 -> + Element_class_type c2 -> if c2.clt_name = c.clt_name then ( merge_class_types merge_options c c2; @@ -914,7 +919,7 @@ and merge_modules merge_options mli ml = () ) (Odoc_module.module_class_types mli); - + mli let merge merge_options modules_list = @@ -932,13 +937,13 @@ let merge merge_options modules_list = m :: (iter l_others) | m2 :: [] -> ( - (* we can merge m with m2 if there is an implementation + (* we can merge m with m2 if there is an implementation and an interface.*) let f b = if !Odoc_args.inverse_merge_ml_mli then not b else b in match f m.m_is_interface, f m2.m_is_interface with true, false -> (merge_modules merge_options m m2) :: (iter l_others) | false, true -> (merge_modules merge_options m2 m) :: (iter l_others) - | false, false -> + | false, false -> if !Odoc_args.inverse_merge_ml_mli then (* two Module.ts for the .mli ! *) raise (Failure (Odoc_messages.two_interfaces m.m_name)) @@ -959,5 +964,3 @@ let merge merge_options modules_list = in iter modules_list - -(* eof $Id$ *) diff --git a/ocamldoc/odoc_messages.ml b/ocamldoc/odoc_messages.ml index 66c4fa5fd..033673b57 100644 --- a/ocamldoc/odoc_messages.ml +++ b/ocamldoc/odoc_messages.ml @@ -52,6 +52,7 @@ let load = "<file>\tLoad information from <file> ; may be used several times" let css_style = "<file>\n\t\tUse content of <file> as CSS style definition "^html_only let index_only = "\tGenerate index files only "^html_only let colorize_code = "\n\t\tColorize code even in documentation pages "^html_only +let html_short_functors = "\n\t\tUse short form to display functor types "^html_only let generate_html = "\tGenerate HTML documentation" let generate_latex = "\tGenerate LaTeX documentation" let generate_texinfo = "\tGenerate TeXinfo documentation" @@ -144,7 +145,7 @@ let latex_class_prefix = "\t\t(default is \""^default_latex_class_prefix^"\")" let default_latex_class_type_prefix = "classtype:" -let latex_class_type_prefix = +let latex_class_type_prefix = "<string>\n\t\tUse <string> as prefix for the LaTeX labels of class types.\n"^ "\t\t(default is \""^default_latex_class_type_prefix^"\")" @@ -286,7 +287,7 @@ let cross_element_not_found n = "Element "^n^" not found" let cross_method_not_found n = "Method "^n^" not found" let cross_attribute_not_found n = "Attribute "^n^" not found" let cross_section_not_found n = "Section "^n^" not found" -let cross_value_not_found n = "Attribute "^n^" not found" +let cross_value_not_found n = "Value "^n^" not found" let cross_type_not_found n = "Type "^n^" not found" let object_end = "object ... end" diff --git a/ocamldoc/odoc_module.ml b/ocamldoc/odoc_module.ml index 756ccf86b..3352bd8df 100644 --- a/ocamldoc/odoc_module.ml +++ b/ocamldoc/odoc_module.ml @@ -64,7 +64,7 @@ and module_kind = (** Representation of a module. *) and t_module = { m_name : Name.t ; - m_type : Types.module_type ; + mutable m_type : Types.module_type ; mutable m_info : Odoc_types.info option ; m_is_interface : bool ; (** true for modules read from interface files *) m_file : string ; (** the file the module is defined in. *) @@ -92,7 +92,7 @@ and module_type_kind = and t_module_type = { mt_name : Name.t ; mutable mt_info : Odoc_types.info option ; - mt_type : Types.module_type option ; (** [None] = abstract module type *) + mutable mt_type : Types.module_type option ; (** [None] = abstract module type *) mt_is_interface : bool ; (** true for modules read from interface files *) mt_file : string ; (** the file the module type is defined in. *) mutable mt_kind : module_type_kind option ; (** [None] = abstract module type if mt_type = None ; @@ -207,41 +207,41 @@ let included_modules l = let rec module_elements ?(trans=true) m = let rec iter_kind = function Module_struct l -> - print_DEBUG "Odoc_module.module_element: Module_struct"; - l + print_DEBUG "Odoc_module.module_element: Module_struct"; + l | Module_alias ma -> - print_DEBUG "Odoc_module.module_element: Module_alias"; - if trans then + print_DEBUG "Odoc_module.module_element: Module_alias"; + if trans then match ma.ma_module with None -> [] | Some (Mod m) -> module_elements m | Some (Modtype mt) -> module_type_elements mt - else + else [] | Module_functor (_, k) | Module_apply (k, _) -> - print_DEBUG "Odoc_module.module_element: Module_functor ou Module_apply"; - iter_kind k + print_DEBUG "Odoc_module.module_element: Module_functor ou Module_apply"; + iter_kind k | Module_with (tk,_) -> - print_DEBUG "Odoc_module.module_element: Module_with"; - module_type_elements ~trans: trans + print_DEBUG "Odoc_module.module_element: Module_with"; + module_type_elements ~trans: trans { mt_name = "" ; mt_info = None ; mt_type = None ; mt_is_interface = false ; mt_file = "" ; mt_kind = Some tk ; mt_loc = Odoc_types.dummy_loc ; } | Module_constraint (k, tk) -> - print_DEBUG "Odoc_module.module_element: Module_constraint"; + print_DEBUG "Odoc_module.module_element: Module_constraint"; (* A VOIR : utiliser k ou tk ? *) - module_elements ~trans: trans + module_elements ~trans: trans { m_name = "" ; - m_info = None ; - m_type = Types.Tmty_signature [] ; + m_info = None ; + m_type = Types.Tmty_signature [] ; m_is_interface = false ; m_file = "" ; m_kind = k ; m_loc = Odoc_types.dummy_loc ; m_top_deps = [] ; - m_code = None ; - m_code_intf = None ; - m_text_only = false ; + m_code = None ; + m_code_intf = None ; + m_text_only = false ; } (* module_type_elements ~trans: trans @@ -265,11 +265,11 @@ and module_type_elements ?(trans=true) mt = else [] | Some (Module_type_alias mta) -> - if trans then + if trans then match mta.mta_module with None -> [] | Some mt -> module_type_elements mt - else + else [] in iter_kind mt.mt_kind @@ -342,7 +342,7 @@ let rec module_type_parameters ?(trans=true) mt = with Not_found -> (p, None) - in + in param :: (iter (Some k2)) | Some (Module_type_alias mta) -> if trans then @@ -368,38 +368,38 @@ let rec module_type_parameters ?(trans=true) mt = and module_parameters ?(trans=true) m = let rec iter = function Module_functor (p, k) -> - let param = + let param = (* we create the couple (parameter, description opt), using the description of the parameter if we can find it in the comment.*) - match m.m_info with + match m.m_info with None ->(p, None) - | Some i -> - try - let d = List.assoc p.mp_name i.Odoc_types.i_params in - (p, Some d) + | Some i -> + try + let d = List.assoc p.mp_name i.Odoc_types.i_params in + (p, Some d) with - Not_found -> + Not_found -> (p, None) - in - param :: (iter k) + in + param :: (iter k) | Module_alias ma -> - if trans then + if trans then match ma.ma_module with None -> [] | Some (Mod m) -> module_parameters ~trans m | Some (Modtype mt) -> module_type_parameters ~trans mt - else + else [] | Module_constraint (k, tk) -> - module_type_parameters ~trans: trans + module_type_parameters ~trans: trans { mt_name = "" ; mt_info = None ; mt_type = None ; mt_is_interface = false ; mt_file = "" ; mt_kind = Some tk ; mt_loc = Odoc_types.dummy_loc } | Module_struct _ | Module_apply _ | Module_with _ -> - [] + [] in iter m.m_kind @@ -435,14 +435,14 @@ let module_is_functor m = let rec iter = function Module_functor _ -> true | Module_alias ma -> - ( - match ma.ma_module with + ( + match ma.ma_module with None -> false - | Some (Mod mo) -> iter mo.m_kind - | Some (Modtype mt) -> module_type_is_functor mt - ) + | Some (Mod mo) -> iter mo.m_kind + | Some (Modtype mt) -> module_type_is_functor mt + ) | Module_constraint (k, _) -> - iter k + iter k | _ -> false in iter m.m_kind diff --git a/ocamldoc/odoc_opt.ml b/ocamldoc/odoc_opt.ml index 8eb7e6fa3..ff9959971 100644 --- a/ocamldoc/odoc_opt.ml +++ b/ocamldoc/odoc_opt.ml @@ -35,16 +35,16 @@ let _ = Odoc_args.parse (default_dot_generator :> Odoc_args.doc_generator) let loaded_modules = - List.flatten - (List.map + List.flatten + (List.map (fun f -> Odoc_info.verbose (Odoc_messages.loading f); - try + try let l = Odoc_analyse.load_modules f in Odoc_info.verbose Odoc_messages.ok; l - with Failure s -> - prerr_endline s ; + with Failure s -> + prerr_endline s ; incr Odoc_global.errors ; [] ) @@ -58,11 +58,11 @@ let _ = None -> () | Some f -> try Odoc_analyse.dump_modules f modules - with Failure s -> + with Failure s -> prerr_endline s ; incr Odoc_global.errors -let _ = +let _ = match !Odoc_args.doc_generator with None -> () @@ -71,7 +71,7 @@ let _ = gen#generate modules; Odoc_info.verbose Odoc_messages.ok -let _ = +let _ = if !Odoc_global.errors > 0 then ( prerr_endline (Odoc_messages.errors_occured !Odoc_global.errors) ; @@ -79,4 +79,3 @@ let _ = ) else exit 0 - diff --git a/ocamldoc/odoc_texi.ml b/ocamldoc/odoc_texi.ml index b934f8576..f60290141 100644 --- a/ocamldoc/odoc_texi.ml +++ b/ocamldoc/odoc_texi.ml @@ -993,12 +993,12 @@ class texi = let title = [ self#node depth m.m_name ; Title (depth, None, - if m.m_text_only then - [ Raw m.m_name ] - else - [ Raw (Odoc_messages.modul ^ " ") ; + if m.m_text_only then + [ Raw m.m_name ] + else + [ Raw (Odoc_messages.modul ^ " ") ; Code m.m_name ] - ) ; + ) ; self#index `Module m.m_name ; Newline ] in puts chanout (self#texi_of_text title) ; @@ -1105,7 +1105,8 @@ class texi = | Some f -> nl chan ; puts_nl chan - (self#texi_of_info (Some (Odoc_info.info_of_comment_file f))) + (self#texi_of_info + (Some (Odoc_info.info_of_comment_file m_list f))) end ; (* write a top menu *) diff --git a/otherlibs/bigarray/.depend b/otherlibs/bigarray/.depend index ef5e8b5d4..c7b0e4208 100644 --- a/otherlibs/bigarray/.depend +++ b/otherlibs/bigarray/.depend @@ -1,19 +1,44 @@ bigarray_stubs.o: bigarray_stubs.c ../../byterun/alloc.h \ ../../byterun/compatibility.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/compatibility.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/compatibility.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 \ + ../../byterun/compatibility.h ../../byterun/config.h \ + ../../byterun/../config/m.h ../../byterun/../config/s.h \ + ../../byterun/compatibility.h ../../byterun/mlvalues.h \ + ../../byterun/compatibility.h ../../byterun/config.h \ + ../../byterun/misc.h bigarray.h ../../byterun/custom.h \ + ../../byterun/compatibility.h ../../byterun/mlvalues.h \ + ../../byterun/fail.h ../../byterun/compatibility.h ../../byterun/misc.h \ + ../../byterun/mlvalues.h ../../byterun/intext.h \ + ../../byterun/compatibility.h ../../byterun/misc.h \ + ../../byterun/mlvalues.h ../../byterun/io.h ../../byterun/misc.h \ + ../../byterun/mlvalues.h ../../byterun/fix_code.h \ + ../../byterun/config.h ../../byterun/misc.h ../../byterun/mlvalues.h \ + ../../byterun/memory.h ../../byterun/compatibility.h \ + ../../byterun/config.h ../../byterun/gc.h ../../byterun/mlvalues.h \ + ../../byterun/major_gc.h ../../byterun/freelist.h ../../byterun/misc.h \ + ../../byterun/mlvalues.h ../../byterun/misc.h ../../byterun/minor_gc.h \ + ../../byterun/misc.h ../../byterun/misc.h ../../byterun/mlvalues.h +mmap_unix.o: mmap_unix.c bigarray.h ../../byterun/compatibility.h \ + ../../byterun/config.h ../../byterun/../config/m.h \ + ../../byterun/../config/s.h ../../byterun/compatibility.h \ + ../../byterun/mlvalues.h ../../byterun/compatibility.h \ + ../../byterun/config.h ../../byterun/misc.h \ + ../../byterun/compatibility.h ../../byterun/config.h \ + ../../byterun/custom.h ../../byterun/compatibility.h \ + ../../byterun/mlvalues.h ../../byterun/fail.h \ + ../../byterun/compatibility.h ../../byterun/misc.h \ + ../../byterun/mlvalues.h ../../byterun/io.h ../../byterun/misc.h \ + ../../byterun/mlvalues.h ../../byterun/sys.h ../../byterun/misc.h +mmap_win32.o: mmap_win32.c bigarray.h ../../byterun/compatibility.h \ + ../../byterun/config.h ../../byterun/../config/m.h \ + ../../byterun/../config/s.h ../../byterun/compatibility.h \ + ../../byterun/mlvalues.h ../../byterun/compatibility.h \ + ../../byterun/config.h ../../byterun/misc.h \ + ../../byterun/compatibility.h ../../byterun/config.h \ + ../../byterun/alloc.h ../../byterun/compatibility.h \ + ../../byterun/misc.h ../../byterun/mlvalues.h ../../byterun/custom.h \ + ../../byterun/compatibility.h ../../byterun/mlvalues.h \ + ../../byterun/fail.h ../../byterun/compatibility.h ../../byterun/misc.h \ + ../../byterun/mlvalues.h ../../byterun/sys.h ../../byterun/misc.h \ ../unix/unixsupport.h bigarray.cmo: bigarray.cmi bigarray.cmx: bigarray.cmi diff --git a/otherlibs/graph/.depend b/otherlibs/graph/.depend index fd9811c31..d94dc2d60 100644 --- a/otherlibs/graph/.depend +++ b/otherlibs/graph/.depend @@ -2,85 +2,137 @@ color.o: color.c libgraph.h \ \ \ ../../byterun/mlvalues.h ../../byterun/compatibility.h \ - ../../byterun/config.h ../../config/m.h ../../config/s.h \ - ../../byterun/misc.h + ../../byterun/config.h ../../byterun/../config/m.h \ + ../../byterun/../config/s.h ../../byterun/compatibility.h \ + ../../byterun/misc.h ../../byterun/compatibility.h \ + ../../byterun/config.h draw.o: draw.c libgraph.h \ \ \ ../../byterun/mlvalues.h ../../byterun/compatibility.h \ - ../../byterun/config.h ../../config/m.h ../../config/s.h \ - ../../byterun/misc.h ../../byterun/alloc.h + ../../byterun/config.h ../../byterun/../config/m.h \ + ../../byterun/../config/s.h ../../byterun/compatibility.h \ + ../../byterun/misc.h ../../byterun/compatibility.h \ + ../../byterun/config.h ../../byterun/alloc.h \ + ../../byterun/compatibility.h ../../byterun/misc.h \ + ../../byterun/mlvalues.h dump_img.o: dump_img.c libgraph.h \ \ \ ../../byterun/mlvalues.h ../../byterun/compatibility.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 + ../../byterun/config.h ../../byterun/../config/m.h \ + ../../byterun/../config/s.h ../../byterun/compatibility.h \ + ../../byterun/misc.h ../../byterun/compatibility.h \ + ../../byterun/config.h image.h ../../byterun/alloc.h \ + ../../byterun/compatibility.h ../../byterun/misc.h \ + ../../byterun/mlvalues.h ../../byterun/memory.h \ + ../../byterun/compatibility.h ../../byterun/config.h ../../byterun/gc.h \ + ../../byterun/mlvalues.h ../../byterun/major_gc.h \ + ../../byterun/freelist.h ../../byterun/misc.h ../../byterun/mlvalues.h \ + ../../byterun/misc.h ../../byterun/minor_gc.h ../../byterun/misc.h \ + ../../byterun/misc.h ../../byterun/mlvalues.h events.o: events.c libgraph.h \ \ \ ../../byterun/mlvalues.h ../../byterun/compatibility.h \ - ../../byterun/config.h ../../config/m.h ../../config/s.h \ - ../../byterun/misc.h ../../byterun/alloc.h ../../byterun/signals.h + ../../byterun/config.h ../../byterun/../config/m.h \ + ../../byterun/../config/s.h ../../byterun/compatibility.h \ + ../../byterun/misc.h ../../byterun/compatibility.h \ + ../../byterun/config.h ../../byterun/alloc.h \ + ../../byterun/compatibility.h ../../byterun/misc.h \ + ../../byterun/mlvalues.h ../../byterun/signals.h \ + ../../byterun/compatibility.h ../../byterun/misc.h \ + ../../byterun/mlvalues.h fill.o: fill.c libgraph.h \ \ \ ../../byterun/mlvalues.h ../../byterun/compatibility.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/config.h ../../byterun/../config/m.h \ + ../../byterun/../config/s.h ../../byterun/compatibility.h \ + ../../byterun/misc.h ../../byterun/compatibility.h \ + ../../byterun/config.h ../../byterun/memory.h \ + ../../byterun/compatibility.h ../../byterun/config.h ../../byterun/gc.h \ + ../../byterun/mlvalues.h ../../byterun/major_gc.h \ + ../../byterun/freelist.h ../../byterun/misc.h ../../byterun/mlvalues.h \ + ../../byterun/misc.h ../../byterun/minor_gc.h ../../byterun/misc.h \ + ../../byterun/misc.h ../../byterun/mlvalues.h image.o: image.c libgraph.h \ \ \ ../../byterun/mlvalues.h ../../byterun/compatibility.h \ - ../../byterun/config.h ../../config/m.h ../../config/s.h \ - ../../byterun/misc.h image.h ../../byterun/alloc.h \ - ../../byterun/custom.h + ../../byterun/config.h ../../byterun/../config/m.h \ + ../../byterun/../config/s.h ../../byterun/compatibility.h \ + ../../byterun/misc.h ../../byterun/compatibility.h \ + ../../byterun/config.h image.h ../../byterun/alloc.h \ + ../../byterun/compatibility.h ../../byterun/misc.h \ + ../../byterun/mlvalues.h ../../byterun/custom.h \ + ../../byterun/compatibility.h ../../byterun/mlvalues.h make_img.o: make_img.c libgraph.h \ \ \ ../../byterun/mlvalues.h ../../byterun/compatibility.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 + ../../byterun/config.h ../../byterun/../config/m.h \ + ../../byterun/../config/s.h ../../byterun/compatibility.h \ + ../../byterun/misc.h ../../byterun/compatibility.h \ + ../../byterun/config.h image.h ../../byterun/memory.h \ + ../../byterun/compatibility.h ../../byterun/config.h ../../byterun/gc.h \ + ../../byterun/mlvalues.h ../../byterun/major_gc.h \ + ../../byterun/freelist.h ../../byterun/misc.h ../../byterun/mlvalues.h \ + ../../byterun/misc.h ../../byterun/minor_gc.h ../../byterun/misc.h \ + ../../byterun/misc.h ../../byterun/mlvalues.h open.o: open.c libgraph.h \ \ \ ../../byterun/mlvalues.h ../../byterun/compatibility.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 + ../../byterun/config.h ../../byterun/../config/m.h \ + ../../byterun/../config/s.h ../../byterun/compatibility.h \ + ../../byterun/misc.h ../../byterun/compatibility.h \ + ../../byterun/config.h ../../byterun/alloc.h \ + ../../byterun/compatibility.h ../../byterun/misc.h \ + ../../byterun/mlvalues.h ../../byterun/callback.h \ + ../../byterun/compatibility.h ../../byterun/mlvalues.h \ + ../../byterun/fail.h ../../byterun/compatibility.h ../../byterun/misc.h \ + ../../byterun/mlvalues.h ../../byterun/memory.h \ + ../../byterun/compatibility.h ../../byterun/config.h ../../byterun/gc.h \ + ../../byterun/mlvalues.h ../../byterun/major_gc.h \ + ../../byterun/freelist.h ../../byterun/misc.h ../../byterun/mlvalues.h \ + ../../byterun/misc.h ../../byterun/minor_gc.h ../../byterun/misc.h \ + ../../byterun/misc.h ../../byterun/mlvalues.h point_col.o: point_col.c libgraph.h \ \ \ ../../byterun/mlvalues.h ../../byterun/compatibility.h \ - ../../byterun/config.h ../../config/m.h ../../config/s.h \ - ../../byterun/misc.h + ../../byterun/config.h ../../byterun/../config/m.h \ + ../../byterun/../config/s.h ../../byterun/compatibility.h \ + ../../byterun/misc.h ../../byterun/compatibility.h \ + ../../byterun/config.h sound.o: sound.c libgraph.h \ \ \ ../../byterun/mlvalues.h ../../byterun/compatibility.h \ - ../../byterun/config.h ../../config/m.h ../../config/s.h \ - ../../byterun/misc.h + ../../byterun/config.h ../../byterun/../config/m.h \ + ../../byterun/../config/s.h ../../byterun/compatibility.h \ + ../../byterun/misc.h ../../byterun/compatibility.h \ + ../../byterun/config.h subwindow.o: subwindow.c libgraph.h \ \ \ ../../byterun/mlvalues.h ../../byterun/compatibility.h \ - ../../byterun/config.h ../../config/m.h ../../config/s.h \ - ../../byterun/misc.h + ../../byterun/config.h ../../byterun/../config/m.h \ + ../../byterun/../config/s.h ../../byterun/compatibility.h \ + ../../byterun/misc.h ../../byterun/compatibility.h \ + ../../byterun/config.h text.o: text.c libgraph.h \ \ \ ../../byterun/mlvalues.h ../../byterun/compatibility.h \ - ../../byterun/config.h ../../config/m.h ../../config/s.h \ - ../../byterun/misc.h ../../byterun/alloc.h + ../../byterun/config.h ../../byterun/../config/m.h \ + ../../byterun/../config/s.h ../../byterun/compatibility.h \ + ../../byterun/misc.h ../../byterun/compatibility.h \ + ../../byterun/config.h ../../byterun/alloc.h \ + ../../byterun/compatibility.h ../../byterun/misc.h \ + ../../byterun/mlvalues.h graphics.cmo: graphics.cmi graphics.cmx: graphics.cmi -graphicsX11.cmo: graphics.cmi graphicsX11.cmi -graphicsX11.cmx: graphics.cmx graphicsX11.cmi +graphicsX11.cmo: ./graphics.cmi graphicsX11.cmi +graphicsX11.cmx: ./graphics.cmx graphicsX11.cmi diff --git a/otherlibs/num/.depend b/otherlibs/num/.depend index 24e2f837b..dceff6fa4 100644 --- a/otherlibs/num/.depend +++ b/otherlibs/num/.depend @@ -1,5 +1,6 @@ -bng.o: bng.c bng.h ../../byterun/config.h ../../config/m.h \ - ../../config/s.h ../../byterun/compatibility.h bng_ppc.c bng_digit.c +bng.o: bng.c bng.h ../../byterun/config.h ../../byterun/../config/m.h \ + ../../byterun/../config/s.h ../../byterun/compatibility.h bng_ppc.c \ + bng_digit.c bng_alpha.o: bng_alpha.c bng_amd64.o: bng_amd64.c bng_digit.o: bng_digit.c @@ -9,25 +10,39 @@ bng_ppc.o: bng_ppc.c bng_sparc.o: bng_sparc.c nat_stubs.o: nat_stubs.c ../../byterun/alloc.h \ ../../byterun/compatibility.h ../../byterun/misc.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 bng.h nat.h -big_int.cmi: nat.cmi -num.cmi: ratio.cmi nat.cmi big_int.cmi -ratio.cmi: nat.cmi big_int.cmi + ../../byterun/compatibility.h ../../byterun/config.h \ + ../../byterun/../config/m.h ../../byterun/../config/s.h \ + ../../byterun/compatibility.h ../../byterun/mlvalues.h \ + ../../byterun/compatibility.h ../../byterun/config.h \ + ../../byterun/misc.h ../../byterun/custom.h \ + ../../byterun/compatibility.h ../../byterun/mlvalues.h \ + ../../byterun/intext.h ../../byterun/compatibility.h \ + ../../byterun/misc.h ../../byterun/mlvalues.h ../../byterun/io.h \ + ../../byterun/misc.h ../../byterun/mlvalues.h ../../byterun/fix_code.h \ + ../../byterun/config.h ../../byterun/misc.h ../../byterun/mlvalues.h \ + ../../byterun/fail.h ../../byterun/compatibility.h ../../byterun/misc.h \ + ../../byterun/mlvalues.h ../../byterun/memory.h \ + ../../byterun/compatibility.h ../../byterun/config.h ../../byterun/gc.h \ + ../../byterun/mlvalues.h ../../byterun/major_gc.h \ + ../../byterun/freelist.h ../../byterun/misc.h ../../byterun/mlvalues.h \ + ../../byterun/misc.h ../../byterun/minor_gc.h ../../byterun/misc.h \ + ../../byterun/misc.h ../../byterun/mlvalues.h bng.h nat.h +big_int.cmi: ./nat.cmi +num.cmi: ./ratio.cmi ./nat.cmi ./big_int.cmi +ratio.cmi: ./nat.cmi ./big_int.cmi arith_flags.cmo: arith_flags.cmi arith_flags.cmx: arith_flags.cmi -arith_status.cmo: arith_flags.cmi arith_status.cmi -arith_status.cmx: arith_flags.cmx arith_status.cmi -big_int.cmo: nat.cmi int_misc.cmi big_int.cmi -big_int.cmx: nat.cmx int_misc.cmx big_int.cmi +arith_status.cmo: ./arith_flags.cmi arith_status.cmi +arith_status.cmx: ./arith_flags.cmx arith_status.cmi +big_int.cmo: ./nat.cmi ./int_misc.cmi big_int.cmi +big_int.cmx: ./nat.cmx ./int_misc.cmx big_int.cmi int_misc.cmo: int_misc.cmi int_misc.cmx: int_misc.cmi -nat.cmo: int_misc.cmi nat.cmi -nat.cmx: int_misc.cmx nat.cmi -num.cmo: ratio.cmi nat.cmi int_misc.cmi big_int.cmi arith_flags.cmi num.cmi -num.cmx: ratio.cmx nat.cmx int_misc.cmx big_int.cmx arith_flags.cmx num.cmi -ratio.cmo: nat.cmi int_misc.cmi big_int.cmi arith_flags.cmi ratio.cmi -ratio.cmx: nat.cmx int_misc.cmx big_int.cmx arith_flags.cmx ratio.cmi +nat.cmo: ./int_misc.cmi nat.cmi +nat.cmx: ./int_misc.cmx nat.cmi +num.cmo: ./ratio.cmi ./nat.cmi ./int_misc.cmi ./big_int.cmi ./arith_flags.cmi \ + num.cmi +num.cmx: ./ratio.cmx ./nat.cmx ./int_misc.cmx ./big_int.cmx ./arith_flags.cmx \ + num.cmi +ratio.cmo: ./nat.cmi ./int_misc.cmi ./big_int.cmi ./arith_flags.cmi ratio.cmi +ratio.cmx: ./nat.cmx ./int_misc.cmx ./big_int.cmx ./arith_flags.cmx ratio.cmi diff --git a/otherlibs/str/.depend b/otherlibs/str/.depend index 782f7c48d..43b299de4 100644 --- a/otherlibs/str/.depend +++ b/otherlibs/str/.depend @@ -1,7 +1,16 @@ strstubs.o: strstubs.c ../../byterun/mlvalues.h \ - ../../byterun/compatibility.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/compatibility.h ../../byterun/config.h \ + ../../byterun/../config/m.h ../../byterun/../config/s.h \ + ../../byterun/compatibility.h ../../byterun/misc.h \ + ../../byterun/compatibility.h ../../byterun/config.h \ + ../../byterun/alloc.h ../../byterun/compatibility.h \ + ../../byterun/misc.h ../../byterun/mlvalues.h ../../byterun/memory.h \ + ../../byterun/compatibility.h ../../byterun/config.h ../../byterun/gc.h \ + ../../byterun/mlvalues.h ../../byterun/major_gc.h \ + ../../byterun/freelist.h ../../byterun/misc.h ../../byterun/mlvalues.h \ + ../../byterun/misc.h ../../byterun/minor_gc.h ../../byterun/misc.h \ + ../../byterun/misc.h ../../byterun/mlvalues.h ../../byterun/fail.h \ + ../../byterun/compatibility.h ../../byterun/misc.h \ + ../../byterun/mlvalues.h str.cmo: str.cmi str.cmx: str.cmi diff --git a/otherlibs/systhreads/.depend b/otherlibs/systhreads/.depend index 694395ac3..9b71a1507 100644 --- a/otherlibs/systhreads/.depend +++ b/otherlibs/systhreads/.depend @@ -1,27 +1,35 @@ posix.o: posix.c ../../byterun/alloc.h ../../byterun/compatibility.h \ - ../../byterun/misc.h ../../byterun/config.h ../../config/m.h \ - ../../config/s.h ../../byterun/mlvalues.h ../../byterun/backtrace.h \ - ../../byterun/callback.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/printexc.h ../../byterun/roots.h \ - ../../byterun/signals.h ../../byterun/stacks.h ../../byterun/sys.h -win32.o: win32.c ../../byterun/alloc.h ../../byterun/compatibility.h \ - ../../byterun/misc.h ../../byterun/config.h ../../config/m.h \ - ../../config/s.h ../../byterun/mlvalues.h ../../byterun/backtrace.h \ - ../../byterun/callback.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/printexc.h ../../byterun/roots.h \ - ../../byterun/signals.h ../../byterun/stacks.h ../../byterun/sys.h -condition.cmi: mutex.cmi -condition.cmo: mutex.cmi condition.cmi -condition.cmx: mutex.cmx condition.cmi -event.cmo: mutex.cmi condition.cmi event.cmi -event.cmx: mutex.cmx condition.cmx event.cmi + ../../byterun/misc.h ../../byterun/compatibility.h \ + ../../byterun/config.h ../../byterun/../config/m.h \ + ../../byterun/../config/s.h ../../byterun/compatibility.h \ + ../../byterun/mlvalues.h ../../byterun/compatibility.h \ + ../../byterun/config.h ../../byterun/misc.h ../../byterun/backtrace.h \ + ../../byterun/mlvalues.h ../../byterun/callback.h \ + ../../byterun/compatibility.h ../../byterun/mlvalues.h \ + ../../byterun/custom.h ../../byterun/compatibility.h \ + ../../byterun/mlvalues.h ../../byterun/fail.h \ + ../../byterun/compatibility.h ../../byterun/misc.h \ + ../../byterun/mlvalues.h ../../byterun/io.h ../../byterun/misc.h \ + ../../byterun/mlvalues.h ../../byterun/memory.h \ + ../../byterun/compatibility.h ../../byterun/config.h ../../byterun/gc.h \ + ../../byterun/mlvalues.h ../../byterun/major_gc.h \ + ../../byterun/freelist.h ../../byterun/misc.h ../../byterun/mlvalues.h \ + ../../byterun/misc.h ../../byterun/minor_gc.h ../../byterun/misc.h \ + ../../byterun/misc.h ../../byterun/mlvalues.h ../../byterun/printexc.h \ + ../../byterun/misc.h ../../byterun/mlvalues.h ../../byterun/roots.h \ + ../../byterun/misc.h ../../byterun/memory.h ../../byterun/signals.h \ + ../../byterun/compatibility.h ../../byterun/misc.h \ + ../../byterun/mlvalues.h ../../byterun/stacks.h ../../byterun/misc.h \ + ../../byterun/mlvalues.h ../../byterun/memory.h ../../byterun/sys.h \ + ../../byterun/misc.h +condition.cmi: ./mutex.cmi +condition.cmo: ./mutex.cmi condition.cmi +condition.cmx: ./mutex.cmx condition.cmi +event.cmo: ./mutex.cmi ./condition.cmi event.cmi +event.cmx: ./mutex.cmx ./condition.cmx event.cmi mutex.cmo: mutex.cmi mutex.cmx: mutex.cmi thread.cmo: thread.cmi thread.cmx: thread.cmi -threadUnix.cmo: thread.cmi threadUnix.cmi -threadUnix.cmx: thread.cmx threadUnix.cmi +threadUnix.cmo: ./thread.cmi threadUnix.cmi +threadUnix.cmx: ./thread.cmx threadUnix.cmi diff --git a/otherlibs/systhreads/Makefile b/otherlibs/systhreads/Makefile index 1b7eda46f..5c16a8a3b 100644 --- a/otherlibs/systhreads/Makefile +++ b/otherlibs/systhreads/Makefile @@ -96,7 +96,7 @@ installopt: $(CAMLOPT) -c $(COMPFLAGS) $< depend: $(GENFILES) - gcc -MM -I../../byterun *.c > .depend + -gcc -MM -I../../byterun *.c > .depend ../../boot/ocamlrun ../../tools/ocamldep *.mli *.ml >> .depend include .depend diff --git a/otherlibs/threads/.depend b/otherlibs/threads/.depend index b9ebac470..f44a670ea 100644 --- a/otherlibs/threads/.depend +++ b/otherlibs/threads/.depend @@ -1,28 +1,42 @@ scheduler.o: scheduler.c ../../byterun/alloc.h \ ../../byterun/compatibility.h ../../byterun/misc.h \ - ../../byterun/config.h ../../config/m.h ../../config/s.h \ - ../../byterun/mlvalues.h ../../byterun/backtrace.h \ - ../../byterun/callback.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/printexc.h ../../byterun/roots.h ../../byterun/signals.h \ - ../../byterun/stacks.h ../../byterun/sys.h -condition.cmi: mutex.cmi -thread.cmi: unix.cmi -threadUnix.cmi: unix.cmi -condition.cmo: thread.cmi mutex.cmi condition.cmi -condition.cmx: thread.cmx mutex.cmx condition.cmi -event.cmo: mutex.cmi condition.cmi event.cmi -event.cmx: mutex.cmx condition.cmx event.cmi -marshal.cmo: pervasives.cmi marshal.cmi -marshal.cmx: pervasives.cmx marshal.cmi -mutex.cmo: thread.cmi mutex.cmi -mutex.cmx: thread.cmx mutex.cmi -pervasives.cmo: unix.cmi pervasives.cmi -pervasives.cmx: unix.cmx pervasives.cmi -thread.cmo: unix.cmi thread.cmi -thread.cmx: unix.cmx thread.cmi -threadUnix.cmo: unix.cmi thread.cmi threadUnix.cmi -threadUnix.cmx: unix.cmx thread.cmx threadUnix.cmi + ../../byterun/compatibility.h ../../byterun/config.h \ + ../../byterun/../config/m.h ../../byterun/../config/s.h \ + ../../byterun/compatibility.h ../../byterun/mlvalues.h \ + ../../byterun/compatibility.h ../../byterun/config.h \ + ../../byterun/misc.h ../../byterun/backtrace.h ../../byterun/mlvalues.h \ + ../../byterun/callback.h ../../byterun/compatibility.h \ + ../../byterun/mlvalues.h ../../byterun/fail.h \ + ../../byterun/compatibility.h ../../byterun/misc.h \ + ../../byterun/mlvalues.h ../../byterun/io.h ../../byterun/misc.h \ + ../../byterun/mlvalues.h ../../byterun/memory.h \ + ../../byterun/compatibility.h ../../byterun/config.h ../../byterun/gc.h \ + ../../byterun/mlvalues.h ../../byterun/major_gc.h \ + ../../byterun/freelist.h ../../byterun/misc.h ../../byterun/mlvalues.h \ + ../../byterun/misc.h ../../byterun/minor_gc.h ../../byterun/misc.h \ + ../../byterun/misc.h ../../byterun/mlvalues.h ../../byterun/printexc.h \ + ../../byterun/misc.h ../../byterun/mlvalues.h ../../byterun/roots.h \ + ../../byterun/misc.h ../../byterun/memory.h ../../byterun/signals.h \ + ../../byterun/compatibility.h ../../byterun/misc.h \ + ../../byterun/mlvalues.h ../../byterun/stacks.h ../../byterun/misc.h \ + ../../byterun/mlvalues.h ../../byterun/memory.h ../../byterun/sys.h \ + ../../byterun/misc.h +condition.cmi: ./mutex.cmi +thread.cmi: ./unix.cmi +threadUnix.cmi: ./unix.cmi +condition.cmo: ./thread.cmi ./mutex.cmi condition.cmi +condition.cmx: ./thread.cmx ./mutex.cmx condition.cmi +event.cmo: ./mutex.cmi ./condition.cmi event.cmi +event.cmx: ./mutex.cmx ./condition.cmx event.cmi +marshal.cmo: ./pervasives.cmi marshal.cmi +marshal.cmx: ./pervasives.cmx marshal.cmi +mutex.cmo: ./thread.cmi mutex.cmi +mutex.cmx: ./thread.cmx mutex.cmi +pervasives.cmo: ./unix.cmi pervasives.cmi +pervasives.cmx: ./unix.cmx pervasives.cmi +thread.cmo: ./unix.cmi thread.cmi +thread.cmx: ./unix.cmx thread.cmi +threadUnix.cmo: ./unix.cmi ./thread.cmi threadUnix.cmi +threadUnix.cmx: ./unix.cmx ./thread.cmx threadUnix.cmi unix.cmo: unix.cmi unix.cmx: unix.cmi diff --git a/otherlibs/unix/.depend b/otherlibs/unix/.depend index 8f0685aea..d784fe417 100644 --- a/otherlibs/unix/.depend +++ b/otherlibs/unix/.depend @@ -1,373 +1,785 @@ accept.o: accept.c ../../byterun/mlvalues.h ../../byterun/compatibility.h \ - ../../byterun/config.h ../../config/m.h ../../config/s.h \ - ../../byterun/misc.h ../../byterun/alloc.h ../../byterun/fail.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 + ../../byterun/config.h ../../byterun/../config/m.h \ + ../../byterun/../config/s.h ../../byterun/compatibility.h \ + ../../byterun/misc.h ../../byterun/compatibility.h \ + ../../byterun/config.h ../../byterun/alloc.h \ + ../../byterun/compatibility.h ../../byterun/misc.h \ + ../../byterun/mlvalues.h ../../byterun/fail.h \ + ../../byterun/compatibility.h ../../byterun/misc.h \ + ../../byterun/mlvalues.h ../../byterun/memory.h \ + ../../byterun/compatibility.h ../../byterun/config.h ../../byterun/gc.h \ + ../../byterun/mlvalues.h ../../byterun/major_gc.h \ + ../../byterun/freelist.h ../../byterun/misc.h ../../byterun/mlvalues.h \ + ../../byterun/misc.h ../../byterun/minor_gc.h ../../byterun/misc.h \ + ../../byterun/misc.h ../../byterun/mlvalues.h ../../byterun/signals.h \ + ../../byterun/compatibility.h ../../byterun/misc.h \ + ../../byterun/mlvalues.h unixsupport.h socketaddr.h access.o: access.c ../../byterun/mlvalues.h ../../byterun/compatibility.h \ - ../../byterun/config.h ../../config/m.h ../../config/s.h \ - ../../byterun/misc.h ../../byterun/alloc.h unixsupport.h + ../../byterun/config.h ../../byterun/../config/m.h \ + ../../byterun/../config/s.h ../../byterun/compatibility.h \ + ../../byterun/misc.h ../../byterun/compatibility.h \ + ../../byterun/config.h ../../byterun/alloc.h \ + ../../byterun/compatibility.h ../../byterun/misc.h \ + ../../byterun/mlvalues.h unixsupport.h addrofstr.o: addrofstr.c ../../byterun/mlvalues.h \ - ../../byterun/compatibility.h ../../byterun/config.h ../../config/m.h \ - ../../config/s.h ../../byterun/misc.h ../../byterun/fail.h \ - unixsupport.h socketaddr.h + ../../byterun/compatibility.h ../../byterun/config.h \ + ../../byterun/../config/m.h ../../byterun/../config/s.h \ + ../../byterun/compatibility.h ../../byterun/misc.h \ + ../../byterun/compatibility.h ../../byterun/config.h \ + ../../byterun/fail.h ../../byterun/compatibility.h ../../byterun/misc.h \ + ../../byterun/mlvalues.h unixsupport.h socketaddr.h alarm.o: alarm.c ../../byterun/mlvalues.h ../../byterun/compatibility.h \ - ../../byterun/config.h ../../config/m.h ../../config/s.h \ - ../../byterun/misc.h unixsupport.h + ../../byterun/config.h ../../byterun/../config/m.h \ + ../../byterun/../config/s.h ../../byterun/compatibility.h \ + ../../byterun/misc.h ../../byterun/compatibility.h \ + ../../byterun/config.h unixsupport.h bind.o: bind.c ../../byterun/fail.h ../../byterun/compatibility.h \ - ../../byterun/misc.h ../../byterun/config.h ../../config/m.h \ - ../../config/s.h ../../byterun/mlvalues.h unixsupport.h socketaddr.h + ../../byterun/misc.h ../../byterun/compatibility.h \ + ../../byterun/config.h ../../byterun/../config/m.h \ + ../../byterun/../config/s.h ../../byterun/compatibility.h \ + ../../byterun/mlvalues.h ../../byterun/compatibility.h \ + ../../byterun/config.h ../../byterun/misc.h unixsupport.h socketaddr.h chdir.o: chdir.c ../../byterun/mlvalues.h ../../byterun/compatibility.h \ - ../../byterun/config.h ../../config/m.h ../../config/s.h \ - ../../byterun/misc.h unixsupport.h + ../../byterun/config.h ../../byterun/../config/m.h \ + ../../byterun/../config/s.h ../../byterun/compatibility.h \ + ../../byterun/misc.h ../../byterun/compatibility.h \ + ../../byterun/config.h unixsupport.h chmod.o: chmod.c ../../byterun/mlvalues.h ../../byterun/compatibility.h \ - ../../byterun/config.h ../../config/m.h ../../config/s.h \ - ../../byterun/misc.h unixsupport.h + ../../byterun/config.h ../../byterun/../config/m.h \ + ../../byterun/../config/s.h ../../byterun/compatibility.h \ + ../../byterun/misc.h ../../byterun/compatibility.h \ + ../../byterun/config.h unixsupport.h chown.o: chown.c ../../byterun/mlvalues.h ../../byterun/compatibility.h \ - ../../byterun/config.h ../../config/m.h ../../config/s.h \ - ../../byterun/misc.h unixsupport.h + ../../byterun/config.h ../../byterun/../config/m.h \ + ../../byterun/../config/s.h ../../byterun/compatibility.h \ + ../../byterun/misc.h ../../byterun/compatibility.h \ + ../../byterun/config.h unixsupport.h chroot.o: chroot.c ../../byterun/mlvalues.h ../../byterun/compatibility.h \ - ../../byterun/config.h ../../config/m.h ../../config/s.h \ - ../../byterun/misc.h unixsupport.h + ../../byterun/config.h ../../byterun/../config/m.h \ + ../../byterun/../config/s.h ../../byterun/compatibility.h \ + ../../byterun/misc.h ../../byterun/compatibility.h \ + ../../byterun/config.h unixsupport.h close.o: close.c ../../byterun/mlvalues.h ../../byterun/compatibility.h \ - ../../byterun/config.h ../../config/m.h ../../config/s.h \ - ../../byterun/misc.h unixsupport.h + ../../byterun/config.h ../../byterun/../config/m.h \ + ../../byterun/../config/s.h ../../byterun/compatibility.h \ + ../../byterun/misc.h ../../byterun/compatibility.h \ + ../../byterun/config.h unixsupport.h closedir.o: closedir.c ../../byterun/mlvalues.h \ - ../../byterun/compatibility.h ../../byterun/config.h ../../config/m.h \ - ../../config/s.h ../../byterun/misc.h unixsupport.h + ../../byterun/compatibility.h ../../byterun/config.h \ + ../../byterun/../config/m.h ../../byterun/../config/s.h \ + ../../byterun/compatibility.h ../../byterun/misc.h \ + ../../byterun/compatibility.h ../../byterun/config.h unixsupport.h connect.o: connect.c ../../byterun/fail.h ../../byterun/compatibility.h \ - ../../byterun/misc.h ../../byterun/config.h ../../config/m.h \ - ../../config/s.h ../../byterun/mlvalues.h ../../byterun/signals.h \ - unixsupport.h socketaddr.h + ../../byterun/misc.h ../../byterun/compatibility.h \ + ../../byterun/config.h ../../byterun/../config/m.h \ + ../../byterun/../config/s.h ../../byterun/compatibility.h \ + ../../byterun/mlvalues.h ../../byterun/compatibility.h \ + ../../byterun/config.h ../../byterun/misc.h ../../byterun/signals.h \ + ../../byterun/compatibility.h ../../byterun/misc.h \ + ../../byterun/mlvalues.h unixsupport.h socketaddr.h cst2constr.o: cst2constr.c ../../byterun/mlvalues.h \ - ../../byterun/compatibility.h ../../byterun/config.h ../../config/m.h \ - ../../config/s.h ../../byterun/misc.h ../../byterun/fail.h cst2constr.h + ../../byterun/compatibility.h ../../byterun/config.h \ + ../../byterun/../config/m.h ../../byterun/../config/s.h \ + ../../byterun/compatibility.h ../../byterun/misc.h \ + ../../byterun/compatibility.h ../../byterun/config.h \ + ../../byterun/fail.h ../../byterun/compatibility.h ../../byterun/misc.h \ + ../../byterun/mlvalues.h cst2constr.h cstringv.o: cstringv.c ../../byterun/mlvalues.h \ - ../../byterun/compatibility.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 + ../../byterun/compatibility.h ../../byterun/config.h \ + ../../byterun/../config/m.h ../../byterun/../config/s.h \ + ../../byterun/compatibility.h ../../byterun/misc.h \ + ../../byterun/compatibility.h ../../byterun/config.h \ + ../../byterun/memory.h ../../byterun/compatibility.h \ + ../../byterun/config.h ../../byterun/gc.h ../../byterun/mlvalues.h \ + ../../byterun/major_gc.h ../../byterun/freelist.h ../../byterun/misc.h \ + ../../byterun/mlvalues.h ../../byterun/misc.h ../../byterun/minor_gc.h \ + ../../byterun/misc.h ../../byterun/misc.h ../../byterun/mlvalues.h \ + unixsupport.h dup.o: dup.c ../../byterun/mlvalues.h ../../byterun/compatibility.h \ - ../../byterun/config.h ../../config/m.h ../../config/s.h \ - ../../byterun/misc.h unixsupport.h + ../../byterun/config.h ../../byterun/../config/m.h \ + ../../byterun/../config/s.h ../../byterun/compatibility.h \ + ../../byterun/misc.h ../../byterun/compatibility.h \ + ../../byterun/config.h unixsupport.h dup2.o: dup2.c ../../byterun/mlvalues.h ../../byterun/compatibility.h \ - ../../byterun/config.h ../../config/m.h ../../config/s.h \ - ../../byterun/misc.h unixsupport.h + ../../byterun/config.h ../../byterun/../config/m.h \ + ../../byterun/../config/s.h ../../byterun/compatibility.h \ + ../../byterun/misc.h ../../byterun/compatibility.h \ + ../../byterun/config.h unixsupport.h envir.o: envir.c ../../byterun/mlvalues.h ../../byterun/compatibility.h \ - ../../byterun/config.h ../../config/m.h ../../config/s.h \ - ../../byterun/misc.h ../../byterun/alloc.h + ../../byterun/config.h ../../byterun/../config/m.h \ + ../../byterun/../config/s.h ../../byterun/compatibility.h \ + ../../byterun/misc.h ../../byterun/compatibility.h \ + ../../byterun/config.h ../../byterun/alloc.h \ + ../../byterun/compatibility.h ../../byterun/misc.h \ + ../../byterun/mlvalues.h errmsg.o: errmsg.c ../../byterun/mlvalues.h ../../byterun/compatibility.h \ - ../../byterun/config.h ../../config/m.h ../../config/s.h \ - ../../byterun/misc.h ../../byterun/alloc.h + ../../byterun/config.h ../../byterun/../config/m.h \ + ../../byterun/../config/s.h ../../byterun/compatibility.h \ + ../../byterun/misc.h ../../byterun/compatibility.h \ + ../../byterun/config.h ../../byterun/alloc.h \ + ../../byterun/compatibility.h ../../byterun/misc.h \ + ../../byterun/mlvalues.h execv.o: execv.c ../../byterun/mlvalues.h ../../byterun/compatibility.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 + ../../byterun/config.h ../../byterun/../config/m.h \ + ../../byterun/../config/s.h ../../byterun/compatibility.h \ + ../../byterun/misc.h ../../byterun/compatibility.h \ + ../../byterun/config.h ../../byterun/memory.h \ + ../../byterun/compatibility.h ../../byterun/config.h ../../byterun/gc.h \ + ../../byterun/mlvalues.h ../../byterun/major_gc.h \ + ../../byterun/freelist.h ../../byterun/misc.h ../../byterun/mlvalues.h \ + ../../byterun/misc.h ../../byterun/minor_gc.h ../../byterun/misc.h \ + ../../byterun/misc.h ../../byterun/mlvalues.h unixsupport.h execve.o: execve.c ../../byterun/mlvalues.h ../../byterun/compatibility.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 + ../../byterun/config.h ../../byterun/../config/m.h \ + ../../byterun/../config/s.h ../../byterun/compatibility.h \ + ../../byterun/misc.h ../../byterun/compatibility.h \ + ../../byterun/config.h ../../byterun/memory.h \ + ../../byterun/compatibility.h ../../byterun/config.h ../../byterun/gc.h \ + ../../byterun/mlvalues.h ../../byterun/major_gc.h \ + ../../byterun/freelist.h ../../byterun/misc.h ../../byterun/mlvalues.h \ + ../../byterun/misc.h ../../byterun/minor_gc.h ../../byterun/misc.h \ + ../../byterun/misc.h ../../byterun/mlvalues.h unixsupport.h execvp.o: execvp.c ../../byterun/mlvalues.h ../../byterun/compatibility.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 + ../../byterun/config.h ../../byterun/../config/m.h \ + ../../byterun/../config/s.h ../../byterun/compatibility.h \ + ../../byterun/misc.h ../../byterun/compatibility.h \ + ../../byterun/config.h ../../byterun/memory.h \ + ../../byterun/compatibility.h ../../byterun/config.h ../../byterun/gc.h \ + ../../byterun/mlvalues.h ../../byterun/major_gc.h \ + ../../byterun/freelist.h ../../byterun/misc.h ../../byterun/mlvalues.h \ + ../../byterun/misc.h ../../byterun/minor_gc.h ../../byterun/misc.h \ + ../../byterun/misc.h ../../byterun/mlvalues.h unixsupport.h exit.o: exit.c ../../byterun/mlvalues.h ../../byterun/compatibility.h \ - ../../byterun/config.h ../../config/m.h ../../config/s.h \ - ../../byterun/misc.h unixsupport.h + ../../byterun/config.h ../../byterun/../config/m.h \ + ../../byterun/../config/s.h ../../byterun/compatibility.h \ + ../../byterun/misc.h ../../byterun/compatibility.h \ + ../../byterun/config.h unixsupport.h fchmod.o: fchmod.c ../../byterun/fail.h ../../byterun/compatibility.h \ - ../../byterun/misc.h ../../byterun/config.h ../../config/m.h \ - ../../config/s.h ../../byterun/mlvalues.h unixsupport.h + ../../byterun/misc.h ../../byterun/compatibility.h \ + ../../byterun/config.h ../../byterun/../config/m.h \ + ../../byterun/../config/s.h ../../byterun/compatibility.h \ + ../../byterun/mlvalues.h ../../byterun/compatibility.h \ + ../../byterun/config.h ../../byterun/misc.h unixsupport.h fchown.o: fchown.c ../../byterun/fail.h ../../byterun/compatibility.h \ - ../../byterun/misc.h ../../byterun/config.h ../../config/m.h \ - ../../config/s.h ../../byterun/mlvalues.h unixsupport.h + ../../byterun/misc.h ../../byterun/compatibility.h \ + ../../byterun/config.h ../../byterun/../config/m.h \ + ../../byterun/../config/s.h ../../byterun/compatibility.h \ + ../../byterun/mlvalues.h ../../byterun/compatibility.h \ + ../../byterun/config.h ../../byterun/misc.h unixsupport.h fcntl.o: fcntl.c ../../byterun/fail.h ../../byterun/compatibility.h \ - ../../byterun/misc.h ../../byterun/config.h ../../config/m.h \ - ../../config/s.h ../../byterun/mlvalues.h unixsupport.h + ../../byterun/misc.h ../../byterun/compatibility.h \ + ../../byterun/config.h ../../byterun/../config/m.h \ + ../../byterun/../config/s.h ../../byterun/compatibility.h \ + ../../byterun/mlvalues.h ../../byterun/compatibility.h \ + ../../byterun/config.h ../../byterun/misc.h unixsupport.h fork.o: fork.c ../../byterun/mlvalues.h ../../byterun/compatibility.h \ - ../../byterun/config.h ../../config/m.h ../../config/s.h \ - ../../byterun/misc.h unixsupport.h + ../../byterun/config.h ../../byterun/../config/m.h \ + ../../byterun/../config/s.h ../../byterun/compatibility.h \ + ../../byterun/misc.h ../../byterun/compatibility.h \ + ../../byterun/config.h unixsupport.h ftruncate.o: ftruncate.c ../../byterun/fail.h \ ../../byterun/compatibility.h ../../byterun/misc.h \ - ../../byterun/config.h ../../config/m.h ../../config/s.h \ - ../../byterun/mlvalues.h ../../byterun/io.h unixsupport.h + ../../byterun/compatibility.h ../../byterun/config.h \ + ../../byterun/../config/m.h ../../byterun/../config/s.h \ + ../../byterun/compatibility.h ../../byterun/mlvalues.h \ + ../../byterun/compatibility.h ../../byterun/config.h \ + ../../byterun/misc.h ../../byterun/io.h ../../byterun/misc.h \ + ../../byterun/mlvalues.h unixsupport.h getaddrinfo.o: getaddrinfo.c ../../byterun/mlvalues.h \ - ../../byterun/compatibility.h ../../byterun/config.h ../../config/m.h \ - ../../config/s.h ../../byterun/misc.h ../../byterun/alloc.h \ - ../../byterun/fail.h ../../byterun/memory.h ../../byterun/gc.h \ - ../../byterun/major_gc.h ../../byterun/freelist.h \ - ../../byterun/minor_gc.h ../../byterun/signals.h unixsupport.h \ - cst2constr.h socketaddr.h + ../../byterun/compatibility.h ../../byterun/config.h \ + ../../byterun/../config/m.h ../../byterun/../config/s.h \ + ../../byterun/compatibility.h ../../byterun/misc.h \ + ../../byterun/compatibility.h ../../byterun/config.h \ + ../../byterun/alloc.h ../../byterun/compatibility.h \ + ../../byterun/misc.h ../../byterun/mlvalues.h ../../byterun/fail.h \ + ../../byterun/compatibility.h ../../byterun/misc.h \ + ../../byterun/mlvalues.h ../../byterun/memory.h \ + ../../byterun/compatibility.h ../../byterun/config.h ../../byterun/gc.h \ + ../../byterun/mlvalues.h ../../byterun/major_gc.h \ + ../../byterun/freelist.h ../../byterun/misc.h ../../byterun/mlvalues.h \ + ../../byterun/misc.h ../../byterun/minor_gc.h ../../byterun/misc.h \ + ../../byterun/misc.h ../../byterun/mlvalues.h ../../byterun/signals.h \ + ../../byterun/compatibility.h ../../byterun/misc.h \ + ../../byterun/mlvalues.h unixsupport.h cst2constr.h socketaddr.h getcwd.o: getcwd.c ../../byterun/mlvalues.h ../../byterun/compatibility.h \ - ../../byterun/config.h ../../config/m.h ../../config/s.h \ - ../../byterun/misc.h ../../byterun/alloc.h ../../byterun/fail.h \ - unixsupport.h + ../../byterun/config.h ../../byterun/../config/m.h \ + ../../byterun/../config/s.h ../../byterun/compatibility.h \ + ../../byterun/misc.h ../../byterun/compatibility.h \ + ../../byterun/config.h ../../byterun/alloc.h \ + ../../byterun/compatibility.h ../../byterun/misc.h \ + ../../byterun/mlvalues.h ../../byterun/fail.h \ + ../../byterun/compatibility.h ../../byterun/misc.h \ + ../../byterun/mlvalues.h unixsupport.h getegid.o: getegid.c ../../byterun/mlvalues.h \ - ../../byterun/compatibility.h ../../byterun/config.h ../../config/m.h \ - ../../config/s.h ../../byterun/misc.h unixsupport.h + ../../byterun/compatibility.h ../../byterun/config.h \ + ../../byterun/../config/m.h ../../byterun/../config/s.h \ + ../../byterun/compatibility.h ../../byterun/misc.h \ + ../../byterun/compatibility.h ../../byterun/config.h unixsupport.h geteuid.o: geteuid.c ../../byterun/mlvalues.h \ - ../../byterun/compatibility.h ../../byterun/config.h ../../config/m.h \ - ../../config/s.h ../../byterun/misc.h unixsupport.h + ../../byterun/compatibility.h ../../byterun/config.h \ + ../../byterun/../config/m.h ../../byterun/../config/s.h \ + ../../byterun/compatibility.h ../../byterun/misc.h \ + ../../byterun/compatibility.h ../../byterun/config.h unixsupport.h getgid.o: getgid.c ../../byterun/mlvalues.h ../../byterun/compatibility.h \ - ../../byterun/config.h ../../config/m.h ../../config/s.h \ - ../../byterun/misc.h unixsupport.h + ../../byterun/config.h ../../byterun/../config/m.h \ + ../../byterun/../config/s.h ../../byterun/compatibility.h \ + ../../byterun/misc.h ../../byterun/compatibility.h \ + ../../byterun/config.h unixsupport.h getgr.o: getgr.c ../../byterun/mlvalues.h ../../byterun/compatibility.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 + ../../byterun/config.h ../../byterun/../config/m.h \ + ../../byterun/../config/s.h ../../byterun/compatibility.h \ + ../../byterun/misc.h ../../byterun/compatibility.h \ + ../../byterun/config.h ../../byterun/fail.h \ + ../../byterun/compatibility.h ../../byterun/misc.h \ + ../../byterun/mlvalues.h ../../byterun/alloc.h \ + ../../byterun/compatibility.h ../../byterun/misc.h \ + ../../byterun/mlvalues.h ../../byterun/memory.h \ + ../../byterun/compatibility.h ../../byterun/config.h ../../byterun/gc.h \ + ../../byterun/mlvalues.h ../../byterun/major_gc.h \ + ../../byterun/freelist.h ../../byterun/misc.h ../../byterun/mlvalues.h \ + ../../byterun/misc.h ../../byterun/minor_gc.h ../../byterun/misc.h \ + ../../byterun/misc.h ../../byterun/mlvalues.h unixsupport.h getgroups.o: getgroups.c ../../byterun/mlvalues.h \ - ../../byterun/compatibility.h ../../byterun/config.h ../../config/m.h \ - ../../config/s.h ../../byterun/misc.h ../../byterun/alloc.h \ - ../../byterun/fail.h unixsupport.h + ../../byterun/compatibility.h ../../byterun/config.h \ + ../../byterun/../config/m.h ../../byterun/../config/s.h \ + ../../byterun/compatibility.h ../../byterun/misc.h \ + ../../byterun/compatibility.h ../../byterun/config.h \ + ../../byterun/alloc.h ../../byterun/compatibility.h \ + ../../byterun/misc.h ../../byterun/mlvalues.h ../../byterun/fail.h \ + ../../byterun/compatibility.h ../../byterun/misc.h \ + ../../byterun/mlvalues.h unixsupport.h gethost.o: gethost.c ../../byterun/mlvalues.h \ - ../../byterun/compatibility.h ../../byterun/config.h ../../config/m.h \ - ../../config/s.h ../../byterun/misc.h ../../byterun/alloc.h \ - ../../byterun/fail.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 + ../../byterun/compatibility.h ../../byterun/config.h \ + ../../byterun/../config/m.h ../../byterun/../config/s.h \ + ../../byterun/compatibility.h ../../byterun/misc.h \ + ../../byterun/compatibility.h ../../byterun/config.h \ + ../../byterun/alloc.h ../../byterun/compatibility.h \ + ../../byterun/misc.h ../../byterun/mlvalues.h ../../byterun/fail.h \ + ../../byterun/compatibility.h ../../byterun/misc.h \ + ../../byterun/mlvalues.h ../../byterun/memory.h \ + ../../byterun/compatibility.h ../../byterun/config.h ../../byterun/gc.h \ + ../../byterun/mlvalues.h ../../byterun/major_gc.h \ + ../../byterun/freelist.h ../../byterun/misc.h ../../byterun/mlvalues.h \ + ../../byterun/misc.h ../../byterun/minor_gc.h ../../byterun/misc.h \ + ../../byterun/misc.h ../../byterun/mlvalues.h ../../byterun/signals.h \ + ../../byterun/compatibility.h ../../byterun/misc.h \ + ../../byterun/mlvalues.h unixsupport.h socketaddr.h gethostname.o: gethostname.c ../../byterun/mlvalues.h \ - ../../byterun/compatibility.h ../../byterun/config.h ../../config/m.h \ - ../../config/s.h ../../byterun/misc.h ../../byterun/alloc.h \ - ../../byterun/fail.h unixsupport.h + ../../byterun/compatibility.h ../../byterun/config.h \ + ../../byterun/../config/m.h ../../byterun/../config/s.h \ + ../../byterun/compatibility.h ../../byterun/misc.h \ + ../../byterun/compatibility.h ../../byterun/config.h \ + ../../byterun/alloc.h ../../byterun/compatibility.h \ + ../../byterun/misc.h ../../byterun/mlvalues.h ../../byterun/fail.h \ + ../../byterun/compatibility.h ../../byterun/misc.h \ + ../../byterun/mlvalues.h unixsupport.h getlogin.o: getlogin.c ../../byterun/mlvalues.h \ - ../../byterun/compatibility.h ../../byterun/config.h ../../config/m.h \ - ../../config/s.h ../../byterun/misc.h ../../byterun/alloc.h \ - unixsupport.h + ../../byterun/compatibility.h ../../byterun/config.h \ + ../../byterun/../config/m.h ../../byterun/../config/s.h \ + ../../byterun/compatibility.h ../../byterun/misc.h \ + ../../byterun/compatibility.h ../../byterun/config.h \ + ../../byterun/alloc.h ../../byterun/compatibility.h \ + ../../byterun/misc.h ../../byterun/mlvalues.h unixsupport.h getnameinfo.o: getnameinfo.c ../../byterun/mlvalues.h \ - ../../byterun/compatibility.h ../../byterun/config.h ../../config/m.h \ - ../../config/s.h ../../byterun/misc.h ../../byterun/alloc.h \ - ../../byterun/fail.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 -getpeername.o: getpeername.c ../../byterun/fail.h \ + ../../byterun/compatibility.h ../../byterun/config.h \ + ../../byterun/../config/m.h ../../byterun/../config/s.h \ + ../../byterun/compatibility.h ../../byterun/misc.h \ + ../../byterun/compatibility.h ../../byterun/config.h \ + ../../byterun/alloc.h ../../byterun/compatibility.h \ + ../../byterun/misc.h ../../byterun/mlvalues.h ../../byterun/fail.h \ + ../../byterun/compatibility.h ../../byterun/misc.h \ + ../../byterun/mlvalues.h ../../byterun/memory.h \ + ../../byterun/compatibility.h ../../byterun/config.h ../../byterun/gc.h \ + ../../byterun/mlvalues.h ../../byterun/major_gc.h \ + ../../byterun/freelist.h ../../byterun/misc.h ../../byterun/mlvalues.h \ + ../../byterun/misc.h ../../byterun/minor_gc.h ../../byterun/misc.h \ + ../../byterun/misc.h ../../byterun/mlvalues.h ../../byterun/signals.h \ ../../byterun/compatibility.h ../../byterun/misc.h \ - ../../byterun/config.h ../../config/m.h ../../config/s.h \ ../../byterun/mlvalues.h unixsupport.h socketaddr.h +getpeername.o: getpeername.c ../../byterun/fail.h \ + ../../byterun/compatibility.h ../../byterun/misc.h \ + ../../byterun/compatibility.h ../../byterun/config.h \ + ../../byterun/../config/m.h ../../byterun/../config/s.h \ + ../../byterun/compatibility.h ../../byterun/mlvalues.h \ + ../../byterun/compatibility.h ../../byterun/config.h \ + ../../byterun/misc.h unixsupport.h socketaddr.h getpid.o: getpid.c ../../byterun/mlvalues.h ../../byterun/compatibility.h \ - ../../byterun/config.h ../../config/m.h ../../config/s.h \ - ../../byterun/misc.h unixsupport.h + ../../byterun/config.h ../../byterun/../config/m.h \ + ../../byterun/../config/s.h ../../byterun/compatibility.h \ + ../../byterun/misc.h ../../byterun/compatibility.h \ + ../../byterun/config.h unixsupport.h getppid.o: getppid.c ../../byterun/mlvalues.h \ - ../../byterun/compatibility.h ../../byterun/config.h ../../config/m.h \ - ../../config/s.h ../../byterun/misc.h unixsupport.h + ../../byterun/compatibility.h ../../byterun/config.h \ + ../../byterun/../config/m.h ../../byterun/../config/s.h \ + ../../byterun/compatibility.h ../../byterun/misc.h \ + ../../byterun/compatibility.h ../../byterun/config.h unixsupport.h getproto.o: getproto.c ../../byterun/mlvalues.h \ - ../../byterun/compatibility.h ../../byterun/config.h ../../config/m.h \ - ../../config/s.h ../../byterun/misc.h ../../byterun/alloc.h \ - ../../byterun/fail.h ../../byterun/memory.h ../../byterun/gc.h \ - ../../byterun/major_gc.h ../../byterun/freelist.h \ - ../../byterun/minor_gc.h unixsupport.h + ../../byterun/compatibility.h ../../byterun/config.h \ + ../../byterun/../config/m.h ../../byterun/../config/s.h \ + ../../byterun/compatibility.h ../../byterun/misc.h \ + ../../byterun/compatibility.h ../../byterun/config.h \ + ../../byterun/alloc.h ../../byterun/compatibility.h \ + ../../byterun/misc.h ../../byterun/mlvalues.h ../../byterun/fail.h \ + ../../byterun/compatibility.h ../../byterun/misc.h \ + ../../byterun/mlvalues.h ../../byterun/memory.h \ + ../../byterun/compatibility.h ../../byterun/config.h ../../byterun/gc.h \ + ../../byterun/mlvalues.h ../../byterun/major_gc.h \ + ../../byterun/freelist.h ../../byterun/misc.h ../../byterun/mlvalues.h \ + ../../byterun/misc.h ../../byterun/minor_gc.h ../../byterun/misc.h \ + ../../byterun/misc.h ../../byterun/mlvalues.h unixsupport.h getpw.o: getpw.c ../../byterun/mlvalues.h ../../byterun/compatibility.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 + ../../byterun/config.h ../../byterun/../config/m.h \ + ../../byterun/../config/s.h ../../byterun/compatibility.h \ + ../../byterun/misc.h ../../byterun/compatibility.h \ + ../../byterun/config.h ../../byterun/alloc.h \ + ../../byterun/compatibility.h ../../byterun/misc.h \ + ../../byterun/mlvalues.h ../../byterun/memory.h \ + ../../byterun/compatibility.h ../../byterun/config.h ../../byterun/gc.h \ + ../../byterun/mlvalues.h ../../byterun/major_gc.h \ + ../../byterun/freelist.h ../../byterun/misc.h ../../byterun/mlvalues.h \ + ../../byterun/misc.h ../../byterun/minor_gc.h ../../byterun/misc.h \ + ../../byterun/misc.h ../../byterun/mlvalues.h ../../byterun/fail.h \ + ../../byterun/compatibility.h ../../byterun/misc.h \ + ../../byterun/mlvalues.h unixsupport.h getserv.o: getserv.c ../../byterun/mlvalues.h \ - ../../byterun/compatibility.h ../../byterun/config.h ../../config/m.h \ - ../../config/s.h ../../byterun/misc.h ../../byterun/alloc.h \ - ../../byterun/fail.h ../../byterun/memory.h ../../byterun/gc.h \ - ../../byterun/major_gc.h ../../byterun/freelist.h \ - ../../byterun/minor_gc.h unixsupport.h + ../../byterun/compatibility.h ../../byterun/config.h \ + ../../byterun/../config/m.h ../../byterun/../config/s.h \ + ../../byterun/compatibility.h ../../byterun/misc.h \ + ../../byterun/compatibility.h ../../byterun/config.h \ + ../../byterun/alloc.h ../../byterun/compatibility.h \ + ../../byterun/misc.h ../../byterun/mlvalues.h ../../byterun/fail.h \ + ../../byterun/compatibility.h ../../byterun/misc.h \ + ../../byterun/mlvalues.h ../../byterun/memory.h \ + ../../byterun/compatibility.h ../../byterun/config.h ../../byterun/gc.h \ + ../../byterun/mlvalues.h ../../byterun/major_gc.h \ + ../../byterun/freelist.h ../../byterun/misc.h ../../byterun/mlvalues.h \ + ../../byterun/misc.h ../../byterun/minor_gc.h ../../byterun/misc.h \ + ../../byterun/misc.h ../../byterun/mlvalues.h unixsupport.h getsockname.o: getsockname.c ../../byterun/fail.h \ ../../byterun/compatibility.h ../../byterun/misc.h \ - ../../byterun/config.h ../../config/m.h ../../config/s.h \ - ../../byterun/mlvalues.h unixsupport.h socketaddr.h + ../../byterun/compatibility.h ../../byterun/config.h \ + ../../byterun/../config/m.h ../../byterun/../config/s.h \ + ../../byterun/compatibility.h ../../byterun/mlvalues.h \ + ../../byterun/compatibility.h ../../byterun/config.h \ + ../../byterun/misc.h unixsupport.h socketaddr.h gettimeofday.o: gettimeofday.c ../../byterun/mlvalues.h \ - ../../byterun/compatibility.h ../../byterun/config.h ../../config/m.h \ - ../../config/s.h ../../byterun/misc.h ../../byterun/alloc.h \ - ../../byterun/fail.h unixsupport.h + ../../byterun/compatibility.h ../../byterun/config.h \ + ../../byterun/../config/m.h ../../byterun/../config/s.h \ + ../../byterun/compatibility.h ../../byterun/misc.h \ + ../../byterun/compatibility.h ../../byterun/config.h \ + ../../byterun/alloc.h ../../byterun/compatibility.h \ + ../../byterun/misc.h ../../byterun/mlvalues.h ../../byterun/fail.h \ + ../../byterun/compatibility.h ../../byterun/misc.h \ + ../../byterun/mlvalues.h unixsupport.h getuid.o: getuid.c ../../byterun/mlvalues.h ../../byterun/compatibility.h \ - ../../byterun/config.h ../../config/m.h ../../config/s.h \ - ../../byterun/misc.h unixsupport.h + ../../byterun/config.h ../../byterun/../config/m.h \ + ../../byterun/../config/s.h ../../byterun/compatibility.h \ + ../../byterun/misc.h ../../byterun/compatibility.h \ + ../../byterun/config.h unixsupport.h gmtime.o: gmtime.c ../../byterun/mlvalues.h ../../byterun/compatibility.h \ - ../../byterun/config.h ../../config/m.h ../../config/s.h \ - ../../byterun/misc.h ../../byterun/alloc.h ../../byterun/fail.h \ - ../../byterun/memory.h ../../byterun/gc.h ../../byterun/major_gc.h \ - ../../byterun/freelist.h ../../byterun/minor_gc.h unixsupport.h + ../../byterun/config.h ../../byterun/../config/m.h \ + ../../byterun/../config/s.h ../../byterun/compatibility.h \ + ../../byterun/misc.h ../../byterun/compatibility.h \ + ../../byterun/config.h ../../byterun/alloc.h \ + ../../byterun/compatibility.h ../../byterun/misc.h \ + ../../byterun/mlvalues.h ../../byterun/fail.h \ + ../../byterun/compatibility.h ../../byterun/misc.h \ + ../../byterun/mlvalues.h ../../byterun/memory.h \ + ../../byterun/compatibility.h ../../byterun/config.h ../../byterun/gc.h \ + ../../byterun/mlvalues.h ../../byterun/major_gc.h \ + ../../byterun/freelist.h ../../byterun/misc.h ../../byterun/mlvalues.h \ + ../../byterun/misc.h ../../byterun/minor_gc.h ../../byterun/misc.h \ + ../../byterun/misc.h ../../byterun/mlvalues.h unixsupport.h itimer.o: itimer.c ../../byterun/mlvalues.h ../../byterun/compatibility.h \ - ../../byterun/config.h ../../config/m.h ../../config/s.h \ - ../../byterun/misc.h ../../byterun/alloc.h ../../byterun/fail.h \ - ../../byterun/memory.h ../../byterun/gc.h ../../byterun/major_gc.h \ - ../../byterun/freelist.h ../../byterun/minor_gc.h unixsupport.h + ../../byterun/config.h ../../byterun/../config/m.h \ + ../../byterun/../config/s.h ../../byterun/compatibility.h \ + ../../byterun/misc.h ../../byterun/compatibility.h \ + ../../byterun/config.h ../../byterun/alloc.h \ + ../../byterun/compatibility.h ../../byterun/misc.h \ + ../../byterun/mlvalues.h ../../byterun/fail.h \ + ../../byterun/compatibility.h ../../byterun/misc.h \ + ../../byterun/mlvalues.h ../../byterun/memory.h \ + ../../byterun/compatibility.h ../../byterun/config.h ../../byterun/gc.h \ + ../../byterun/mlvalues.h ../../byterun/major_gc.h \ + ../../byterun/freelist.h ../../byterun/misc.h ../../byterun/mlvalues.h \ + ../../byterun/misc.h ../../byterun/minor_gc.h ../../byterun/misc.h \ + ../../byterun/misc.h ../../byterun/mlvalues.h unixsupport.h kill.o: kill.c ../../byterun/mlvalues.h ../../byterun/compatibility.h \ - ../../byterun/config.h ../../config/m.h ../../config/s.h \ - ../../byterun/misc.h ../../byterun/fail.h unixsupport.h \ - ../../byterun/signals.h + ../../byterun/config.h ../../byterun/../config/m.h \ + ../../byterun/../config/s.h ../../byterun/compatibility.h \ + ../../byterun/misc.h ../../byterun/compatibility.h \ + ../../byterun/config.h ../../byterun/fail.h \ + ../../byterun/compatibility.h ../../byterun/misc.h \ + ../../byterun/mlvalues.h unixsupport.h ../../byterun/signals.h \ + ../../byterun/compatibility.h ../../byterun/misc.h \ + ../../byterun/mlvalues.h link.o: link.c ../../byterun/mlvalues.h ../../byterun/compatibility.h \ - ../../byterun/config.h ../../config/m.h ../../config/s.h \ - ../../byterun/misc.h unixsupport.h + ../../byterun/config.h ../../byterun/../config/m.h \ + ../../byterun/../config/s.h ../../byterun/compatibility.h \ + ../../byterun/misc.h ../../byterun/compatibility.h \ + ../../byterun/config.h unixsupport.h listen.o: listen.c ../../byterun/fail.h ../../byterun/compatibility.h \ - ../../byterun/misc.h ../../byterun/config.h ../../config/m.h \ - ../../config/s.h ../../byterun/mlvalues.h unixsupport.h + ../../byterun/misc.h ../../byterun/compatibility.h \ + ../../byterun/config.h ../../byterun/../config/m.h \ + ../../byterun/../config/s.h ../../byterun/compatibility.h \ + ../../byterun/mlvalues.h ../../byterun/compatibility.h \ + ../../byterun/config.h ../../byterun/misc.h unixsupport.h lockf.o: lockf.c ../../byterun/fail.h ../../byterun/compatibility.h \ - ../../byterun/misc.h ../../byterun/config.h ../../config/m.h \ - ../../config/s.h ../../byterun/mlvalues.h ../../byterun/signals.h \ - unixsupport.h + ../../byterun/misc.h ../../byterun/compatibility.h \ + ../../byterun/config.h ../../byterun/../config/m.h \ + ../../byterun/../config/s.h ../../byterun/compatibility.h \ + ../../byterun/mlvalues.h ../../byterun/compatibility.h \ + ../../byterun/config.h ../../byterun/misc.h ../../byterun/signals.h \ + ../../byterun/compatibility.h ../../byterun/misc.h \ + ../../byterun/mlvalues.h unixsupport.h lseek.o: lseek.c ../../byterun/mlvalues.h ../../byterun/compatibility.h \ - ../../byterun/config.h ../../config/m.h ../../config/s.h \ - ../../byterun/misc.h ../../byterun/alloc.h ../../byterun/io.h \ - unixsupport.h + ../../byterun/config.h ../../byterun/../config/m.h \ + ../../byterun/../config/s.h ../../byterun/compatibility.h \ + ../../byterun/misc.h ../../byterun/compatibility.h \ + ../../byterun/config.h ../../byterun/alloc.h \ + ../../byterun/compatibility.h ../../byterun/misc.h \ + ../../byterun/mlvalues.h ../../byterun/io.h ../../byterun/misc.h \ + ../../byterun/mlvalues.h unixsupport.h mkdir.o: mkdir.c ../../byterun/mlvalues.h ../../byterun/compatibility.h \ - ../../byterun/config.h ../../config/m.h ../../config/s.h \ - ../../byterun/misc.h unixsupport.h + ../../byterun/config.h ../../byterun/../config/m.h \ + ../../byterun/../config/s.h ../../byterun/compatibility.h \ + ../../byterun/misc.h ../../byterun/compatibility.h \ + ../../byterun/config.h unixsupport.h mkfifo.o: mkfifo.c ../../byterun/fail.h ../../byterun/compatibility.h \ - ../../byterun/misc.h ../../byterun/config.h ../../config/m.h \ - ../../config/s.h ../../byterun/mlvalues.h unixsupport.h + ../../byterun/misc.h ../../byterun/compatibility.h \ + ../../byterun/config.h ../../byterun/../config/m.h \ + ../../byterun/../config/s.h ../../byterun/compatibility.h \ + ../../byterun/mlvalues.h ../../byterun/compatibility.h \ + ../../byterun/config.h ../../byterun/misc.h unixsupport.h nice.o: nice.c ../../byterun/mlvalues.h ../../byterun/compatibility.h \ - ../../byterun/config.h ../../config/m.h ../../config/s.h \ - ../../byterun/misc.h unixsupport.h + ../../byterun/config.h ../../byterun/../config/m.h \ + ../../byterun/../config/s.h ../../byterun/compatibility.h \ + ../../byterun/misc.h ../../byterun/compatibility.h \ + ../../byterun/config.h unixsupport.h open.o: open.c ../../byterun/mlvalues.h ../../byterun/compatibility.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 + ../../byterun/config.h ../../byterun/../config/m.h \ + ../../byterun/../config/s.h ../../byterun/compatibility.h \ + ../../byterun/misc.h ../../byterun/compatibility.h \ + ../../byterun/config.h ../../byterun/alloc.h \ + ../../byterun/compatibility.h ../../byterun/misc.h \ + ../../byterun/mlvalues.h ../../byterun/memory.h \ + ../../byterun/compatibility.h ../../byterun/config.h ../../byterun/gc.h \ + ../../byterun/mlvalues.h ../../byterun/major_gc.h \ + ../../byterun/freelist.h ../../byterun/misc.h ../../byterun/mlvalues.h \ + ../../byterun/misc.h ../../byterun/minor_gc.h ../../byterun/misc.h \ + ../../byterun/misc.h ../../byterun/mlvalues.h ../../byterun/signals.h \ + ../../byterun/compatibility.h ../../byterun/misc.h \ + ../../byterun/mlvalues.h unixsupport.h opendir.o: opendir.c ../../byterun/mlvalues.h \ - ../../byterun/compatibility.h ../../byterun/config.h ../../config/m.h \ - ../../config/s.h ../../byterun/misc.h ../../byterun/alloc.h \ - unixsupport.h + ../../byterun/compatibility.h ../../byterun/config.h \ + ../../byterun/../config/m.h ../../byterun/../config/s.h \ + ../../byterun/compatibility.h ../../byterun/misc.h \ + ../../byterun/compatibility.h ../../byterun/config.h \ + ../../byterun/alloc.h ../../byterun/compatibility.h \ + ../../byterun/misc.h ../../byterun/mlvalues.h unixsupport.h pipe.o: pipe.c ../../byterun/mlvalues.h ../../byterun/compatibility.h \ - ../../byterun/config.h ../../config/m.h ../../config/s.h \ - ../../byterun/misc.h ../../byterun/alloc.h unixsupport.h + ../../byterun/config.h ../../byterun/../config/m.h \ + ../../byterun/../config/s.h ../../byterun/compatibility.h \ + ../../byterun/misc.h ../../byterun/compatibility.h \ + ../../byterun/config.h ../../byterun/alloc.h \ + ../../byterun/compatibility.h ../../byterun/misc.h \ + ../../byterun/mlvalues.h unixsupport.h putenv.o: putenv.c ../../byterun/fail.h ../../byterun/compatibility.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 unixsupport.h + ../../byterun/misc.h ../../byterun/compatibility.h \ + ../../byterun/config.h ../../byterun/../config/m.h \ + ../../byterun/../config/s.h ../../byterun/compatibility.h \ + ../../byterun/mlvalues.h ../../byterun/compatibility.h \ + ../../byterun/config.h ../../byterun/misc.h ../../byterun/memory.h \ + ../../byterun/compatibility.h ../../byterun/config.h ../../byterun/gc.h \ + ../../byterun/mlvalues.h ../../byterun/major_gc.h \ + ../../byterun/freelist.h ../../byterun/misc.h ../../byterun/mlvalues.h \ + ../../byterun/misc.h ../../byterun/minor_gc.h ../../byterun/misc.h \ + ../../byterun/misc.h ../../byterun/mlvalues.h unixsupport.h read.o: read.c ../../byterun/mlvalues.h ../../byterun/compatibility.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 + ../../byterun/config.h ../../byterun/../config/m.h \ + ../../byterun/../config/s.h ../../byterun/compatibility.h \ + ../../byterun/misc.h ../../byterun/compatibility.h \ + ../../byterun/config.h ../../byterun/memory.h \ + ../../byterun/compatibility.h ../../byterun/config.h ../../byterun/gc.h \ + ../../byterun/mlvalues.h ../../byterun/major_gc.h \ + ../../byterun/freelist.h ../../byterun/misc.h ../../byterun/mlvalues.h \ + ../../byterun/misc.h ../../byterun/minor_gc.h ../../byterun/misc.h \ + ../../byterun/misc.h ../../byterun/mlvalues.h ../../byterun/signals.h \ + ../../byterun/compatibility.h ../../byterun/misc.h \ + ../../byterun/mlvalues.h unixsupport.h readdir.o: readdir.c ../../byterun/mlvalues.h \ - ../../byterun/compatibility.h ../../byterun/config.h ../../config/m.h \ - ../../config/s.h ../../byterun/misc.h ../../byterun/fail.h \ - ../../byterun/alloc.h unixsupport.h + ../../byterun/compatibility.h ../../byterun/config.h \ + ../../byterun/../config/m.h ../../byterun/../config/s.h \ + ../../byterun/compatibility.h ../../byterun/misc.h \ + ../../byterun/compatibility.h ../../byterun/config.h \ + ../../byterun/fail.h ../../byterun/compatibility.h ../../byterun/misc.h \ + ../../byterun/mlvalues.h ../../byterun/alloc.h \ + ../../byterun/compatibility.h ../../byterun/misc.h \ + ../../byterun/mlvalues.h unixsupport.h readlink.o: readlink.c ../../byterun/mlvalues.h \ - ../../byterun/compatibility.h ../../byterun/config.h ../../config/m.h \ - ../../config/s.h ../../byterun/misc.h ../../byterun/alloc.h \ - ../../byterun/fail.h unixsupport.h + ../../byterun/compatibility.h ../../byterun/config.h \ + ../../byterun/../config/m.h ../../byterun/../config/s.h \ + ../../byterun/compatibility.h ../../byterun/misc.h \ + ../../byterun/compatibility.h ../../byterun/config.h \ + ../../byterun/alloc.h ../../byterun/compatibility.h \ + ../../byterun/misc.h ../../byterun/mlvalues.h ../../byterun/fail.h \ + ../../byterun/compatibility.h ../../byterun/misc.h \ + ../../byterun/mlvalues.h unixsupport.h rename.o: rename.c ../../byterun/mlvalues.h ../../byterun/compatibility.h \ - ../../byterun/config.h ../../config/m.h ../../config/s.h \ - ../../byterun/misc.h unixsupport.h + ../../byterun/config.h ../../byterun/../config/m.h \ + ../../byterun/../config/s.h ../../byterun/compatibility.h \ + ../../byterun/misc.h ../../byterun/compatibility.h \ + ../../byterun/config.h unixsupport.h rewinddir.o: rewinddir.c ../../byterun/fail.h \ ../../byterun/compatibility.h ../../byterun/misc.h \ - ../../byterun/config.h ../../config/m.h ../../config/s.h \ - ../../byterun/mlvalues.h unixsupport.h -rmdir.o: rmdir.c ../../byterun/mlvalues.h ../../byterun/compatibility.h \ - ../../byterun/config.h ../../config/m.h ../../config/s.h \ + ../../byterun/compatibility.h ../../byterun/config.h \ + ../../byterun/../config/m.h ../../byterun/../config/s.h \ + ../../byterun/compatibility.h ../../byterun/mlvalues.h \ + ../../byterun/compatibility.h ../../byterun/config.h \ ../../byterun/misc.h unixsupport.h +rmdir.o: rmdir.c ../../byterun/mlvalues.h ../../byterun/compatibility.h \ + ../../byterun/config.h ../../byterun/../config/m.h \ + ../../byterun/../config/s.h ../../byterun/compatibility.h \ + ../../byterun/misc.h ../../byterun/compatibility.h \ + ../../byterun/config.h unixsupport.h select.o: select.c ../../byterun/mlvalues.h ../../byterun/compatibility.h \ - ../../byterun/config.h ../../config/m.h ../../config/s.h \ - ../../byterun/misc.h ../../byterun/alloc.h ../../byterun/fail.h \ - ../../byterun/memory.h ../../byterun/gc.h ../../byterun/major_gc.h \ - ../../byterun/freelist.h ../../byterun/minor_gc.h \ - ../../byterun/signals.h unixsupport.h + ../../byterun/config.h ../../byterun/../config/m.h \ + ../../byterun/../config/s.h ../../byterun/compatibility.h \ + ../../byterun/misc.h ../../byterun/compatibility.h \ + ../../byterun/config.h ../../byterun/alloc.h \ + ../../byterun/compatibility.h ../../byterun/misc.h \ + ../../byterun/mlvalues.h ../../byterun/fail.h \ + ../../byterun/compatibility.h ../../byterun/misc.h \ + ../../byterun/mlvalues.h ../../byterun/memory.h \ + ../../byterun/compatibility.h ../../byterun/config.h ../../byterun/gc.h \ + ../../byterun/mlvalues.h ../../byterun/major_gc.h \ + ../../byterun/freelist.h ../../byterun/misc.h ../../byterun/mlvalues.h \ + ../../byterun/misc.h ../../byterun/minor_gc.h ../../byterun/misc.h \ + ../../byterun/misc.h ../../byterun/mlvalues.h ../../byterun/signals.h \ + ../../byterun/compatibility.h ../../byterun/misc.h \ + ../../byterun/mlvalues.h unixsupport.h sendrecv.o: sendrecv.c ../../byterun/mlvalues.h \ - ../../byterun/compatibility.h ../../byterun/config.h ../../config/m.h \ - ../../config/s.h ../../byterun/misc.h ../../byterun/alloc.h \ - ../../byterun/fail.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 + ../../byterun/compatibility.h ../../byterun/config.h \ + ../../byterun/../config/m.h ../../byterun/../config/s.h \ + ../../byterun/compatibility.h ../../byterun/misc.h \ + ../../byterun/compatibility.h ../../byterun/config.h \ + ../../byterun/alloc.h ../../byterun/compatibility.h \ + ../../byterun/misc.h ../../byterun/mlvalues.h ../../byterun/fail.h \ + ../../byterun/compatibility.h ../../byterun/misc.h \ + ../../byterun/mlvalues.h ../../byterun/memory.h \ + ../../byterun/compatibility.h ../../byterun/config.h ../../byterun/gc.h \ + ../../byterun/mlvalues.h ../../byterun/major_gc.h \ + ../../byterun/freelist.h ../../byterun/misc.h ../../byterun/mlvalues.h \ + ../../byterun/misc.h ../../byterun/minor_gc.h ../../byterun/misc.h \ + ../../byterun/misc.h ../../byterun/mlvalues.h ../../byterun/signals.h \ + ../../byterun/compatibility.h ../../byterun/misc.h \ + ../../byterun/mlvalues.h unixsupport.h socketaddr.h setgid.o: setgid.c ../../byterun/mlvalues.h ../../byterun/compatibility.h \ - ../../byterun/config.h ../../config/m.h ../../config/s.h \ - ../../byterun/misc.h unixsupport.h + ../../byterun/config.h ../../byterun/../config/m.h \ + ../../byterun/../config/s.h ../../byterun/compatibility.h \ + ../../byterun/misc.h ../../byterun/compatibility.h \ + ../../byterun/config.h unixsupport.h setsid.o: setsid.c ../../byterun/fail.h ../../byterun/compatibility.h \ - ../../byterun/misc.h ../../byterun/config.h ../../config/m.h \ - ../../config/s.h ../../byterun/mlvalues.h unixsupport.h + ../../byterun/misc.h ../../byterun/compatibility.h \ + ../../byterun/config.h ../../byterun/../config/m.h \ + ../../byterun/../config/s.h ../../byterun/compatibility.h \ + ../../byterun/mlvalues.h ../../byterun/compatibility.h \ + ../../byterun/config.h ../../byterun/misc.h unixsupport.h setuid.o: setuid.c ../../byterun/mlvalues.h ../../byterun/compatibility.h \ - ../../byterun/config.h ../../config/m.h ../../config/s.h \ - ../../byterun/misc.h unixsupport.h + ../../byterun/config.h ../../byterun/../config/m.h \ + ../../byterun/../config/s.h ../../byterun/compatibility.h \ + ../../byterun/misc.h ../../byterun/compatibility.h \ + ../../byterun/config.h unixsupport.h shutdown.o: shutdown.c ../../byterun/fail.h ../../byterun/compatibility.h \ - ../../byterun/misc.h ../../byterun/config.h ../../config/m.h \ - ../../config/s.h ../../byterun/mlvalues.h unixsupport.h + ../../byterun/misc.h ../../byterun/compatibility.h \ + ../../byterun/config.h ../../byterun/../config/m.h \ + ../../byterun/../config/s.h ../../byterun/compatibility.h \ + ../../byterun/mlvalues.h ../../byterun/compatibility.h \ + ../../byterun/config.h ../../byterun/misc.h unixsupport.h signals.o: signals.c ../../byterun/alloc.h ../../byterun/compatibility.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 \ - ../../byterun/signals.h unixsupport.h + ../../byterun/misc.h ../../byterun/compatibility.h \ + ../../byterun/config.h ../../byterun/../config/m.h \ + ../../byterun/../config/s.h ../../byterun/compatibility.h \ + ../../byterun/mlvalues.h ../../byterun/compatibility.h \ + ../../byterun/config.h ../../byterun/misc.h ../../byterun/fail.h \ + ../../byterun/compatibility.h ../../byterun/misc.h \ + ../../byterun/mlvalues.h ../../byterun/memory.h \ + ../../byterun/compatibility.h ../../byterun/config.h ../../byterun/gc.h \ + ../../byterun/mlvalues.h ../../byterun/major_gc.h \ + ../../byterun/freelist.h ../../byterun/misc.h ../../byterun/mlvalues.h \ + ../../byterun/misc.h ../../byterun/minor_gc.h ../../byterun/misc.h \ + ../../byterun/misc.h ../../byterun/mlvalues.h ../../byterun/signals.h \ + ../../byterun/compatibility.h ../../byterun/misc.h \ + ../../byterun/mlvalues.h unixsupport.h sleep.o: sleep.c ../../byterun/mlvalues.h ../../byterun/compatibility.h \ - ../../byterun/config.h ../../config/m.h ../../config/s.h \ - ../../byterun/misc.h ../../byterun/signals.h unixsupport.h + ../../byterun/config.h ../../byterun/../config/m.h \ + ../../byterun/../config/s.h ../../byterun/compatibility.h \ + ../../byterun/misc.h ../../byterun/compatibility.h \ + ../../byterun/config.h ../../byterun/signals.h \ + ../../byterun/compatibility.h ../../byterun/misc.h \ + ../../byterun/mlvalues.h unixsupport.h socket.o: socket.c ../../byterun/fail.h ../../byterun/compatibility.h \ - ../../byterun/misc.h ../../byterun/config.h ../../config/m.h \ - ../../config/s.h ../../byterun/mlvalues.h unixsupport.h + ../../byterun/misc.h ../../byterun/compatibility.h \ + ../../byterun/config.h ../../byterun/../config/m.h \ + ../../byterun/../config/s.h ../../byterun/compatibility.h \ + ../../byterun/mlvalues.h ../../byterun/compatibility.h \ + ../../byterun/config.h ../../byterun/misc.h unixsupport.h socketaddr.o: socketaddr.c ../../byterun/mlvalues.h \ - ../../byterun/compatibility.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 \ + ../../byterun/compatibility.h ../../byterun/config.h \ + ../../byterun/../config/m.h ../../byterun/../config/s.h \ + ../../byterun/compatibility.h ../../byterun/misc.h \ + ../../byterun/compatibility.h ../../byterun/config.h \ + ../../byterun/alloc.h ../../byterun/compatibility.h \ + ../../byterun/misc.h ../../byterun/mlvalues.h ../../byterun/memory.h \ + ../../byterun/compatibility.h ../../byterun/config.h ../../byterun/gc.h \ + ../../byterun/mlvalues.h ../../byterun/major_gc.h \ + ../../byterun/freelist.h ../../byterun/misc.h ../../byterun/mlvalues.h \ + ../../byterun/misc.h ../../byterun/minor_gc.h ../../byterun/misc.h \ + ../../byterun/misc.h ../../byterun/mlvalues.h unixsupport.h \ socketaddr.h socketpair.o: socketpair.c ../../byterun/mlvalues.h \ - ../../byterun/compatibility.h ../../byterun/config.h ../../config/m.h \ - ../../config/s.h ../../byterun/misc.h ../../byterun/alloc.h \ - ../../byterun/fail.h unixsupport.h + ../../byterun/compatibility.h ../../byterun/config.h \ + ../../byterun/../config/m.h ../../byterun/../config/s.h \ + ../../byterun/compatibility.h ../../byterun/misc.h \ + ../../byterun/compatibility.h ../../byterun/config.h \ + ../../byterun/alloc.h ../../byterun/compatibility.h \ + ../../byterun/misc.h ../../byterun/mlvalues.h ../../byterun/fail.h \ + ../../byterun/compatibility.h ../../byterun/misc.h \ + ../../byterun/mlvalues.h unixsupport.h sockopt.o: sockopt.c ../../byterun/mlvalues.h \ - ../../byterun/compatibility.h ../../byterun/config.h ../../config/m.h \ - ../../config/s.h ../../byterun/misc.h ../../byterun/alloc.h \ - ../../byterun/fail.h unixsupport.h socketaddr.h + ../../byterun/compatibility.h ../../byterun/config.h \ + ../../byterun/../config/m.h ../../byterun/../config/s.h \ + ../../byterun/compatibility.h ../../byterun/misc.h \ + ../../byterun/compatibility.h ../../byterun/config.h \ + ../../byterun/alloc.h ../../byterun/compatibility.h \ + ../../byterun/misc.h ../../byterun/mlvalues.h ../../byterun/fail.h \ + ../../byterun/compatibility.h ../../byterun/misc.h \ + ../../byterun/mlvalues.h unixsupport.h socketaddr.h stat.o: stat.c ../../byterun/mlvalues.h ../../byterun/compatibility.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 + ../../byterun/config.h ../../byterun/../config/m.h \ + ../../byterun/../config/s.h ../../byterun/compatibility.h \ + ../../byterun/misc.h ../../byterun/compatibility.h \ + ../../byterun/config.h ../../byterun/memory.h \ + ../../byterun/compatibility.h ../../byterun/config.h ../../byterun/gc.h \ + ../../byterun/mlvalues.h ../../byterun/major_gc.h \ + ../../byterun/freelist.h ../../byterun/misc.h ../../byterun/mlvalues.h \ + ../../byterun/misc.h ../../byterun/minor_gc.h ../../byterun/misc.h \ + ../../byterun/misc.h ../../byterun/mlvalues.h ../../byterun/alloc.h \ + ../../byterun/compatibility.h ../../byterun/misc.h \ + ../../byterun/mlvalues.h unixsupport.h cst2constr.h ../../byterun/io.h \ + ../../byterun/misc.h ../../byterun/mlvalues.h strofaddr.o: strofaddr.c ../../byterun/mlvalues.h \ - ../../byterun/compatibility.h ../../byterun/config.h ../../config/m.h \ - ../../config/s.h ../../byterun/misc.h ../../byterun/alloc.h \ - ../../byterun/fail.h unixsupport.h socketaddr.h + ../../byterun/compatibility.h ../../byterun/config.h \ + ../../byterun/../config/m.h ../../byterun/../config/s.h \ + ../../byterun/compatibility.h ../../byterun/misc.h \ + ../../byterun/compatibility.h ../../byterun/config.h \ + ../../byterun/alloc.h ../../byterun/compatibility.h \ + ../../byterun/misc.h ../../byterun/mlvalues.h ../../byterun/fail.h \ + ../../byterun/compatibility.h ../../byterun/misc.h \ + ../../byterun/mlvalues.h unixsupport.h socketaddr.h symlink.o: symlink.c ../../byterun/fail.h ../../byterun/compatibility.h \ - ../../byterun/misc.h ../../byterun/config.h ../../config/m.h \ - ../../config/s.h ../../byterun/mlvalues.h unixsupport.h + ../../byterun/misc.h ../../byterun/compatibility.h \ + ../../byterun/config.h ../../byterun/../config/m.h \ + ../../byterun/../config/s.h ../../byterun/compatibility.h \ + ../../byterun/mlvalues.h ../../byterun/compatibility.h \ + ../../byterun/config.h ../../byterun/misc.h unixsupport.h termios.o: termios.c ../../byterun/mlvalues.h \ - ../../byterun/compatibility.h ../../byterun/config.h ../../config/m.h \ - ../../config/s.h ../../byterun/misc.h ../../byterun/alloc.h \ - ../../byterun/fail.h unixsupport.h + ../../byterun/compatibility.h ../../byterun/config.h \ + ../../byterun/../config/m.h ../../byterun/../config/s.h \ + ../../byterun/compatibility.h ../../byterun/misc.h \ + ../../byterun/compatibility.h ../../byterun/config.h \ + ../../byterun/alloc.h ../../byterun/compatibility.h \ + ../../byterun/misc.h ../../byterun/mlvalues.h ../../byterun/fail.h \ + ../../byterun/compatibility.h ../../byterun/misc.h \ + ../../byterun/mlvalues.h unixsupport.h time.o: time.c ../../byterun/mlvalues.h ../../byterun/compatibility.h \ - ../../byterun/config.h ../../config/m.h ../../config/s.h \ - ../../byterun/misc.h ../../byterun/alloc.h unixsupport.h + ../../byterun/config.h ../../byterun/../config/m.h \ + ../../byterun/../config/s.h ../../byterun/compatibility.h \ + ../../byterun/misc.h ../../byterun/compatibility.h \ + ../../byterun/config.h ../../byterun/alloc.h \ + ../../byterun/compatibility.h ../../byterun/misc.h \ + ../../byterun/mlvalues.h unixsupport.h times.o: times.c ../../byterun/mlvalues.h ../../byterun/compatibility.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 + ../../byterun/config.h ../../byterun/../config/m.h \ + ../../byterun/../config/s.h ../../byterun/compatibility.h \ + ../../byterun/misc.h ../../byterun/compatibility.h \ + ../../byterun/config.h ../../byterun/alloc.h \ + ../../byterun/compatibility.h ../../byterun/misc.h \ + ../../byterun/mlvalues.h ../../byterun/memory.h \ + ../../byterun/compatibility.h ../../byterun/config.h ../../byterun/gc.h \ + ../../byterun/mlvalues.h ../../byterun/major_gc.h \ + ../../byterun/freelist.h ../../byterun/misc.h ../../byterun/mlvalues.h \ + ../../byterun/misc.h ../../byterun/minor_gc.h ../../byterun/misc.h \ + ../../byterun/misc.h ../../byterun/mlvalues.h unixsupport.h truncate.o: truncate.c ../../byterun/mlvalues.h \ - ../../byterun/compatibility.h ../../byterun/config.h ../../config/m.h \ - ../../config/s.h ../../byterun/misc.h ../../byterun/fail.h \ - ../../byterun/io.h unixsupport.h + ../../byterun/compatibility.h ../../byterun/config.h \ + ../../byterun/../config/m.h ../../byterun/../config/s.h \ + ../../byterun/compatibility.h ../../byterun/misc.h \ + ../../byterun/compatibility.h ../../byterun/config.h \ + ../../byterun/fail.h ../../byterun/compatibility.h ../../byterun/misc.h \ + ../../byterun/mlvalues.h ../../byterun/io.h ../../byterun/misc.h \ + ../../byterun/mlvalues.h unixsupport.h umask.o: umask.c ../../byterun/mlvalues.h ../../byterun/compatibility.h \ - ../../byterun/config.h ../../config/m.h ../../config/s.h \ - ../../byterun/misc.h unixsupport.h + ../../byterun/config.h ../../byterun/../config/m.h \ + ../../byterun/../config/s.h ../../byterun/compatibility.h \ + ../../byterun/misc.h ../../byterun/compatibility.h \ + ../../byterun/config.h unixsupport.h unixsupport.o: unixsupport.c ../../byterun/mlvalues.h \ - ../../byterun/compatibility.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 + ../../byterun/compatibility.h ../../byterun/config.h \ + ../../byterun/../config/m.h ../../byterun/../config/s.h \ + ../../byterun/compatibility.h ../../byterun/misc.h \ + ../../byterun/compatibility.h ../../byterun/config.h \ + ../../byterun/alloc.h ../../byterun/compatibility.h \ + ../../byterun/misc.h ../../byterun/mlvalues.h ../../byterun/callback.h \ + ../../byterun/compatibility.h ../../byterun/mlvalues.h \ + ../../byterun/memory.h ../../byterun/compatibility.h \ + ../../byterun/config.h ../../byterun/gc.h ../../byterun/mlvalues.h \ + ../../byterun/major_gc.h ../../byterun/freelist.h ../../byterun/misc.h \ + ../../byterun/mlvalues.h ../../byterun/misc.h ../../byterun/minor_gc.h \ + ../../byterun/misc.h ../../byterun/misc.h ../../byterun/mlvalues.h \ + ../../byterun/fail.h ../../byterun/compatibility.h ../../byterun/misc.h \ + ../../byterun/mlvalues.h unixsupport.h cst2constr.h unlink.o: unlink.c ../../byterun/mlvalues.h ../../byterun/compatibility.h \ - ../../byterun/config.h ../../config/m.h ../../config/s.h \ - ../../byterun/misc.h unixsupport.h + ../../byterun/config.h ../../byterun/../config/m.h \ + ../../byterun/../config/s.h ../../byterun/compatibility.h \ + ../../byterun/misc.h ../../byterun/compatibility.h \ + ../../byterun/config.h unixsupport.h utimes.o: utimes.c ../../byterun/fail.h ../../byterun/compatibility.h \ - ../../byterun/misc.h ../../byterun/config.h ../../config/m.h \ - ../../config/s.h ../../byterun/mlvalues.h unixsupport.h + ../../byterun/misc.h ../../byterun/compatibility.h \ + ../../byterun/config.h ../../byterun/../config/m.h \ + ../../byterun/../config/s.h ../../byterun/compatibility.h \ + ../../byterun/mlvalues.h ../../byterun/compatibility.h \ + ../../byterun/config.h ../../byterun/misc.h unixsupport.h wait.o: wait.c ../../byterun/mlvalues.h ../../byterun/compatibility.h \ - ../../byterun/config.h ../../config/m.h ../../config/s.h \ - ../../byterun/misc.h ../../byterun/alloc.h ../../byterun/fail.h \ - ../../byterun/memory.h ../../byterun/gc.h ../../byterun/major_gc.h \ - ../../byterun/freelist.h ../../byterun/minor_gc.h \ - ../../byterun/signals.h unixsupport.h + ../../byterun/config.h ../../byterun/../config/m.h \ + ../../byterun/../config/s.h ../../byterun/compatibility.h \ + ../../byterun/misc.h ../../byterun/compatibility.h \ + ../../byterun/config.h ../../byterun/alloc.h \ + ../../byterun/compatibility.h ../../byterun/misc.h \ + ../../byterun/mlvalues.h ../../byterun/fail.h \ + ../../byterun/compatibility.h ../../byterun/misc.h \ + ../../byterun/mlvalues.h ../../byterun/memory.h \ + ../../byterun/compatibility.h ../../byterun/config.h ../../byterun/gc.h \ + ../../byterun/mlvalues.h ../../byterun/major_gc.h \ + ../../byterun/freelist.h ../../byterun/misc.h ../../byterun/mlvalues.h \ + ../../byterun/misc.h ../../byterun/minor_gc.h ../../byterun/misc.h \ + ../../byterun/misc.h ../../byterun/mlvalues.h ../../byterun/signals.h \ + ../../byterun/compatibility.h ../../byterun/misc.h \ + ../../byterun/mlvalues.h unixsupport.h write.o: write.c ../../byterun/mlvalues.h ../../byterun/compatibility.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 + ../../byterun/config.h ../../byterun/../config/m.h \ + ../../byterun/../config/s.h ../../byterun/compatibility.h \ + ../../byterun/misc.h ../../byterun/compatibility.h \ + ../../byterun/config.h ../../byterun/memory.h \ + ../../byterun/compatibility.h ../../byterun/config.h ../../byterun/gc.h \ + ../../byterun/mlvalues.h ../../byterun/major_gc.h \ + ../../byterun/freelist.h ../../byterun/misc.h ../../byterun/mlvalues.h \ + ../../byterun/misc.h ../../byterun/minor_gc.h ../../byterun/misc.h \ + ../../byterun/misc.h ../../byterun/mlvalues.h ../../byterun/signals.h \ + ../../byterun/compatibility.h ../../byterun/misc.h \ + ../../byterun/mlvalues.h unixsupport.h +unixLabels.cmi: ./unix.cmi unix.cmo: unix.cmi unix.cmx: unix.cmi -unixLabels.cmo: unix.cmi unixLabels.cmi -unixLabels.cmx: unix.cmx unixLabels.cmi +unixLabels.cmo: ./unix.cmi unixLabels.cmi +unixLabels.cmx: ./unix.cmx unixLabels.cmi diff --git a/otherlibs/unix/gethost.c b/otherlibs/unix/gethost.c index 86d2f0fdb..18d3be0a9 100644 --- a/otherlibs/unix/gethost.c +++ b/otherlibs/unix/gethost.c @@ -62,7 +62,12 @@ static value alloc_host_entry(struct hostent *entry) Begin_roots4 (name, aliases, addr_list, adr); name = copy_string((char *)(entry->h_name)); - aliases = copy_string_array((const char**)entry->h_aliases); + /* PR#4043: protect against buggy implementations of gethostbyname() + that return a NULL pointer in h_aliases */ + if (entry->h_aliases) + aliases = copy_string_array((const char**)entry->h_aliases); + else + aliases = Atom(0); entry_h_length = entry->h_length; #ifdef h_addr addr_list = alloc_array(alloc_one_addr, (const char**)entry->h_addr_list); diff --git a/stdlib/.depend b/stdlib/.depend index ba9daffa1..17d09fb18 100644 --- a/stdlib/.depend +++ b/stdlib/.depend @@ -1,104 +1,116 @@ -camlinternalMod.cmi: obj.cmi -camlinternalOO.cmi: obj.cmi -format.cmi: buffer.cmi -genlex.cmi: stream.cmi -moreLabels.cmi: set.cmi map.cmi hashtbl.cmi -oo.cmi: camlinternalOO.cmi -parsing.cmi: obj.cmi lexing.cmi -printf.cmi: buffer.cmi -random.cmi: nativeint.cmi int64.cmi int32.cmi -weak.cmi: hashtbl.cmi -arg.cmo: sys.cmi string.cmi printf.cmi list.cmi buffer.cmi array.cmi arg.cmi -arg.cmx: sys.cmx string.cmx printf.cmx list.cmx buffer.cmx array.cmx arg.cmi +camlinternalMod.cmi: ./obj.cmi +camlinternalOO.cmi: ./obj.cmi +format.cmi: ./buffer.cmi +genlex.cmi: ./stream.cmi +moreLabels.cmi: ./set.cmi ./map.cmi ./hashtbl.cmi +oo.cmi: ./camlinternalOO.cmi +parsing.cmi: ./obj.cmi ./lexing.cmi +printf.cmi: ./obj.cmi ./buffer.cmi +random.cmi: ./nativeint.cmi ./int64.cmi ./int32.cmi +weak.cmi: ./hashtbl.cmi +arg.cmo: ./sys.cmi ./string.cmi ./printf.cmi ./list.cmi ./buffer.cmi \ + ./array.cmi arg.cmi +arg.cmx: ./sys.cmx ./string.cmx ./printf.cmx ./list.cmx ./buffer.cmx \ + ./array.cmx arg.cmi array.cmo: array.cmi array.cmx: array.cmi -arrayLabels.cmo: array.cmi arrayLabels.cmi -arrayLabels.cmx: array.cmx arrayLabels.cmi -buffer.cmo: sys.cmi string.cmi buffer.cmi -buffer.cmx: sys.cmx string.cmx buffer.cmi -callback.cmo: obj.cmi callback.cmi -callback.cmx: obj.cmx callback.cmi -camlinternalMod.cmo: obj.cmi camlinternalOO.cmi array.cmi camlinternalMod.cmi -camlinternalMod.cmx: obj.cmx camlinternalOO.cmx array.cmx camlinternalMod.cmi -camlinternalOO.cmo: sys.cmi string.cmi obj.cmi map.cmi list.cmi char.cmi \ - array.cmi camlinternalOO.cmi -camlinternalOO.cmx: sys.cmx string.cmx obj.cmx map.cmx list.cmx char.cmx \ - array.cmx camlinternalOO.cmi +arrayLabels.cmo: ./array.cmi arrayLabels.cmi +arrayLabels.cmx: ./array.cmx arrayLabels.cmi +buffer.cmo: ./sys.cmi ./string.cmi buffer.cmi +buffer.cmx: ./sys.cmx ./string.cmx buffer.cmi +callback.cmo: ./obj.cmi callback.cmi +callback.cmx: ./obj.cmx callback.cmi +camlinternalMod.cmo: ./obj.cmi ./camlinternalOO.cmi ./array.cmi \ + camlinternalMod.cmi +camlinternalMod.cmx: ./obj.cmx ./camlinternalOO.cmx ./array.cmx \ + camlinternalMod.cmi +camlinternalOO.cmo: ./sys.cmi ./string.cmi ./obj.cmi ./map.cmi ./list.cmi \ + ./char.cmi ./array.cmi camlinternalOO.cmi +camlinternalOO.cmx: ./sys.cmx ./string.cmx ./obj.cmx ./map.cmx ./list.cmx \ + ./char.cmx ./array.cmx camlinternalOO.cmi char.cmo: char.cmi char.cmx: char.cmi complex.cmo: complex.cmi complex.cmx: complex.cmi -digest.cmo: string.cmi printf.cmi digest.cmi -digest.cmx: string.cmx printf.cmx digest.cmi -filename.cmo: sys.cmi string.cmi random.cmi printf.cmi buffer.cmi \ +digest.cmo: ./string.cmi ./printf.cmi digest.cmi +digest.cmx: ./string.cmx ./printf.cmx digest.cmi +filename.cmo: ./sys.cmi ./string.cmi ./random.cmi ./printf.cmi ./buffer.cmi \ filename.cmi -filename.cmx: sys.cmx string.cmx random.cmx printf.cmx buffer.cmx \ +filename.cmx: ./sys.cmx ./string.cmx ./random.cmx ./printf.cmx ./buffer.cmx \ filename.cmi -format.cmo: string.cmi printf.cmi obj.cmi list.cmi buffer.cmi format.cmi -format.cmx: string.cmx printf.cmx obj.cmx list.cmx buffer.cmx format.cmi -gc.cmo: sys.cmi printf.cmi gc.cmi -gc.cmx: sys.cmx printf.cmx gc.cmi -genlex.cmo: string.cmi stream.cmi list.cmi hashtbl.cmi char.cmi genlex.cmi -genlex.cmx: string.cmx stream.cmx list.cmx hashtbl.cmx char.cmx genlex.cmi -hashtbl.cmo: sys.cmi array.cmi hashtbl.cmi -hashtbl.cmx: sys.cmx array.cmx hashtbl.cmi -int32.cmo: pervasives.cmi int32.cmi -int32.cmx: pervasives.cmx int32.cmi -int64.cmo: pervasives.cmi int64.cmi -int64.cmx: pervasives.cmx int64.cmi -lazy.cmo: obj.cmi lazy.cmi -lazy.cmx: obj.cmx lazy.cmi -lexing.cmo: sys.cmi string.cmi array.cmi lexing.cmi -lexing.cmx: sys.cmx string.cmx array.cmx lexing.cmi +format.cmo: ./string.cmi ./printf.cmi ./obj.cmi ./list.cmi ./buffer.cmi \ + format.cmi +format.cmx: ./string.cmx ./printf.cmx ./obj.cmx ./list.cmx ./buffer.cmx \ + format.cmi +gc.cmo: ./sys.cmi ./printf.cmi gc.cmi +gc.cmx: ./sys.cmx ./printf.cmx gc.cmi +genlex.cmo: ./string.cmi ./stream.cmi ./list.cmi ./hashtbl.cmi ./char.cmi \ + genlex.cmi +genlex.cmx: ./string.cmx ./stream.cmx ./list.cmx ./hashtbl.cmx ./char.cmx \ + genlex.cmi +hashtbl.cmo: ./sys.cmi ./array.cmi hashtbl.cmi +hashtbl.cmx: ./sys.cmx ./array.cmx hashtbl.cmi +int32.cmo: ./pervasives.cmi int32.cmi +int32.cmx: ./pervasives.cmx int32.cmi +int64.cmo: ./pervasives.cmi int64.cmi +int64.cmx: ./pervasives.cmx int64.cmi +lazy.cmo: ./obj.cmi lazy.cmi +lazy.cmx: ./obj.cmx lazy.cmi +lexing.cmo: ./sys.cmi ./string.cmi ./array.cmi lexing.cmi +lexing.cmx: ./sys.cmx ./string.cmx ./array.cmx lexing.cmi list.cmo: list.cmi list.cmx: list.cmi -listLabels.cmo: list.cmi listLabels.cmi -listLabels.cmx: list.cmx listLabels.cmi +listLabels.cmo: ./list.cmi listLabels.cmi +listLabels.cmx: ./list.cmx listLabels.cmi map.cmo: map.cmi map.cmx: map.cmi -marshal.cmo: string.cmi marshal.cmi -marshal.cmx: string.cmx marshal.cmi -moreLabels.cmo: set.cmi map.cmi hashtbl.cmi moreLabels.cmi -moreLabels.cmx: set.cmx map.cmx hashtbl.cmx moreLabels.cmi -nativeint.cmo: sys.cmi pervasives.cmi nativeint.cmi -nativeint.cmx: sys.cmx pervasives.cmx nativeint.cmi -obj.cmo: marshal.cmi obj.cmi -obj.cmx: marshal.cmx obj.cmi -oo.cmo: camlinternalOO.cmi oo.cmi -oo.cmx: camlinternalOO.cmx oo.cmi -parsing.cmo: obj.cmi lexing.cmi array.cmi parsing.cmi -parsing.cmx: obj.cmx lexing.cmx array.cmx parsing.cmi +marshal.cmo: ./string.cmi marshal.cmi +marshal.cmx: ./string.cmx marshal.cmi +moreLabels.cmo: ./set.cmi ./map.cmi ./hashtbl.cmi moreLabels.cmi +moreLabels.cmx: ./set.cmx ./map.cmx ./hashtbl.cmx moreLabels.cmi +nativeint.cmo: ./sys.cmi ./pervasives.cmi nativeint.cmi +nativeint.cmx: ./sys.cmx ./pervasives.cmx nativeint.cmi +obj.cmo: ./marshal.cmi obj.cmi +obj.cmx: ./marshal.cmx obj.cmi +oo.cmo: ./camlinternalOO.cmi oo.cmi +oo.cmx: ./camlinternalOO.cmx oo.cmi +parsing.cmo: ./obj.cmi ./lexing.cmi ./array.cmi parsing.cmi +parsing.cmx: ./obj.cmx ./lexing.cmx ./array.cmx parsing.cmi pervasives.cmo: pervasives.cmi pervasives.cmx: pervasives.cmi -printexc.cmo: printf.cmi obj.cmi printexc.cmi -printexc.cmx: printf.cmx obj.cmx printexc.cmi -printf.cmo: string.cmi obj.cmi list.cmi char.cmi buffer.cmi printf.cmi -printf.cmx: string.cmx obj.cmx list.cmx char.cmx buffer.cmx printf.cmi -queue.cmo: obj.cmi queue.cmi -queue.cmx: obj.cmx queue.cmi -random.cmo: string.cmi pervasives.cmi nativeint.cmi int64.cmi int32.cmi \ - digest.cmi char.cmi array.cmi random.cmi -random.cmx: string.cmx pervasives.cmx nativeint.cmx int64.cmx int32.cmx \ - digest.cmx char.cmx array.cmx random.cmi -scanf.cmo: string.cmi printf.cmi obj.cmi list.cmi hashtbl.cmi buffer.cmi \ - scanf.cmi -scanf.cmx: string.cmx printf.cmx obj.cmx list.cmx hashtbl.cmx buffer.cmx \ - scanf.cmi +printexc.cmo: ./printf.cmi ./obj.cmi printexc.cmi +printexc.cmx: ./printf.cmx ./obj.cmx printexc.cmi +printf.cmo: ./string.cmi ./obj.cmi ./list.cmi ./char.cmi ./buffer.cmi \ + ./array.cmi printf.cmi +printf.cmx: ./string.cmx ./obj.cmx ./list.cmx ./char.cmx ./buffer.cmx \ + ./array.cmx printf.cmi +queue.cmo: ./obj.cmi queue.cmi +queue.cmx: ./obj.cmx queue.cmi +random.cmo: ./string.cmi ./pervasives.cmi ./nativeint.cmi ./int64.cmi \ + ./int32.cmi ./digest.cmi ./char.cmi ./array.cmi random.cmi +random.cmx: ./string.cmx ./pervasives.cmx ./nativeint.cmx ./int64.cmx \ + ./int32.cmx ./digest.cmx ./char.cmx ./array.cmx random.cmi +scanf.cmo: ./string.cmi ./printf.cmi ./obj.cmi ./list.cmi ./hashtbl.cmi \ + ./buffer.cmi scanf.cmi +scanf.cmx: ./string.cmx ./printf.cmx ./obj.cmx ./list.cmx ./hashtbl.cmx \ + ./buffer.cmx scanf.cmi set.cmo: set.cmi set.cmx: set.cmi -sort.cmo: array.cmi sort.cmi -sort.cmx: array.cmx sort.cmi -stack.cmo: list.cmi stack.cmi -stack.cmx: list.cmx stack.cmi -stdLabels.cmo: stringLabels.cmi listLabels.cmi arrayLabels.cmi stdLabels.cmi -stdLabels.cmx: stringLabels.cmx listLabels.cmx arrayLabels.cmx stdLabels.cmi -stream.cmo: string.cmi obj.cmi list.cmi stream.cmi -stream.cmx: string.cmx obj.cmx list.cmx stream.cmi -string.cmo: pervasives.cmi list.cmi char.cmi string.cmi -string.cmx: pervasives.cmx list.cmx char.cmx string.cmi -stringLabels.cmo: string.cmi stringLabels.cmi -stringLabels.cmx: string.cmx stringLabels.cmi +sort.cmo: ./array.cmi sort.cmi +sort.cmx: ./array.cmx sort.cmi +stack.cmo: ./list.cmi stack.cmi +stack.cmx: ./list.cmx stack.cmi +stdLabels.cmo: ./stringLabels.cmi ./listLabels.cmi ./arrayLabels.cmi \ + stdLabels.cmi +stdLabels.cmx: ./stringLabels.cmx ./listLabels.cmx ./arrayLabels.cmx \ + stdLabels.cmi +stream.cmo: ./string.cmi ./obj.cmi ./list.cmi stream.cmi +stream.cmx: ./string.cmx ./obj.cmx ./list.cmx stream.cmi +string.cmo: ./pervasives.cmi ./list.cmi ./char.cmi string.cmi +string.cmx: ./pervasives.cmx ./list.cmx ./char.cmx string.cmi +stringLabels.cmo: ./string.cmi stringLabels.cmi +stringLabels.cmx: ./string.cmx stringLabels.cmi sys.cmo: sys.cmi sys.cmx: sys.cmi -weak.cmo: sys.cmi obj.cmi hashtbl.cmi array.cmi weak.cmi -weak.cmx: sys.cmx obj.cmx hashtbl.cmx array.cmx weak.cmi +weak.cmo: ./sys.cmi ./obj.cmi ./hashtbl.cmi ./array.cmi weak.cmi +weak.cmx: ./sys.cmx ./obj.cmx ./hashtbl.cmx ./array.cmx weak.cmi diff --git a/stdlib/camlinternalMod.ml b/stdlib/camlinternalMod.ml index f41aef7b6..17419aef5 100644 --- a/stdlib/camlinternalMod.ml +++ b/stdlib/camlinternalMod.ml @@ -45,7 +45,7 @@ let rec update_mod shape o n = match shape with | Function -> if Obj.tag n = Obj.closure_tag && Obj.size n <= Obj.size o - then overwrite o n + then begin overwrite o n; Obj.truncate o (Obj.size n) (* PR #4008 *) end else overwrite o (Obj.repr (fun x -> (Obj.obj n : _ -> _) x)) | Lazy -> assert (Obj.tag n = Obj.lazy_tag); diff --git a/stdlib/sys.ml b/stdlib/sys.ml index ca0c26f16..6c5660413 100644 --- a/stdlib/sys.ml +++ b/stdlib/sys.ml @@ -78,4 +78,4 @@ let catch_break on = (* OCaml version string, must be in the format described in sys.mli. *) -let ocaml_version = "3.10+dev8 (2006-06-26)";; +let ocaml_version = "3.10+dev9 (2006-09-18)";; diff --git a/tools/.depend b/tools/.depend index e52904cc6..9205cad5b 100644 --- a/tools/.depend +++ b/tools/.depend @@ -11,39 +11,41 @@ dumpapprox.cmo: ../utils/config.cmi ../asmcomp/compilenv.cmi \ ../asmcomp/clambda.cmi dumpapprox.cmx: ../utils/config.cmx ../asmcomp/compilenv.cmx \ ../asmcomp/clambda.cmx -dumpobj.cmo: ../utils/tbl.cmi opnames.cmo ../bytecomp/opcodes.cmo \ - ../bytecomp/lambda.cmi ../bytecomp/instruct.cmi ../typing/ident.cmi \ - ../bytecomp/emitcode.cmi ../utils/config.cmi ../bytecomp/bytesections.cmi \ +dumpobj.cmo: ../utils/tbl.cmi ./opnames.cmo ../bytecomp/opcodes.cmo \ + ../parsing/location.cmi ../bytecomp/lambda.cmi ../bytecomp/instruct.cmi \ + ../typing/ident.cmi ../bytecomp/emitcode.cmi ../utils/config.cmi \ + ../bytecomp/cmo_format.cmi ../bytecomp/bytesections.cmi \ ../parsing/asttypes.cmi -dumpobj.cmx: ../utils/tbl.cmx opnames.cmx ../bytecomp/opcodes.cmx \ - ../bytecomp/lambda.cmx ../bytecomp/instruct.cmx ../typing/ident.cmx \ - ../bytecomp/emitcode.cmx ../utils/config.cmx ../bytecomp/bytesections.cmx \ +dumpobj.cmx: ../utils/tbl.cmx ./opnames.cmx ../bytecomp/opcodes.cmx \ + ../parsing/location.cmx ../bytecomp/lambda.cmx ../bytecomp/instruct.cmx \ + ../typing/ident.cmx ../bytecomp/emitcode.cmx ../utils/config.cmx \ + ../bytecomp/cmo_format.cmi ../bytecomp/bytesections.cmx \ ../parsing/asttypes.cmi lexer301.cmo: ../utils/warnings.cmi ../utils/misc.cmi ../parsing/location.cmi lexer301.cmx: ../utils/warnings.cmx ../utils/misc.cmx ../parsing/location.cmx -objinfo.cmo: ../bytecomp/emitcode.cmi ../utils/config.cmi -objinfo.cmx: ../bytecomp/emitcode.cmx ../utils/config.cmx +objinfo.cmo: ../utils/config.cmi ../bytecomp/cmo_format.cmi +objinfo.cmx: ../utils/config.cmx ../bytecomp/cmo_format.cmi ocamlcp.cmo: ../driver/main_args.cmi ocamlcp.cmx: ../driver/main_args.cmx ocamldep.cmo: ../parsing/syntaxerr.cmi ../parsing/parsetree.cmi \ ../parsing/parse.cmi ../utils/misc.cmi ../parsing/longident.cmi \ - ../parsing/location.cmi ../parsing/lexer.cmi depend.cmi \ - ../utils/config.cmi ../utils/clflags.cmo + ../parsing/location.cmi ../parsing/lexer.cmi ./depend.cmi \ + ../utils/config.cmi ../utils/clflags.cmi ocamldep.cmx: ../parsing/syntaxerr.cmx ../parsing/parsetree.cmi \ ../parsing/parse.cmx ../utils/misc.cmx ../parsing/longident.cmx \ - ../parsing/location.cmx ../parsing/lexer.cmx depend.cmx \ + ../parsing/location.cmx ../parsing/lexer.cmx ./depend.cmx \ ../utils/config.cmx ../utils/clflags.cmx ocamlmktop.cmo: ../utils/ccomp.cmi ocamlmktop.cmx: ../utils/ccomp.cmx ocamlprof.cmo: ../parsing/syntaxerr.cmi ../parsing/parsetree.cmi \ ../parsing/parse.cmi ../utils/misc.cmi ../parsing/location.cmi \ - ../parsing/lexer.cmi ../utils/config.cmi ../utils/clflags.cmo + ../parsing/lexer.cmi ../utils/config.cmi ../utils/clflags.cmi ocamlprof.cmx: ../parsing/syntaxerr.cmx ../parsing/parsetree.cmi \ ../parsing/parse.cmx ../utils/misc.cmx ../parsing/location.cmx \ ../parsing/lexer.cmx ../utils/config.cmx ../utils/clflags.cmx -primreq.cmo: ../bytecomp/emitcode.cmi ../utils/config.cmi -primreq.cmx: ../bytecomp/emitcode.cmx ../utils/config.cmx +primreq.cmo: ../utils/config.cmi ../bytecomp/cmo_format.cmi +primreq.cmx: ../utils/config.cmx ../bytecomp/cmo_format.cmi profiling.cmo: profiling.cmi profiling.cmx: profiling.cmi -scrapelabels.cmo: lexer301.cmo -scrapelabels.cmx: lexer301.cmx +scrapelabels.cmo: ./lexer301.cmo +scrapelabels.cmx: ./lexer301.cmx diff --git a/tools/Makefile b/tools/Makefile index 68f904956..f7dec5b0f 100644 --- a/tools/Makefile +++ b/tools/Makefile @@ -195,7 +195,9 @@ clean:: rm -f dumpobj opnames.ml: ../byterun/instruct.h - unset LC_ALL LC_CTYPE LC_COLLATE LANG; \ + unset LC_ALL || : ; \ + unset LC_CTYPE || : ; \ + unset LC_COLLATE LANG || : ; \ sed -e '/\/\*/d' \ -e '/^#/d' \ -e 's/enum \(.*\) {/let names_of_\1 = [|/' \ diff --git a/tools/ocamldep.ml b/tools/ocamldep.ml index fc0151c6d..8ed90bb17 100644 --- a/tools/ocamldep.ml +++ b/tools/ocamldep.ml @@ -66,7 +66,7 @@ let find_dependency modname (byt_deps, opt_deps) = try let filename = find_file (modname ^ ".mli") in let basename = Filename.chop_suffix filename ".mli" in - let optname = + let optname = if Sys.file_exists (basename ^ ".ml") then basename ^ ".cmx" else basename ^ ".cmi" in diff --git a/tools/ocamlprof.ml b/tools/ocamlprof.ml index ea9e969a4..cba8efa5e 100644 --- a/tools/ocamlprof.ml +++ b/tools/ocamlprof.ml @@ -100,7 +100,7 @@ let special_id = ref "" let add_val_counter (kind,pos) = if kind = Open then begin copy pos; - fprintf !outchan "(* %s%d *) " !special_id !counters.(!prof_counter); + fprintf !outchan "(* %s%d *) " !special_id !counters.(!prof_counter); incr prof_counter; end ;; @@ -129,7 +129,7 @@ let init_rewrite modes mod_name = fprintf !outchan "module %sProfiling = Profiling;; " modprefix; fprintf !outchan "let %s%s_cnt = Array.create 000000000" idprefix mod_name; pos_len := pos_out !outchan; - fprintf !outchan + fprintf !outchan " 0;; Profiling.counters := \ (\"%s\", (\"%s\", %s%s_cnt)) :: !Profiling.counters;; " mod_name modes idprefix mod_name; @@ -235,7 +235,7 @@ and rw_exp iflag sexp = rewrite_exp iflag scond; rewrite_ifbody iflag sexp.pexp_loc.loc_ghost sifso; rewrite_ifbody iflag sexp.pexp_loc.loc_ghost sifnot - + | Pexp_sequence(sexp1, sexp2) -> rewrite_exp iflag sexp1; rewrite_exp iflag sexp2 @@ -296,7 +296,7 @@ and rewrite_annotate_exp_list l = List.iter (function | {pexp_desc = Pexp_when(scond, sbody)} - -> insert_profile rw_exp scond; + -> insert_profile rw_exp scond; insert_profile rw_exp sbody; | {pexp_desc = Pexp_constraint(sbody, _, _)} (* let f x : t = e *) -> insert_profile rw_exp sbody @@ -307,7 +307,7 @@ and rewrite_function iflag = function | [spat, ({pexp_desc = Pexp_function _} as sexp)] -> rewrite_exp iflag sexp | l -> rewrite_funmatching l -and rewrite_funmatching l = +and rewrite_funmatching l = rewrite_annotate_exp_list (List.map snd l) and rewrite_trymatching l = @@ -449,6 +449,11 @@ open Format let usage = "Usage: ocamlprof <options> <files>\noptions are:" +let print_version () = + printf "ocamlprof, version %s@." Sys.ocaml_version; + exit 0; +;; + let main () = try Arg.parse [ @@ -461,7 +466,9 @@ let main () = "-instrument", Arg.Set instr_mode, " (undocumented)"; "-intf", Arg.String process_intf_file, "<file> Process <file> as a .mli file"; - "-m", Arg.String (fun s -> modes := s), "<flags> (undocumented)" + "-m", Arg.String (fun s -> modes := s), "<flags> (undocumented)"; + "-version", Arg.Unit print_version, + " Print version and exit"; ] process_anon_file usage; exit 0 with x -> diff --git a/typing/ctype.ml b/typing/ctype.ml index 114ed4f89..25a23eb67 100644 --- a/typing/ctype.ml +++ b/typing/ctype.ml @@ -791,14 +791,14 @@ let rec copy ty = let keep = more.level <> generic_level in let more' = match more.desc with - Tsubst ty -> ty - | Tconstr _ -> - if keep then save_desc more more.desc; - copy more + Tsubst ty -> ty + | Tconstr _ -> + if keep then save_desc more more.desc; + copy more | Tvar | Tunivar -> save_desc more more.desc; if keep then more else newty more.desc - | _ -> assert false + | _ -> assert false in (* Register new type first for recursion *) more.desc <- Tsubst(newgenty(Ttuple[more';t])); @@ -928,7 +928,7 @@ let delayed_copy = ref [] let rec copy_sep fixed free bound visited ty = let ty = repr ty in let univars = free ty in - if TypeSet.is_empty univars then + if TypeSet.is_empty univars then if ty.level <> generic_level then ty else let t = newvar () in delayed_copy := @@ -1040,7 +1040,7 @@ let apply env params body args = (* Abbreviation expansion *) (****************************) -(* +(* If the environnement has changed, memorized expansions might not be correct anymore, and so we flush the cache. This is safe but quite pessimistic: it would be enough to flush the cache when a @@ -1054,7 +1054,7 @@ let check_abbrev_env env = end (* Expand an abbreviation. The expansion is memorized. *) -(* +(* Assume the level is greater than the path binding time of the expanded abbreviation. *) @@ -1105,6 +1105,13 @@ let expand_abbrev env ty = | _ -> assert false +let safe_abbrev env ty = + let snap = Btype.snapshot () in + try ignore (expand_abbrev env ty); true + with Cannot_expand | Unify _ -> + Btype.backtrack snap; + false + (* Fully expand the head of a type. Raise Cannot_expand if the type cannot be expanded. May raise Unify, if a recursion was hidden in the type. *) @@ -1128,7 +1135,10 @@ let expand_head_once env ty = try expand_abbrev env (repr ty) with Cannot_expand -> assert false (* Fully expand the head of a type. *) -let rec expand_head env ty = +let expand_head_unif env ty = + try try_expand_head env ty with Cannot_expand -> repr ty + +let expand_head env ty = let snap = Btype.snapshot () in try try_expand_head env ty with Cannot_expand | Unify _ -> (* expand_head shall never fail *) @@ -1328,7 +1338,7 @@ let occur_univar env ty = with exn -> unmark_type ty; raise exn -(* Grouping univars by families according to their binders *) +(* Grouping univars by families according to their binders *) let add_univars = List.fold_left (fun s (t,_) -> TypeSet.add (repr t) s) @@ -1506,8 +1516,8 @@ let rec unify env t1 t2 = and unify2 env t1 t2 = (* Second step: expansion of abbreviations *) let rec expand_both t1'' t2'' = - let t1' = expand_head env t1 in - let t2' = expand_head env t2 in + let t1' = expand_head_unif env t1 in + let t2' = expand_head_unif env t2 in (* Expansion may have changed the representative of the types... *) if t1' == t1'' && t2' == t2'' then (t1',t2') else expand_both t1' t2' @@ -1526,7 +1536,7 @@ and unify3 env t1 t1' t2 t2' = (* Third step: truly unification *) (* Assumes either [t1 == t1'] or [t2 != t2'] *) let d1 = t1'.desc and d2 = t2'.desc in - + let create_recursion = (t2 != t2') && (deep_occur t1' t2) in occur env t1' t2; update_level env t1'.level t2; @@ -1600,7 +1610,7 @@ and unify3 env t1 t1' t2 t2' = match t2.desc with Tconstr (p, tl, abbrev) -> forget_abbrev abbrev p; - let t2'' = expand_head env t2 in + let t2'' = expand_head_unif env t2 in if not (closed_parameterized_type tl t2'') then link_type (repr t2) (repr t2') | _ -> @@ -1608,7 +1618,7 @@ and unify3 env t1 t1' t2 t2' = end (* - (* + (* Can only be done afterwards, once the row variable has (possibly) been instantiated. *) @@ -1684,13 +1694,15 @@ and unify_row env row1 row2 = let rm1 = row_more row1 and rm2 = row_more row2 in if rm1 == rm2 then () else let r1, r2, pairs = merge_row_fields row1.row_fields row2.row_fields in - ignore (List.fold_left - (fun hl l -> - let h = hash_variant l in - try raise(Tags(l,List.assoc h hl)) - with Not_found -> (h,l)::hl) - (List.map (fun (l,_) -> (hash_variant l, l)) row1.row_fields) - (List.map fst r2)); + if r1 <> [] && r2 <> [] then begin + let ht = Hashtbl.create (List.length r1) in + List.iter (fun (l,_) -> Hashtbl.add ht (hash_variant l) l) r1; + List.iter + (fun (l,_) -> + try raise (Tags(l, Hashtbl.find ht (hash_variant l))) + with Not_found -> ()) + r2 + end; let more = if row1.row_fixed then rm1 else if row2.row_fixed then rm2 else @@ -1804,7 +1816,7 @@ and unify_row_field env fixed1 fixed2 l f1 f2 = | Rpresent None, Reither(true, [], _, e2) when not fixed2 -> set_row_field e2 f1 | _ -> raise (Unify []) - + let unify env ty1 ty2 = try @@ -1847,7 +1859,7 @@ let unify env ty1 ty2 = (2) the original label is not optional *) let rec filter_arrow env t l = - let t = expand_head env t in + let t = expand_head_unif env t in match t.desc with Tvar -> let t1 = newvar () and t2 = newvar () in @@ -1890,7 +1902,7 @@ let rec filter_method_field env name priv ty = (* Unify [ty] and [< name : 'a; .. >]. Return ['a]. *) let rec filter_method env name priv ty = - let ty = expand_head env ty in + let ty = expand_head_unif env ty in match ty.desc with Tvar -> let ty1 = newvar () in @@ -1924,7 +1936,7 @@ let filter_self_method env lab priv meths ty = Update the level of [ty]. First check that the levels of generic variables from the subject are not lowered. *) -let moregen_occur env level ty = +let moregen_occur env level ty = let rec occur ty = let ty = repr ty in if ty.level > level then begin @@ -1964,8 +1976,8 @@ let rec moregen inst_nongen type_pairs env t1 t2 = | (Tconstr (p1, [], _), Tconstr (p2, [], _)) when Path.same p1 p2 -> () | _ -> - let t1' = expand_head env t1 in - let t2' = expand_head env t2 in + let t1' = expand_head_unif env t1 in + let t2' = expand_head_unif env t2 in (* Expansion may have changed the representative of the types... *) let t1' = repr t1' and t2' = repr t2' in if t1' == t2' then () else @@ -2043,7 +2055,7 @@ and moregen_row inst_nongen type_pairs env row1 row2 = filter_row_fields true r1, filter_row_fields false r2 else r1, r2 in - if r1 <> [] || row1.row_closed && (not row2.row_closed || r2 <> []) + if r1 <> [] || row1.row_closed && (not row2.row_closed || r2 <> []) then raise (Unify []); let rm1 = repr row1.row_more and rm2 = repr row2.row_more in let univ = @@ -2211,8 +2223,8 @@ let rec eqtype rename type_pairs subst env t1 t2 = | (Tconstr (p1, [], _), Tconstr (p2, [], _)) when Path.same p1 p2 -> () | _ -> - let t1' = expand_head env t1 in - let t2' = expand_head env t2 in + let t1' = expand_head_unif env t1 in + let t2' = expand_head_unif env t2 in (* Expansion may have changed the representative of the types... *) let t1' = repr t1' and t2' = repr t2' in if t1' == t2' then () else @@ -2325,7 +2337,7 @@ and eqtype_row rename type_pairs subst env row1 row2 = | Rabsent, Rabsent -> () | _ -> raise (Unify [])) pairs - + (* Two modes: with or without renaming of variables *) let equal env rename tyl1 tyl2 = try @@ -2334,7 +2346,7 @@ let equal env rename tyl1 tyl2 = with Unify _ -> false -(* Must empty univar_pairs first *) +(* Must empty univar_pairs first *) let eqtype rename type_pairs subst env t1 t2 = univar_pairs := []; eqtype rename type_pairs subst env t1 t2 @@ -2719,7 +2731,8 @@ let rec build_subtype env visited loops posi level t = if c > Unchanged then (newty (Ttuple (List.map fst tlist')), c) else (t, Unchanged) | Tconstr(p, tl, abbrev) - when level > 0 && generic_abbrev env p && not (has_constr_row' env t) -> + when level > 0 && generic_abbrev env p && safe_abbrev env t + && not (has_constr_row' env t) -> let t' = repr (expand_abbrev env t) in let level' = pred_expand level in begin try match t'.desc with @@ -2759,7 +2772,8 @@ let rec build_subtype env visited loops posi level t = let visited = t :: visited in begin try let decl = Env.find_type p env in - if level = 0 && generic_abbrev env p && not (has_constr_row' env t) + if level = 0 && generic_abbrev env p && safe_abbrev env t + && not (has_constr_row' env t) then warn := true; let tl' = List.map2 @@ -2873,7 +2887,7 @@ let rec subtype_rec env trace t1 t2 cstrs = let t1 = repr t1 in let t2 = repr t2 in if t1 == t2 then cstrs else - + begin try TypePairs.find subtypes (t1, t2); cstrs @@ -2890,9 +2904,11 @@ let rec subtype_rec env trace t1 t2 cstrs = subtype_list env trace tl1 tl2 cstrs | (Tconstr(p1, [], _), Tconstr(p2, [], _)) when Path.same p1 p2 -> cstrs - | (Tconstr(p1, tl1, abbrev1), _) when generic_abbrev env p1 -> + | (Tconstr(p1, tl1, abbrev1), _) + when generic_abbrev env p1 && safe_abbrev env t1 -> subtype_rec env trace (expand_abbrev env t1) t2 cstrs - | (_, Tconstr(p2, tl2, abbrev2)) when generic_abbrev env p2 -> + | (_, Tconstr(p2, tl2, abbrev2)) + when generic_abbrev env p2 && safe_abbrev env t2 -> subtype_rec env trace t1 (expand_abbrev env t2) cstrs | (Tconstr(p1, tl1, _), Tconstr(p2, tl2, _)) when Path.same p1 p2 -> begin try @@ -2902,7 +2918,7 @@ let rec subtype_rec env trace t1 t2 cstrs = if co then if cn then (trace, newty2 t1.level (Ttuple[t1]), - newty2 t2.level (Ttuple[t2]), !univar_pairs) :: cstrs + newty2 t2.level (Ttuple[t2]), !univar_pairs) :: cstrs else subtype_rec env ((t1, t2)::trace) t1 t2 cstrs else if cn then subtype_rec env ((t2, t1)::trace) t2 t1 cstrs @@ -3082,8 +3098,9 @@ let cyclic_abbrev env id ty = p = Path.Pident id || List.memq ty seen || begin try check_cycle (ty :: seen) (expand_abbrev env ty) - with Cannot_expand -> - false + with + Cannot_expand -> false + | Unify _ -> true end | _ -> false @@ -3151,7 +3168,7 @@ let rec normalize_type_rec env ty = let normalize_type env ty = normalize_type_rec env ty; unmark_type ty - + (*************************) (* Remove dependencies *) diff --git a/typing/includemod.ml b/typing/includemod.ml index 9471956ad..3f75546ea 100644 --- a/typing/includemod.ml +++ b/typing/includemod.ml @@ -35,6 +35,7 @@ type error = | Class_declarations of Ident.t * class_declaration * class_declaration * Ctype.class_match_failure list + | Unbound_modtype_path of Path.t exception Error of error list @@ -89,7 +90,7 @@ let expand_module_path env path = try Env.find_modtype_expansion path env with Not_found -> - raise Dont_match + raise(Error[Unbound_modtype_path path]) (* Extract name, kind and ident from a signature item *) @@ -377,6 +378,8 @@ let include_err ppf = function (Printtyp.class_declaration id) d1 (Printtyp.class_declaration id) d2 Includeclass.report_error reason + | Unbound_modtype_path path -> + fprintf ppf "Unbound module type %a" Printtyp.path path let report_error ppf = function | [] -> () diff --git a/typing/includemod.mli b/typing/includemod.mli index cfd8003cc..b0a2acd99 100644 --- a/typing/includemod.mli +++ b/typing/includemod.mli @@ -40,6 +40,7 @@ type error = | Class_declarations of Ident.t * class_declaration * class_declaration * Ctype.class_match_failure list + | Unbound_modtype_path of Path.t exception Error of error list diff --git a/typing/typemod.ml b/typing/typemod.ml index b7563aeac..6e87adddc 100644 --- a/typing/typemod.ml +++ b/typing/typemod.ml @@ -89,21 +89,21 @@ let merge_constraint initial_env loc sg lid constr = | (Tsig_type(id, decl, rs) :: rem, [s], Pwith_type ({ptype_kind = Ptype_private} as sdecl)) when Ident.name id = s -> - let decl_row = - { type_params = - List.map (fun _ -> Btype.newgenvar()) sdecl.ptype_params; - type_arity = List.length sdecl.ptype_params; - type_kind = Type_abstract; - type_manifest = None; - type_variance = - List.map (fun (c,n) -> (not n, not c, not c)) + let decl_row = + { type_params = + List.map (fun _ -> Btype.newgenvar()) sdecl.ptype_params; + type_arity = List.length sdecl.ptype_params; + type_kind = Type_abstract; + type_manifest = None; + type_variance = + List.map (fun (c,n) -> (not n, not c, not c)) sdecl.ptype_variance } - and id_row = Ident.create (s^"#row") in - let initial_env = Env.add_type id_row decl_row initial_env in + and id_row = Ident.create (s^"#row") in + let initial_env = Env.add_type id_row decl_row initial_env in let newdecl = Typedecl.transl_with_constraint initial_env (Some(Pident id_row)) sdecl in check_type_decl env id row_id newdecl decl rs rem; - let decl_row = {decl_row with type_params = newdecl.type_params} in + let decl_row = {decl_row with type_params = newdecl.type_params} in let rs' = if rs = Trec_first then Trec_not else rs in Tsig_type(id_row, decl_row, rs') :: Tsig_type(id, newdecl, rs) :: rem | (Tsig_type(id, decl, rs) :: rem, [s], Pwith_type sdecl) @@ -157,7 +157,7 @@ let approx_modtype transl_mty init_env smty = match smty.pmty_desc with Pmty_ident lid -> begin try - let (path, info) = Env.lookup_modtype lid env in + let (path, info) = Env.lookup_modtype lid env in Tmty_ident path with Not_found -> raise(Error(smty.pmty_loc, Unbound_modtype lid)) @@ -210,7 +210,7 @@ let approx_modtype transl_mty init_env smty = let sg = Subst.signature Subst.identity (extract_sig env smty.pmty_loc mty) in let newenv = Env.add_signature sg env in - sg @ approx_sig newenv srem + sg @ approx_sig newenv srem | Psig_class sdecls | Psig_class_type sdecls -> let decls = Typeclass.approx_class_declarations env sdecls in let rem = approx_sig env srem in @@ -271,7 +271,7 @@ let rec transl_modtype env smty = match smty.pmty_desc with Pmty_ident lid -> begin try - let (path, info) = Env.lookup_modtype lid env in + let (path, info) = Env.lookup_modtype lid env in Tmty_ident path with Not_found -> raise(Error(smty.pmty_loc, Unbound_modtype lid)) @@ -292,7 +292,7 @@ let rec transl_modtype env smty = merge_constraint env smty.pmty_loc sg lid sdecl) init_sg constraints in Mtype.freshen (Tmty_signature final_sg) - + and transl_signature env sg = let type_names = ref StringSet.empty and module_names = ref StringSet.empty @@ -543,7 +543,7 @@ let rec type_module anchor env smod = mod_loc = smod.pmod_loc } | _ -> raise(Error(sfunct.pmod_loc, Cannot_apply funct.mod_type)) - end + end | Pmod_constraint(sarg, smty) -> let arg = type_module anchor env sarg in let mty = transl_modtype env smty in @@ -592,7 +592,7 @@ and type_structure anchor env sstr = (fun (name, decl) -> check "type" loc type_names name) sdecls; let (decls, newenv) = Typedecl.transl_type_decl env sdecls in - let newenv' = + let newenv' = enrich_type_decls anchor decls env newenv in let (str_rem, sig_rem, final_env) = type_struct newenv' srem in (Tstr_type decls :: str_rem, @@ -849,7 +849,7 @@ let package_units objfiles cmifile modulename = raise(Error(Location.in_file mlifile, Interface_not_compiled mlifile)) end; let dclsig = Env.read_signature modulename cmifile in - Includemod.compunit "(obtained by packing)" sg mlifile dclsig + Includemod.compunit "(obtained by packing)" sg mlifile dclsig end else begin (* Determine imports *) let unit_names = List.map fst units in diff --git a/typing/typetexp.ml b/typing/typetexp.ml index 1a366aada..8c954e4f4 100644 --- a/typing/typetexp.ml +++ b/typing/typetexp.ml @@ -333,18 +333,17 @@ let rec transl_type env policy styp = raise(Error(styp.ptyp_loc, Present_has_no_type l))) present end; - ignore begin - List.fold_left - (fun hl (l,_) -> - let h = Btype.hash_variant l in - try - let l' = List.assoc h hl in - if l <> l' then raise(Error(styp.ptyp_loc, Variant_tags(l, l'))); - hl - with Not_found -> (h,l) :: hl) - [] - fields - end; + (* Check for tag conflicts *) + let ht = Hashtbl.create (List.length fields + 1) in + List.iter + (fun (l,_) -> + let h = Btype.hash_variant l in + try + let l' = Hashtbl.find ht h in + if l <> l' then raise(Error(styp.ptyp_loc, Variant_tags(l, l'))) + with Not_found -> + Hashtbl.add ht h l) + fields; let row = { row_fields = List.rev fields; row_more = newvar (); row_bound = !bound; row_closed = closed; |