Imported Upstream version 3.08.4
authorJulien Cristau <julien.cristau@ens-lyon.org>
Wed, 31 Aug 2005 20:55:08 +0000 (20:55 +0000)
committerJulien Cristau <julien.cristau@ens-lyon.org>
Wed, 31 Aug 2005 20:55:08 +0000 (20:55 +0000)
463 files changed:
CVS/Entries [deleted file]
CVS/Entries.Log [deleted file]
CVS/Repository [deleted file]
CVS/Root [deleted file]
CVS/Tag [deleted file]
Changes
asmcomp/CVS/Entries [deleted file]
asmcomp/CVS/Entries.Log [deleted file]
asmcomp/CVS/Repository [deleted file]
asmcomp/CVS/Root [deleted file]
asmcomp/CVS/Tag [deleted file]
asmcomp/alpha/CVS/Entries [deleted file]
asmcomp/alpha/CVS/Repository [deleted file]
asmcomp/alpha/CVS/Root [deleted file]
asmcomp/alpha/CVS/Tag [deleted file]
asmcomp/amd64/CVS/Entries [deleted file]
asmcomp/amd64/CVS/Repository [deleted file]
asmcomp/amd64/CVS/Root [deleted file]
asmcomp/amd64/CVS/Tag [deleted file]
asmcomp/amd64/emit.mlp
asmcomp/arm/CVS/Entries [deleted file]
asmcomp/arm/CVS/Repository [deleted file]
asmcomp/arm/CVS/Root [deleted file]
asmcomp/arm/CVS/Tag [deleted file]
asmcomp/hppa/CVS/Entries [deleted file]
asmcomp/hppa/CVS/Repository [deleted file]
asmcomp/hppa/CVS/Root [deleted file]
asmcomp/hppa/CVS/Tag [deleted file]
asmcomp/i386/CVS/Entries [deleted file]
asmcomp/i386/CVS/Repository [deleted file]
asmcomp/i386/CVS/Root [deleted file]
asmcomp/i386/CVS/Tag [deleted file]
asmcomp/ia64/CVS/Entries [deleted file]
asmcomp/ia64/CVS/Repository [deleted file]
asmcomp/ia64/CVS/Root [deleted file]
asmcomp/ia64/CVS/Tag [deleted file]
asmcomp/m68k/CVS/Entries [deleted file]
asmcomp/m68k/CVS/Repository [deleted file]
asmcomp/m68k/CVS/Root [deleted file]
asmcomp/m68k/CVS/Tag [deleted file]
asmcomp/mips/CVS/Entries [deleted file]
asmcomp/mips/CVS/Repository [deleted file]
asmcomp/mips/CVS/Root [deleted file]
asmcomp/mips/CVS/Tag [deleted file]
asmcomp/power/CVS/Entries [deleted file]
asmcomp/power/CVS/Repository [deleted file]
asmcomp/power/CVS/Root [deleted file]
asmcomp/power/CVS/Tag [deleted file]
asmcomp/sparc/CVS/Entries [deleted file]
asmcomp/sparc/CVS/Repository [deleted file]
asmcomp/sparc/CVS/Root [deleted file]
asmcomp/sparc/CVS/Tag [deleted file]
asmrun/CVS/Entries [deleted file]
asmrun/CVS/Repository [deleted file]
asmrun/CVS/Root [deleted file]
asmrun/CVS/Tag [deleted file]
boot/CVS/Entries [deleted file]
boot/CVS/Repository [deleted file]
boot/CVS/Root [deleted file]
boot/CVS/Tag [deleted file]
boot/ocamlc
boot/ocamllex
bytecomp/CVS/Entries [deleted file]
bytecomp/CVS/Repository [deleted file]
bytecomp/CVS/Root [deleted file]
bytecomp/CVS/Tag [deleted file]
bytecomp/lambda.ml
bytecomp/lambda.mli
bytecomp/translclass.ml
bytecomp/translcore.ml
byterun/CVS/Entries [deleted file]
byterun/CVS/Repository [deleted file]
byterun/CVS/Root [deleted file]
byterun/CVS/Tag [deleted file]
camlp4/CHANGES
camlp4/CVS/Entries [deleted file]
camlp4/CVS/Entries.Log [deleted file]
camlp4/CVS/Repository [deleted file]
camlp4/CVS/Root [deleted file]
camlp4/CVS/Tag [deleted file]
camlp4/boot/CVS/Entries [deleted file]
camlp4/boot/CVS/Repository [deleted file]
camlp4/boot/CVS/Root [deleted file]
camlp4/boot/CVS/Tag [deleted file]
camlp4/camlp4/CVS/Entries [deleted file]
camlp4/camlp4/CVS/Repository [deleted file]
camlp4/camlp4/CVS/Root [deleted file]
camlp4/camlp4/CVS/Tag [deleted file]
camlp4/camlp4/ast2pt.ml
camlp4/camlp4/pcaml.ml
camlp4/camlp4/reloc.ml
camlp4/camlp4/reloc.mli
camlp4/compile/CVS/Entries [deleted file]
camlp4/compile/CVS/Repository [deleted file]
camlp4/compile/CVS/Root [deleted file]
camlp4/compile/CVS/Tag [deleted file]
camlp4/compile/Makefile
camlp4/config/CVS/Entries [deleted file]
camlp4/config/CVS/Repository [deleted file]
camlp4/config/CVS/Root [deleted file]
camlp4/config/CVS/Tag [deleted file]
camlp4/etc/CVS/Entries [deleted file]
camlp4/etc/CVS/Repository [deleted file]
camlp4/etc/CVS/Root [deleted file]
camlp4/etc/CVS/Tag [deleted file]
camlp4/etc/pa_o.ml
camlp4/etc/pr_o.ml
camlp4/etc/pr_r.ml
camlp4/lib/CVS/Entries [deleted file]
camlp4/lib/CVS/Repository [deleted file]
camlp4/lib/CVS/Root [deleted file]
camlp4/lib/CVS/Tag [deleted file]
camlp4/lib/plexer.ml
camlp4/man/CVS/Entries [deleted file]
camlp4/man/CVS/Repository [deleted file]
camlp4/man/CVS/Root [deleted file]
camlp4/man/CVS/Tag [deleted file]
camlp4/meta/CVS/Entries [deleted file]
camlp4/meta/CVS/Repository [deleted file]
camlp4/meta/CVS/Root [deleted file]
camlp4/meta/CVS/Tag [deleted file]
camlp4/meta/pa_r.ml
camlp4/meta/q_MLast.ml
camlp4/ocaml_src/CVS/Entries [deleted file]
camlp4/ocaml_src/CVS/Entries.Log [deleted file]
camlp4/ocaml_src/CVS/Repository [deleted file]
camlp4/ocaml_src/CVS/Root [deleted file]
camlp4/ocaml_src/CVS/Tag [deleted file]
camlp4/ocaml_src/camlp4/.depend
camlp4/ocaml_src/camlp4/CVS/Entries [deleted file]
camlp4/ocaml_src/camlp4/CVS/Repository [deleted file]
camlp4/ocaml_src/camlp4/CVS/Root [deleted file]
camlp4/ocaml_src/camlp4/CVS/Tag [deleted file]
camlp4/ocaml_src/camlp4/ast2pt.ml
camlp4/ocaml_src/camlp4/pcaml.ml
camlp4/ocaml_src/camlp4/reloc.ml
camlp4/ocaml_src/camlp4/reloc.mli
camlp4/ocaml_src/lib/.depend
camlp4/ocaml_src/lib/CVS/Entries [deleted file]
camlp4/ocaml_src/lib/CVS/Repository [deleted file]
camlp4/ocaml_src/lib/CVS/Root [deleted file]
camlp4/ocaml_src/lib/CVS/Tag [deleted file]
camlp4/ocaml_src/lib/plexer.ml
camlp4/ocaml_src/meta/.depend
camlp4/ocaml_src/meta/CVS/Entries [deleted file]
camlp4/ocaml_src/meta/CVS/Repository [deleted file]
camlp4/ocaml_src/meta/CVS/Root [deleted file]
camlp4/ocaml_src/meta/CVS/Tag [deleted file]
camlp4/ocaml_src/meta/pa_r.ml
camlp4/ocaml_src/meta/q_MLast.ml
camlp4/ocaml_src/odyl/.depend
camlp4/ocaml_src/odyl/CVS/Entries [deleted file]
camlp4/ocaml_src/odyl/CVS/Repository [deleted file]
camlp4/ocaml_src/odyl/CVS/Root [deleted file]
camlp4/ocaml_src/odyl/CVS/Tag [deleted file]
camlp4/ocaml_src/tools/CVS/Entries [deleted file]
camlp4/ocaml_src/tools/CVS/Repository [deleted file]
camlp4/ocaml_src/tools/CVS/Root [deleted file]
camlp4/ocaml_src/tools/CVS/Tag [deleted file]
camlp4/ocaml_stuff/CVS/Entries [deleted file]
camlp4/ocaml_stuff/CVS/Repository [deleted file]
camlp4/ocaml_stuff/CVS/Root [deleted file]
camlp4/ocaml_stuff/CVS/Tag [deleted file]
camlp4/ocaml_stuff/otherlibs/CVS/Entries [deleted file]
camlp4/ocaml_stuff/otherlibs/CVS/Repository [deleted file]
camlp4/ocaml_stuff/otherlibs/CVS/Root [deleted file]
camlp4/ocaml_stuff/otherlibs/CVS/Tag [deleted file]
camlp4/ocaml_stuff/otherlibs/dynlink/CVS/Entries [deleted file]
camlp4/ocaml_stuff/otherlibs/dynlink/CVS/Repository [deleted file]
camlp4/ocaml_stuff/otherlibs/dynlink/CVS/Root [deleted file]
camlp4/ocaml_stuff/otherlibs/dynlink/CVS/Tag [deleted file]
camlp4/ocaml_stuff/parsing/CVS/Entries [deleted file]
camlp4/ocaml_stuff/parsing/CVS/Repository [deleted file]
camlp4/ocaml_stuff/parsing/CVS/Root [deleted file]
camlp4/ocaml_stuff/parsing/CVS/Tag [deleted file]
camlp4/ocaml_stuff/utils/CVS/Entries [deleted file]
camlp4/ocaml_stuff/utils/CVS/Repository [deleted file]
camlp4/ocaml_stuff/utils/CVS/Root [deleted file]
camlp4/ocaml_stuff/utils/CVS/Tag [deleted file]
camlp4/ocpp/CVS/Entries [deleted file]
camlp4/ocpp/CVS/Repository [deleted file]
camlp4/ocpp/CVS/Root [deleted file]
camlp4/ocpp/CVS/Tag [deleted file]
camlp4/odyl/CVS/Entries [deleted file]
camlp4/odyl/CVS/Repository [deleted file]
camlp4/odyl/CVS/Root [deleted file]
camlp4/odyl/CVS/Tag [deleted file]
camlp4/tools/CVS/Entries [deleted file]
camlp4/tools/CVS/Repository [deleted file]
camlp4/tools/CVS/Root [deleted file]
camlp4/tools/CVS/Tag [deleted file]
camlp4/top/CVS/Entries [deleted file]
camlp4/top/CVS/Repository [deleted file]
camlp4/top/CVS/Root [deleted file]
camlp4/top/CVS/Tag [deleted file]
camlp4/top/rprint.ml
camlp4/unmaintained/CVS/Entries [deleted file]
camlp4/unmaintained/CVS/Repository [deleted file]
camlp4/unmaintained/CVS/Root [deleted file]
camlp4/unmaintained/CVS/Tag [deleted file]
camlp4/unmaintained/format/CVS/Entries [deleted file]
camlp4/unmaintained/format/CVS/Repository [deleted file]
camlp4/unmaintained/format/CVS/Root [deleted file]
camlp4/unmaintained/format/CVS/Tag [deleted file]
camlp4/unmaintained/lefteval/CVS/Entries [deleted file]
camlp4/unmaintained/lefteval/CVS/Repository [deleted file]
camlp4/unmaintained/lefteval/CVS/Root [deleted file]
camlp4/unmaintained/lefteval/CVS/Tag [deleted file]
camlp4/unmaintained/ocamllex/CVS/Entries [deleted file]
camlp4/unmaintained/ocamllex/CVS/Repository [deleted file]
camlp4/unmaintained/ocamllex/CVS/Root [deleted file]
camlp4/unmaintained/ocamllex/CVS/Tag [deleted file]
camlp4/unmaintained/olabl/CVS/Entries [deleted file]
camlp4/unmaintained/olabl/CVS/Repository [deleted file]
camlp4/unmaintained/olabl/CVS/Root [deleted file]
camlp4/unmaintained/olabl/CVS/Tag [deleted file]
camlp4/unmaintained/scheme/CVS/Entries [deleted file]
camlp4/unmaintained/scheme/CVS/Repository [deleted file]
camlp4/unmaintained/scheme/CVS/Root [deleted file]
camlp4/unmaintained/scheme/CVS/Tag [deleted file]
camlp4/unmaintained/sml/CVS/Entries [deleted file]
camlp4/unmaintained/sml/CVS/Repository [deleted file]
camlp4/unmaintained/sml/CVS/Root [deleted file]
camlp4/unmaintained/sml/CVS/Tag [deleted file]
config/CVS/Entries [deleted file]
config/CVS/Entries.Log [deleted file]
config/CVS/Repository [deleted file]
config/CVS/Root [deleted file]
config/CVS/Tag [deleted file]
config/auto-aux/CVS/Entries [deleted file]
config/auto-aux/CVS/Repository [deleted file]
config/auto-aux/CVS/Root [deleted file]
config/auto-aux/CVS/Tag [deleted file]
config/gnu/CVS/Entries [deleted file]
config/gnu/CVS/Repository [deleted file]
config/gnu/CVS/Root [deleted file]
config/gnu/CVS/Tag [deleted file]
configure
debugger/CVS/Entries [deleted file]
debugger/CVS/Repository [deleted file]
debugger/CVS/Root [deleted file]
debugger/CVS/Tag [deleted file]
debugger/program_loading.ml
driver/CVS/Entries [deleted file]
driver/CVS/Repository [deleted file]
driver/CVS/Root [deleted file]
driver/CVS/Tag [deleted file]
emacs/CVS/Entries [deleted file]
emacs/CVS/Repository [deleted file]
emacs/CVS/Root [deleted file]
emacs/CVS/Tag [deleted file]
emacs/caml-help.el
emacs/caml-types.el
lex/CVS/Entries [deleted file]
lex/CVS/Repository [deleted file]
lex/CVS/Root [deleted file]
lex/CVS/Tag [deleted file]
man/CVS/Entries [deleted file]
man/CVS/Repository [deleted file]
man/CVS/Root [deleted file]
man/CVS/Tag [deleted file]
man/ocamldoc.m
ocamldoc/CVS/Entries [deleted file]
ocamldoc/CVS/Repository [deleted file]
ocamldoc/CVS/Root [deleted file]
ocamldoc/CVS/Tag [deleted file]
ocamldoc/Changes.txt
ocamldoc/odoc_analyse.ml
ocamldoc/odoc_html.ml
ocamldoc/odoc_info.ml
ocamldoc/odoc_man.ml
ocamldoc/odoc_messages.ml
ocamldoc/odoc_sig.ml
ocamldoc/odoc_types.ml
otherlibs/CVS/Entries [deleted file]
otherlibs/CVS/Entries.Log [deleted file]
otherlibs/CVS/Repository [deleted file]
otherlibs/CVS/Root [deleted file]
otherlibs/CVS/Tag [deleted file]
otherlibs/bigarray/CVS/Entries [deleted file]
otherlibs/bigarray/CVS/Repository [deleted file]
otherlibs/bigarray/CVS/Root [deleted file]
otherlibs/bigarray/CVS/Tag [deleted file]
otherlibs/bigarray/bigarray.mli
otherlibs/db/CVS/Entries [deleted file]
otherlibs/db/CVS/Repository [deleted file]
otherlibs/db/CVS/Root [deleted file]
otherlibs/db/CVS/Tag [deleted file]
otherlibs/dbm/CVS/Entries [deleted file]
otherlibs/dbm/CVS/Repository [deleted file]
otherlibs/dbm/CVS/Root [deleted file]
otherlibs/dbm/CVS/Tag [deleted file]
otherlibs/dynlink/CVS/Entries [deleted file]
otherlibs/dynlink/CVS/Repository [deleted file]
otherlibs/dynlink/CVS/Root [deleted file]
otherlibs/dynlink/CVS/Tag [deleted file]
otherlibs/graph/.depend
otherlibs/graph/CVS/Entries [deleted file]
otherlibs/graph/CVS/Repository [deleted file]
otherlibs/graph/CVS/Root [deleted file]
otherlibs/graph/CVS/Tag [deleted file]
otherlibs/graph/Makefile
otherlibs/graph/events.c
otherlibs/graph/graphics.ml
otherlibs/graph/graphics.mli
otherlibs/graph/open.c
otherlibs/labltk/CVS/Entries [deleted file]
otherlibs/labltk/CVS/Entries.Log [deleted file]
otherlibs/labltk/CVS/Repository [deleted file]
otherlibs/labltk/CVS/Root [deleted file]
otherlibs/labltk/CVS/Tag [deleted file]
otherlibs/labltk/browser/CVS/Entries [deleted file]
otherlibs/labltk/browser/CVS/Repository [deleted file]
otherlibs/labltk/browser/CVS/Root [deleted file]
otherlibs/labltk/browser/CVS/Tag [deleted file]
otherlibs/labltk/browser/Makefile.nt
otherlibs/labltk/builtin/CVS/Entries [deleted file]
otherlibs/labltk/builtin/CVS/Repository [deleted file]
otherlibs/labltk/builtin/CVS/Root [deleted file]
otherlibs/labltk/builtin/CVS/Tag [deleted file]
otherlibs/labltk/camltk/CVS/Entries [deleted file]
otherlibs/labltk/camltk/CVS/Repository [deleted file]
otherlibs/labltk/camltk/CVS/Root [deleted file]
otherlibs/labltk/camltk/CVS/Tag [deleted file]
otherlibs/labltk/compiler/CVS/Entries [deleted file]
otherlibs/labltk/compiler/CVS/Repository [deleted file]
otherlibs/labltk/compiler/CVS/Root [deleted file]
otherlibs/labltk/compiler/CVS/Tag [deleted file]
otherlibs/labltk/examples_camltk/CVS/Entries [deleted file]
otherlibs/labltk/examples_camltk/CVS/Entries.Log [deleted file]
otherlibs/labltk/examples_camltk/CVS/Repository [deleted file]
otherlibs/labltk/examples_camltk/CVS/Root [deleted file]
otherlibs/labltk/examples_camltk/CVS/Tag [deleted file]
otherlibs/labltk/examples_camltk/images/CVS/Entries [deleted file]
otherlibs/labltk/examples_camltk/images/CVS/Repository [deleted file]
otherlibs/labltk/examples_camltk/images/CVS/Root [deleted file]
otherlibs/labltk/examples_camltk/images/CVS/Tag [deleted file]
otherlibs/labltk/examples_labltk/CVS/Entries [deleted file]
otherlibs/labltk/examples_labltk/CVS/Repository [deleted file]
otherlibs/labltk/examples_labltk/CVS/Root [deleted file]
otherlibs/labltk/examples_labltk/CVS/Tag [deleted file]
otherlibs/labltk/frx/CVS/Entries [deleted file]
otherlibs/labltk/frx/CVS/Repository [deleted file]
otherlibs/labltk/frx/CVS/Root [deleted file]
otherlibs/labltk/frx/CVS/Tag [deleted file]
otherlibs/labltk/jpf/CVS/Entries [deleted file]
otherlibs/labltk/jpf/CVS/Repository [deleted file]
otherlibs/labltk/jpf/CVS/Root [deleted file]
otherlibs/labltk/jpf/CVS/Tag [deleted file]
otherlibs/labltk/labltk/CVS/Entries [deleted file]
otherlibs/labltk/labltk/CVS/Repository [deleted file]
otherlibs/labltk/labltk/CVS/Root [deleted file]
otherlibs/labltk/labltk/CVS/Tag [deleted file]
otherlibs/labltk/lib/CVS/Entries [deleted file]
otherlibs/labltk/lib/CVS/Repository [deleted file]
otherlibs/labltk/lib/CVS/Root [deleted file]
otherlibs/labltk/lib/CVS/Tag [deleted file]
otherlibs/labltk/support/CVS/Entries [deleted file]
otherlibs/labltk/support/CVS/Repository [deleted file]
otherlibs/labltk/support/CVS/Root [deleted file]
otherlibs/labltk/support/CVS/Tag [deleted file]
otherlibs/labltk/tkanim/CVS/Entries [deleted file]
otherlibs/labltk/tkanim/CVS/Repository [deleted file]
otherlibs/labltk/tkanim/CVS/Root [deleted file]
otherlibs/labltk/tkanim/CVS/Tag [deleted file]
otherlibs/num/CVS/Entries [deleted file]
otherlibs/num/CVS/Entries.Log [deleted file]
otherlibs/num/CVS/Repository [deleted file]
otherlibs/num/CVS/Root [deleted file]
otherlibs/num/CVS/Tag [deleted file]
otherlibs/num/big_int.ml
otherlibs/num/bignum/CVS/Entries [deleted file]
otherlibs/num/bignum/CVS/Entries.Log [deleted file]
otherlibs/num/bignum/CVS/Repository [deleted file]
otherlibs/num/bignum/CVS/Root [deleted file]
otherlibs/num/bignum/CVS/Tag [deleted file]
otherlibs/num/bng_ia32.c
otherlibs/num/test/CVS/Entries [deleted file]
otherlibs/num/test/CVS/Repository [deleted file]
otherlibs/num/test/CVS/Root [deleted file]
otherlibs/num/test/CVS/Tag [deleted file]
otherlibs/num/test/test_big_ints.ml
otherlibs/str/CVS/Entries [deleted file]
otherlibs/str/CVS/Entries.Log [deleted file]
otherlibs/str/CVS/Repository [deleted file]
otherlibs/str/CVS/Root [deleted file]
otherlibs/str/CVS/Tag [deleted file]
otherlibs/systhreads/CVS/Entries [deleted file]
otherlibs/systhreads/CVS/Repository [deleted file]
otherlibs/systhreads/CVS/Root [deleted file]
otherlibs/systhreads/CVS/Tag [deleted file]
otherlibs/threads/CVS/Entries [deleted file]
otherlibs/threads/CVS/Repository [deleted file]
otherlibs/threads/CVS/Root [deleted file]
otherlibs/threads/CVS/Tag [deleted file]
otherlibs/threads/scheduler.c
otherlibs/unix/CVS/Entries [deleted file]
otherlibs/unix/CVS/Repository [deleted file]
otherlibs/unix/CVS/Root [deleted file]
otherlibs/unix/CVS/Tag [deleted file]
otherlibs/unix/getaddrinfo.c
otherlibs/win32graph/CVS/Entries [deleted file]
otherlibs/win32graph/CVS/Repository [deleted file]
otherlibs/win32graph/CVS/Root [deleted file]
otherlibs/win32graph/CVS/Tag [deleted file]
otherlibs/win32graph/open.c
otherlibs/win32unix/CVS/Entries [deleted file]
otherlibs/win32unix/CVS/Repository [deleted file]
otherlibs/win32unix/CVS/Root [deleted file]
otherlibs/win32unix/CVS/Tag [deleted file]
parsing/CVS/Entries [deleted file]
parsing/CVS/Repository [deleted file]
parsing/CVS/Root [deleted file]
parsing/CVS/Tag [deleted file]
stdlib/CVS/Entries [deleted file]
stdlib/CVS/Repository [deleted file]
stdlib/CVS/Root [deleted file]
stdlib/CVS/Tag [deleted file]
stdlib/array.mli
stdlib/format.mli
stdlib/int32.mli
stdlib/int64.mli
stdlib/list.mli
stdlib/map.ml
stdlib/obj.mli
stdlib/sys.ml
stdlib/sys.mli
tools/CVS/Entries [deleted file]
tools/CVS/Repository [deleted file]
tools/CVS/Root [deleted file]
tools/CVS/Tag [deleted file]
tools/make-package-macosx
toplevel/CVS/Entries [deleted file]
toplevel/CVS/Repository [deleted file]
toplevel/CVS/Root [deleted file]
toplevel/CVS/Tag [deleted file]
typing/CVS/Entries [deleted file]
typing/CVS/Repository [deleted file]
typing/CVS/Root [deleted file]
typing/CVS/Tag [deleted file]
typing/ctype.ml
typing/env.ml
typing/env.mli
typing/includemod.ml
typing/printtyp.ml
typing/typeclass.ml
typing/typecore.ml
typing/typedecl.ml
typing/typedecl.mli
utils/CVS/Entries [deleted file]
utils/CVS/Repository [deleted file]
utils/CVS/Root [deleted file]
utils/CVS/Tag [deleted file]
win32caml/CVS/Entries [deleted file]
win32caml/CVS/Repository [deleted file]
win32caml/CVS/Root [deleted file]
win32caml/CVS/Tag [deleted file]
yacc/CVS/Entries [deleted file]
yacc/CVS/Repository [deleted file]
yacc/CVS/Root [deleted file]
yacc/CVS/Tag [deleted file]
yacc/reader.c
yacc/skeleton.c

diff --git a/CVS/Entries b/CVS/Entries
deleted file mode 100644 (file)
index 095684e..0000000
+++ /dev/null
@@ -1,12 +0,0 @@
-/.cvsignore/1.11/Thu Aug 28 08:38:52 2003//Tocaml3083
-/.depend/1.122.4.2/Tue Feb 22 14:33:34 2005//Tocaml3083
-/Changes/1.140.2.9/Wed Mar 16 12:05:28 2005//Tocaml3083
-/INSTALL/1.42.4.2/Fri Jul  2 11:11:27 2004//Tocaml3083
-/LICENSE/1.17.4.3/Thu Aug 12 12:37:29 2004//Tocaml3083
-/Makefile/1.186.2.7/Mon Jan 31 10:30:47 2005//Tocaml3083
-/Makefile.nt/1.94.4.1/Mon Nov 29 08:50:45 2004//Tocaml3083
-/README/1.42.2.2/Tue Jul 13 07:35:45 2004//Tocaml3083
-/README.win32/1.34.2.2/Tue Jul 13 07:59:58 2004//Tocaml3083
-/Upgrading/1.3.8.1/Fri Jul  2 09:37:16 2004//Tocaml3083
-/configure/1.215.2.9/Mon Jan 24 15:22:46 2005//Tocaml3083
-D
diff --git a/CVS/Entries.Log b/CVS/Entries.Log
deleted file mode 100644 (file)
index 2f18bea..0000000
+++ /dev/null
@@ -1,24 +0,0 @@
-A D/asmcomp////
-A D/asmrun////
-A D/boot////
-A D/bytecomp////
-A D/byterun////
-A D/camlp4////
-A D/config////
-A D/debugger////
-A D/driver////
-A D/emacs////
-A D/lex////
-A D/maccaml////
-A D/man////
-A D/ocamldoc////
-A D/otherlibs////
-A D/parsing////
-A D/stdlib////
-A D/tools////
-A D/toplevel////
-A D/typing////
-A D/utils////
-A D/win32caml////
-A D/yacc////
-R D/maccaml////
diff --git a/CVS/Repository b/CVS/Repository
deleted file mode 100644 (file)
index e57fe3a..0000000
+++ /dev/null
@@ -1 +0,0 @@
-csl
diff --git a/CVS/Root b/CVS/Root
deleted file mode 100644 (file)
index c83f52f..0000000
--- a/CVS/Root
+++ /dev/null
@@ -1 +0,0 @@
-:ext:yquem.inria.fr:/net/yquem/devel/caml/repository
diff --git a/CVS/Tag b/CVS/Tag
deleted file mode 100644 (file)
index deaa3ee..0000000
--- a/CVS/Tag
+++ /dev/null
@@ -1 +0,0 @@
-Nocaml3083
diff --git a/Changes b/Changes
index b211297934267de0ebb3c63ac2270a267f58d3c4..bc6e8272332b4f26faf3bc527576e2fb755e984f 100644 (file)
--- a/Changes
+++ b/Changes
@@ -1,3 +1,51 @@
+Objective Caml 3.08.4:
+----------------------
+
+New features:
+- configure: find X11 config in some 64-bit Linux distribs
+- ocamldoc: (**/**) can be canceled with another (**/**) PR#3665
+- graphics: added resize_window
+- graphics: check for invalid arguments to drawing primitives PR#3595
+- lablbrowser: use windows subsystem on mingw
+
+Bug fixes:
+- ocamlopt: code generation problem on AMD64 PR#3640
+- wrong code generated for some classes PR#3576
+- fatal error when compiling some OO code PR#3745
+- problem with comparison on constant constructors PR#3608
+- camlp4: cryptic error message PR#3592
+- camlp4: line numbers in multi-line antiquotations PR#3549
+- camlp4: problem with make depend
+- camlp4: parse error with :> PR#3561
+- camlp4: ident conversion problem with val/contents/contents__
+- camlp4: several small parsing problems PR#3688
+- ocamldebug: handling of spaces in executable file name PR#3736
+- emacs-mode: problem when caml-types-buffer is deleted by user PR#3704
+- ocamldoc: extra backslash in ocamldoc man page PR#3687
+- ocamldoc: improvements to HTML display PR#3698
+- ocamldoc: escaping of @ in info files
+- ocamldoc: escaping of . and \ in man pages PR#3686
+- ocamldoc: better error reporting of misplaced comments
+- graphics: fixed .depend file PR#3558
+- graphics: segfault with threads and graphics PR#3651
+- nums: several bugs: PR#3718, PR#3719, others
+- nums: inline asm problems with gcc 4.0 PR#3604, PR#3637
+- threads: problem with backtrace
+- unix: problem with getaddrinfo PR#3565
+- stdlib: documentation of Int32.rem and Int64.rem PR#3573
+- stdlib: documentation of List.rev_map2 PR#3685
+- stdlib: wrong order in Map.fold PR#3607
+- stdlib: documentation of maximum float array length PR#3714
+- better detection of cycles when using -rectypes
+- missing case of module equality PR#3738
+- better error messages for unbound type variables
+- stack overflow while printing type error message PR#3705
+- assert failure when typing some classes PR#3638
+- bug in type_approx
+- better error messages related to type variance checking
+- yacc: avoid name capture for idents of the Parsing module
+
+
 Objective Caml 3.08.3:
 ----------------------
 
@@ -1850,4 +1898,4 @@ Caml Special Light 1.06:
 
 * First public release.
 
-$Id: Changes,v 1.140.2.9 2005/03/16 12:05:28 doligez Exp $
+$Id: Changes,v 1.140.2.10 2005/08/11 16:59:53 doligez Exp $
diff --git a/asmcomp/CVS/Entries b/asmcomp/CVS/Entries
deleted file mode 100644 (file)
index 5d12e97..0000000
+++ /dev/null
@@ -1,59 +0,0 @@
-/.cvsignore/1.2/Fri Jan 18 15:13:17 2002//Tocaml3083
-/asmgen.ml/1.19/Fri Apr 21 08:10:25 2000//Tocaml3083
-/asmgen.mli/1.7/Fri Apr 21 08:10:26 2000//Tocaml3083
-/asmlibrarian.ml/1.13/Thu Apr  4 09:00:16 2002//Tocaml3083
-/asmlibrarian.mli/1.6/Fri Apr 21 08:10:27 2000//Tocaml3083
-/asmlink.ml/1.65/Wed May 26 11:10:27 2004//Tocaml3083
-/asmlink.mli/1.10/Tue Jun 11 14:15:11 2002//Tocaml3083
-/asmpackager.ml/1.14.4.2/Mon Jan 24 15:22:46 2005//Tocaml3083
-/asmpackager.mli/1.1/Fri Feb  8 16:55:30 2002//Tocaml3083
-/clambda.ml/1.16/Wed May 26 11:10:27 2004//Tocaml3083
-/clambda.mli/1.16/Wed May 26 11:10:27 2004//Tocaml3083
-/closure.ml/1.44/Wed May 26 11:10:27 2004//Tocaml3083
-/closure.mli/1.5/Wed Nov 17 18:56:30 1999//Tocaml3083
-/cmm.ml/1.20/Sun Nov 24 15:55:24 2002//Tocaml3083
-/cmm.mli/1.20/Sun Nov 24 15:55:24 2002//Tocaml3083
-/cmmgen.ml/1.100/Wed May 26 11:10:27 2004//Tocaml3083
-/cmmgen.mli/1.12/Wed May 26 11:10:28 2004//Tocaml3083
-/codegen.ml/1.7/Fri Apr 21 08:10:29 2000//Tocaml3083
-/codegen.mli/1.4/Wed Nov 17 18:56:31 1999//Tocaml3083
-/coloring.ml/1.12/Thu Dec 28 13:02:49 2000//Tocaml3083
-/coloring.mli/1.4/Wed Nov 17 18:56:31 1999//Tocaml3083
-/comballoc.ml/1.3/Fri Aug 11 19:50:50 2000//Tocaml3083
-/comballoc.mli/1.2/Wed Nov 17 18:56:32 1999//Tocaml3083
-/compilenv.ml/1.21/Wed May 26 11:10:28 2004//Tocaml3083
-/compilenv.mli/1.14/Wed May 26 11:10:28 2004//Tocaml3083
-/emit.mli/1.5/Wed Nov 17 18:56:32 1999//Tocaml3083
-/emitaux.ml/1.11/Wed Nov 17 18:56:33 1999//Tocaml3083
-/emitaux.mli/1.11/Sat Jul  5 11:12:39 2003//Tocaml3083
-/interf.ml/1.14/Sat May  8 15:04:03 2004//Tocaml3083
-/interf.mli/1.4/Wed Nov 17 18:56:33 1999//Tocaml3083
-/linearize.ml/1.24/Wed Jan  9 19:40:48 2002//Tocaml3083
-/linearize.mli/1.13/Wed Jan  9 19:40:48 2002//Tocaml3083
-/liveness.ml/1.14/Fri Aug 11 19:50:52 2000//Tocaml3083
-/liveness.mli/1.5/Fri Apr 21 08:10:33 2000//Tocaml3083
-/mach.ml/1.17/Fri Aug 11 19:50:52 2000//Tocaml3083
-/mach.mli/1.17/Fri Aug 11 19:50:53 2000//Tocaml3083
-/printcmm.ml/1.24/Sun Nov 24 15:55:24 2002//Tocaml3083
-/printcmm.mli/1.6/Fri Apr 21 08:10:34 2000//Tocaml3083
-/printlinear.ml/1.12/Fri Apr 21 08:10:35 2000//Tocaml3083
-/printlinear.mli/1.5/Fri Apr 21 08:10:35 2000//Tocaml3083
-/printmach.ml/1.22/Fri Aug 11 19:50:54 2000//Tocaml3083
-/printmach.mli/1.6/Fri Apr 21 08:10:37 2000//Tocaml3083
-/proc.mli/1.16/Wed Nov 17 18:56:35 1999//Tocaml3083
-/reg.ml/1.10/Thu Jun 29 11:44:06 2000//Tocaml3083
-/reg.mli/1.7/Wed Nov 17 18:56:35 1999//Tocaml3083
-/reload.mli/1.6/Wed Nov 17 18:56:35 1999//Tocaml3083
-/reloadgen.ml/1.5/Fri Aug 11 19:50:55 2000//Tocaml3083
-/reloadgen.mli/1.4/Wed Nov 17 18:56:36 1999//Tocaml3083
-/schedgen.ml/1.10/Thu Dec 28 13:02:54 2000//Tocaml3083
-/schedgen.mli/1.6/Wed Nov 17 18:56:36 1999//Tocaml3083
-/scheduling.mli/1.3/Wed Nov 17 18:56:36 1999//Tocaml3083
-/selectgen.ml/1.30/Tue Feb 25 15:50:12 2003//Tocaml3083
-/selectgen.mli/1.6/Mon Nov  4 16:25:09 2002//Tocaml3083
-/selection.mli/1.6/Wed Nov 17 18:56:37 1999//Tocaml3083
-/spill.ml/1.18/Mon Feb 19 20:15:42 2001//Tocaml3083
-/spill.mli/1.4/Wed Nov 17 18:56:38 1999//Tocaml3083
-/split.ml/1.9/Fri Aug 11 19:50:59 2000//Tocaml3083
-/split.mli/1.4/Wed Nov 17 18:56:38 1999//Tocaml3083
-D
diff --git a/asmcomp/CVS/Entries.Log b/asmcomp/CVS/Entries.Log
deleted file mode 100644 (file)
index 36972dd..0000000
+++ /dev/null
@@ -1,10 +0,0 @@
-A D/alpha////
-A D/amd64////
-A D/arm////
-A D/hppa////
-A D/i386////
-A D/ia64////
-A D/m68k////
-A D/mips////
-A D/power////
-A D/sparc////
diff --git a/asmcomp/CVS/Repository b/asmcomp/CVS/Repository
deleted file mode 100644 (file)
index b92c542..0000000
+++ /dev/null
@@ -1 +0,0 @@
-csl/asmcomp
diff --git a/asmcomp/CVS/Root b/asmcomp/CVS/Root
deleted file mode 100644 (file)
index c83f52f..0000000
+++ /dev/null
@@ -1 +0,0 @@
-:ext:yquem.inria.fr:/net/yquem/devel/caml/repository
diff --git a/asmcomp/CVS/Tag b/asmcomp/CVS/Tag
deleted file mode 100644 (file)
index deaa3ee..0000000
+++ /dev/null
@@ -1 +0,0 @@
-Nocaml3083
diff --git a/asmcomp/alpha/CVS/Entries b/asmcomp/alpha/CVS/Entries
deleted file mode 100644 (file)
index 987b57c..0000000
+++ /dev/null
@@ -1,7 +0,0 @@
-/arch.ml/1.10/Fri Nov 29 15:03:36 2002//Tocaml3083
-/emit.mlp/1.40/Mon May  3 12:46:50 2004//Tocaml3083
-/proc.ml/1.6/Mon Jul 22 16:37:46 2002//Tocaml3083
-/reload.ml/1.3/Wed Nov 17 18:56:40 1999//Tocaml3083
-/scheduling.ml/1.6/Wed Nov 17 18:56:40 1999//Tocaml3083
-/selection.ml/1.12/Tue Jul 24 08:01:25 2001//Tocaml3083
-D
diff --git a/asmcomp/alpha/CVS/Repository b/asmcomp/alpha/CVS/Repository
deleted file mode 100644 (file)
index 495a12f..0000000
+++ /dev/null
@@ -1 +0,0 @@
-csl/asmcomp/alpha
diff --git a/asmcomp/alpha/CVS/Root b/asmcomp/alpha/CVS/Root
deleted file mode 100644 (file)
index c83f52f..0000000
+++ /dev/null
@@ -1 +0,0 @@
-:ext:yquem.inria.fr:/net/yquem/devel/caml/repository
diff --git a/asmcomp/alpha/CVS/Tag b/asmcomp/alpha/CVS/Tag
deleted file mode 100644 (file)
index deaa3ee..0000000
+++ /dev/null
@@ -1 +0,0 @@
-Nocaml3083
diff --git a/asmcomp/amd64/CVS/Entries b/asmcomp/amd64/CVS/Entries
deleted file mode 100644 (file)
index b793abe..0000000
+++ /dev/null
@@ -1,7 +0,0 @@
-/arch.ml/1.1/Mon Jun 30 08:28:44 2003//Tocaml3083
-/emit.mlp/1.6.6.1/Thu Jul  1 16:09:03 2004//Tocaml3083
-/proc.ml/1.1/Mon Jun 30 08:28:44 2003//Tocaml3083
-/reload.ml/1.1/Mon Jun 30 08:28:44 2003//Tocaml3083
-/scheduling.ml/1.1/Mon Jun 30 08:28:44 2003//Tocaml3083
-/selection.ml/1.2/Mon Jun 30 11:29:26 2003//Tocaml3083
-D
diff --git a/asmcomp/amd64/CVS/Repository b/asmcomp/amd64/CVS/Repository
deleted file mode 100644 (file)
index 314bfb2..0000000
+++ /dev/null
@@ -1 +0,0 @@
-csl/asmcomp/amd64
diff --git a/asmcomp/amd64/CVS/Root b/asmcomp/amd64/CVS/Root
deleted file mode 100644 (file)
index c83f52f..0000000
+++ /dev/null
@@ -1 +0,0 @@
-:ext:yquem.inria.fr:/net/yquem/devel/caml/repository
diff --git a/asmcomp/amd64/CVS/Tag b/asmcomp/amd64/CVS/Tag
deleted file mode 100644 (file)
index deaa3ee..0000000
+++ /dev/null
@@ -1 +0,0 @@
-Nocaml3083
index c3b8516147d250b1fefee447749a5698a9ae1b43..2caea3ceea46b4963fb0111f3289cbf0dc27bd62 100644 (file)
@@ -10,7 +10,7 @@
 (*                                                                     *)
 (***********************************************************************)
 
-(* $Id: emit.mlp,v 1.6.6.1 2004/07/01 16:09:03 xleroy Exp $ *)
+(* $Id: emit.mlp,v 1.6.6.2 2005/06/12 13:35:56 xleroy Exp $ *)
 
 (* Emission of Intel 386 assembly code *)
 
@@ -35,8 +35,12 @@ let frame_required () =
   !contains_calls || num_stack_slots.(0) > 0 || num_stack_slots.(1) > 0
 
 let frame_size () =                     (* includes return address *)
-  let sz = (!stack_offset + 8 * (num_stack_slots.(0) + num_stack_slots.(1)) + 8)
-  in Misc.align sz 16
+  if frame_required() then begin
+    let sz = 
+      (!stack_offset + 8 * (num_stack_slots.(0) + num_stack_slots.(1)) + 8)
+    in Misc.align sz 16
+  end else 
+    !stack_offset + 8
 
 let slot_offset loc cl =
   match loc with
diff --git a/asmcomp/arm/CVS/Entries b/asmcomp/arm/CVS/Entries
deleted file mode 100644 (file)
index 78d6f10..0000000
+++ /dev/null
@@ -1,7 +0,0 @@
-/arch.ml/1.9/Fri Nov 29 15:03:36 2002//Tocaml3083
-/emit.mlp/1.18/Mon May  3 12:46:50 2004//Tocaml3083
-/proc.ml/1.8/Mon Jul 22 16:37:47 2002//Tocaml3083
-/reload.ml/1.4/Wed Nov 17 18:56:41 1999//Tocaml3083
-/scheduling.ml/1.4/Wed Nov 17 18:56:41 1999//Tocaml3083
-/selection.ml/1.6/Fri Mar 30 12:22:32 2001//Tocaml3083
-D
diff --git a/asmcomp/arm/CVS/Repository b/asmcomp/arm/CVS/Repository
deleted file mode 100644 (file)
index 00d97fc..0000000
+++ /dev/null
@@ -1 +0,0 @@
-csl/asmcomp/arm
diff --git a/asmcomp/arm/CVS/Root b/asmcomp/arm/CVS/Root
deleted file mode 100644 (file)
index c83f52f..0000000
+++ /dev/null
@@ -1 +0,0 @@
-:ext:yquem.inria.fr:/net/yquem/devel/caml/repository
diff --git a/asmcomp/arm/CVS/Tag b/asmcomp/arm/CVS/Tag
deleted file mode 100644 (file)
index deaa3ee..0000000
+++ /dev/null
@@ -1 +0,0 @@
-Nocaml3083
diff --git a/asmcomp/hppa/CVS/Entries b/asmcomp/hppa/CVS/Entries
deleted file mode 100644 (file)
index bbbaaa6..0000000
+++ /dev/null
@@ -1,7 +0,0 @@
-/arch.ml/1.7/Fri Nov 29 15:03:36 2002//Tocaml3083
-/emit.mlp/1.19/Sun May 16 09:09:23 2004//Tocaml3083
-/proc.ml/1.7/Sun May  9 15:19:16 2004//Tocaml3083
-/reload.ml/1.3/Wed Nov 17 18:56:42 1999//Tocaml3083
-/scheduling.ml/1.4/Wed Nov 17 18:56:42 1999//Tocaml3083
-/selection.ml/1.5/Wed Nov 17 18:56:42 1999//Tocaml3083
-D
diff --git a/asmcomp/hppa/CVS/Repository b/asmcomp/hppa/CVS/Repository
deleted file mode 100644 (file)
index c2a219d..0000000
+++ /dev/null
@@ -1 +0,0 @@
-csl/asmcomp/hppa
diff --git a/asmcomp/hppa/CVS/Root b/asmcomp/hppa/CVS/Root
deleted file mode 100644 (file)
index c83f52f..0000000
+++ /dev/null
@@ -1 +0,0 @@
-:ext:yquem.inria.fr:/net/yquem/devel/caml/repository
diff --git a/asmcomp/hppa/CVS/Tag b/asmcomp/hppa/CVS/Tag
deleted file mode 100644 (file)
index deaa3ee..0000000
+++ /dev/null
@@ -1 +0,0 @@
-Nocaml3083
diff --git a/asmcomp/i386/CVS/Entries b/asmcomp/i386/CVS/Entries
deleted file mode 100644 (file)
index 6893611..0000000
+++ /dev/null
@@ -1,9 +0,0 @@
-/arch.ml/1.12/Tue Feb 25 15:50:12 2003//Tocaml3083
-/emit.mlp/1.32/Mon May  3 12:46:50 2004//Tocaml3083
-/emit_nt.mlp/1.24/Mon May  3 12:46:50 2004//Tocaml3083
-/proc.ml/1.8/Sun Jun 15 09:58:31 2003//Tocaml3083
-/proc_nt.ml/1.5/Tue Mar 12 16:17:52 2002//Tocaml3083
-/reload.ml/1.5/Fri Nov 22 15:09:18 2002//Tocaml3083
-/scheduling.ml/1.3/Fri Feb  4 12:43:18 2000//Tocaml3083
-/selection.ml/1.13/Tue Feb 25 15:50:13 2003//Tocaml3083
-D
diff --git a/asmcomp/i386/CVS/Repository b/asmcomp/i386/CVS/Repository
deleted file mode 100644 (file)
index b58bb38..0000000
+++ /dev/null
@@ -1 +0,0 @@
-csl/asmcomp/i386
diff --git a/asmcomp/i386/CVS/Root b/asmcomp/i386/CVS/Root
deleted file mode 100644 (file)
index c83f52f..0000000
+++ /dev/null
@@ -1 +0,0 @@
-:ext:yquem.inria.fr:/net/yquem/devel/caml/repository
diff --git a/asmcomp/i386/CVS/Tag b/asmcomp/i386/CVS/Tag
deleted file mode 100644 (file)
index deaa3ee..0000000
+++ /dev/null
@@ -1 +0,0 @@
-Nocaml3083
diff --git a/asmcomp/ia64/CVS/Entries b/asmcomp/ia64/CVS/Entries
deleted file mode 100644 (file)
index cd2b799..0000000
+++ /dev/null
@@ -1,7 +0,0 @@
-/arch.ml/1.5/Fri Nov 29 15:03:36 2002//Tocaml3083
-/emit.mlp/1.16.4.1/Mon Jul 12 15:03:19 2004//Tocaml3083
-/proc.ml/1.5/Mon Jul 22 16:37:52 2002//Tocaml3083
-/reload.ml/1.2/Sun Jul 16 02:57:31 2000//Tocaml3083
-/scheduling.ml/1.3/Sun Jul 16 02:57:31 2000//Tocaml3083
-/selection.ml/1.7/Mon May  3 12:27:07 2004//Tocaml3083
-D
diff --git a/asmcomp/ia64/CVS/Repository b/asmcomp/ia64/CVS/Repository
deleted file mode 100644 (file)
index 7d2f122..0000000
+++ /dev/null
@@ -1 +0,0 @@
-csl/asmcomp/ia64
diff --git a/asmcomp/ia64/CVS/Root b/asmcomp/ia64/CVS/Root
deleted file mode 100644 (file)
index c83f52f..0000000
+++ /dev/null
@@ -1 +0,0 @@
-:ext:yquem.inria.fr:/net/yquem/devel/caml/repository
diff --git a/asmcomp/ia64/CVS/Tag b/asmcomp/ia64/CVS/Tag
deleted file mode 100644 (file)
index deaa3ee..0000000
+++ /dev/null
@@ -1 +0,0 @@
-Nocaml3083
diff --git a/asmcomp/m68k/CVS/Entries b/asmcomp/m68k/CVS/Entries
deleted file mode 100644 (file)
index 8a31806..0000000
+++ /dev/null
@@ -1,2 +0,0 @@
-/README/1.1/Fri Feb  4 15:34:43 2000//Tocaml3083
-D
diff --git a/asmcomp/m68k/CVS/Repository b/asmcomp/m68k/CVS/Repository
deleted file mode 100644 (file)
index 636daa9..0000000
+++ /dev/null
@@ -1 +0,0 @@
-csl/asmcomp/m68k
diff --git a/asmcomp/m68k/CVS/Root b/asmcomp/m68k/CVS/Root
deleted file mode 100644 (file)
index c83f52f..0000000
+++ /dev/null
@@ -1 +0,0 @@
-:ext:yquem.inria.fr:/net/yquem/devel/caml/repository
diff --git a/asmcomp/m68k/CVS/Tag b/asmcomp/m68k/CVS/Tag
deleted file mode 100644 (file)
index deaa3ee..0000000
+++ /dev/null
@@ -1 +0,0 @@
-Nocaml3083
diff --git a/asmcomp/mips/CVS/Entries b/asmcomp/mips/CVS/Entries
deleted file mode 100644 (file)
index e824425..0000000
+++ /dev/null
@@ -1,7 +0,0 @@
-/arch.ml/1.6/Fri Nov 29 15:03:36 2002//Tocaml3083
-/emit.mlp/1.18/Mon Jan  5 20:25:56 2004//Tocaml3083
-/proc.ml/1.6/Mon Jul 22 16:37:52 2002//Tocaml3083
-/reload.ml/1.3/Wed Nov 17 18:56:45 1999//Tocaml3083
-/scheduling.ml/1.2/Wed Nov 17 18:56:45 1999//Tocaml3083
-/selection.ml/1.4/Wed Nov 17 18:56:46 1999//Tocaml3083
-D
diff --git a/asmcomp/mips/CVS/Repository b/asmcomp/mips/CVS/Repository
deleted file mode 100644 (file)
index cf72e07..0000000
+++ /dev/null
@@ -1 +0,0 @@
-csl/asmcomp/mips
diff --git a/asmcomp/mips/CVS/Root b/asmcomp/mips/CVS/Root
deleted file mode 100644 (file)
index c83f52f..0000000
+++ /dev/null
@@ -1 +0,0 @@
-:ext:yquem.inria.fr:/net/yquem/devel/caml/repository
diff --git a/asmcomp/mips/CVS/Tag b/asmcomp/mips/CVS/Tag
deleted file mode 100644 (file)
index deaa3ee..0000000
+++ /dev/null
@@ -1 +0,0 @@
-Nocaml3083
diff --git a/asmcomp/power/CVS/Entries b/asmcomp/power/CVS/Entries
deleted file mode 100644 (file)
index bb54e5a..0000000
+++ /dev/null
@@ -1,7 +0,0 @@
-/arch.ml/1.11/Sat Jun 19 16:13:32 2004//Tocaml3083
-/emit.mlp/1.21/Sat Jun 19 17:39:34 2004//Tocaml3083
-/proc.ml/1.12/Sat Jun 19 17:39:35 2004//Tocaml3083
-/reload.ml/1.3/Wed Nov 17 18:56:46 1999//Tocaml3083
-/scheduling.ml/1.6/Sat Jun 19 16:13:33 2004//Tocaml3083
-/selection.ml/1.6/Sat Jun 19 16:13:33 2004//Tocaml3083
-D
diff --git a/asmcomp/power/CVS/Repository b/asmcomp/power/CVS/Repository
deleted file mode 100644 (file)
index 0c25f47..0000000
+++ /dev/null
@@ -1 +0,0 @@
-csl/asmcomp/power
diff --git a/asmcomp/power/CVS/Root b/asmcomp/power/CVS/Root
deleted file mode 100644 (file)
index c83f52f..0000000
+++ /dev/null
@@ -1 +0,0 @@
-:ext:yquem.inria.fr:/net/yquem/devel/caml/repository
diff --git a/asmcomp/power/CVS/Tag b/asmcomp/power/CVS/Tag
deleted file mode 100644 (file)
index deaa3ee..0000000
+++ /dev/null
@@ -1 +0,0 @@
-Nocaml3083
diff --git a/asmcomp/sparc/CVS/Entries b/asmcomp/sparc/CVS/Entries
deleted file mode 100644 (file)
index 894572d..0000000
+++ /dev/null
@@ -1,7 +0,0 @@
-/arch.ml/1.8/Fri Nov 29 15:03:08 2002//Tocaml3083
-/emit.mlp/1.21/Mon Jan  5 20:25:56 2004//Tocaml3083
-/proc.ml/1.7/Fri Nov 29 15:03:08 2002//Tocaml3083
-/reload.ml/1.3/Wed Nov 17 18:56:47 1999//Tocaml3083
-/scheduling.ml/1.5/Fri Nov 29 15:03:08 2002//Tocaml3083
-/selection.ml/1.8/Fri Nov 29 15:03:08 2002//Tocaml3083
-D
diff --git a/asmcomp/sparc/CVS/Repository b/asmcomp/sparc/CVS/Repository
deleted file mode 100644 (file)
index f662bb4..0000000
+++ /dev/null
@@ -1 +0,0 @@
-csl/asmcomp/sparc
diff --git a/asmcomp/sparc/CVS/Root b/asmcomp/sparc/CVS/Root
deleted file mode 100644 (file)
index c83f52f..0000000
+++ /dev/null
@@ -1 +0,0 @@
-:ext:yquem.inria.fr:/net/yquem/devel/caml/repository
diff --git a/asmcomp/sparc/CVS/Tag b/asmcomp/sparc/CVS/Tag
deleted file mode 100644 (file)
index deaa3ee..0000000
+++ /dev/null
@@ -1 +0,0 @@
-Nocaml3083
diff --git a/asmrun/CVS/Entries b/asmrun/CVS/Entries
deleted file mode 100644 (file)
index 84f63c6..0000000
+++ /dev/null
@@ -1,23 +0,0 @@
-/.cvsignore/1.1/Fri Jan 18 15:13:17 2002//Tocaml3083
-/.depend/1.41.4.1/Fri Jul  9 15:55:09 2004//Tocaml3083
-/Makefile/1.51/Sun May  9 15:19:16 2004//Tocaml3083
-/Makefile.nt/1.20/Tue Jun 18 16:17:34 2002//Tocaml3083
-/alpha.S/1.29/Sat Jan  3 12:51:18 2004//Tocaml3083
-/amd64.S/1.8.4.1/Thu Jul  1 16:09:03 2004//Tocaml3083
-/arm.S/1.15/Sat Jan  3 12:51:18 2004//Tocaml3083
-/fail.c/1.37/Mon May 17 17:25:52 2004//Tocaml3083
-/hppa.S/1.25/Sun May 16 09:09:22 2004//Tocaml3083
-/i386.S/1.42/Sat Jan  3 12:51:19 2004//Tocaml3083
-/i386nt.asm/1.17/Tue May  4 09:02:47 2004//Tocaml3083
-/ia64.S/1.13/Sat Jan  3 12:51:19 2004//Tocaml3083
-/m68k.S/1.15/Sat Jan  3 12:51:19 2004//Tocaml3083
-/mips.s/1.11.4.1/Tue Jul 13 08:01:59 2004//Tocaml3083
-/power-aix.S/1.15/Sat Jan  3 12:51:19 2004//Tocaml3083
-/power-elf.S/1.18/Sat Jan  3 12:51:19 2004//Tocaml3083
-/power-rhapsody.S/1.13/Sun Feb 22 14:56:25 2004//Tocaml3083
-/roots.c/1.37/Fri Jan  2 19:22:19 2004//Tocaml3083
-/signals.c/1.81/Sat Jun 19 16:13:32 2004//Tocaml3083
-/sparc.S/1.24.4.1/Wed Oct  6 09:02:36 2004//Tocaml3083
-/stack.h/1.28/Tue Dec 16 18:09:04 2003//Tocaml3083
-/startup.c/1.30.4.3/Wed Mar 16 12:05:28 2005//Tocaml3083
-D
diff --git a/asmrun/CVS/Repository b/asmrun/CVS/Repository
deleted file mode 100644 (file)
index 13b8a76..0000000
+++ /dev/null
@@ -1 +0,0 @@
-csl/asmrun
diff --git a/asmrun/CVS/Root b/asmrun/CVS/Root
deleted file mode 100644 (file)
index c83f52f..0000000
+++ /dev/null
@@ -1 +0,0 @@
-:ext:yquem.inria.fr:/net/yquem/devel/caml/repository
diff --git a/asmrun/CVS/Tag b/asmrun/CVS/Tag
deleted file mode 100644 (file)
index deaa3ee..0000000
+++ /dev/null
@@ -1 +0,0 @@
-Nocaml3083
diff --git a/boot/CVS/Entries b/boot/CVS/Entries
deleted file mode 100644 (file)
index b6b03c3..0000000
+++ /dev/null
@@ -1,4 +0,0 @@
-/.cvsignore/1.4/Thu Oct 10 11:58:28 1996//Tocaml3083
-/ocamlc/1.319.2.12/Wed Mar 16 12:05:28 2005/-kb/Tocaml3083
-/ocamllex/1.251.2.10/Wed Mar 16 12:05:32 2005/-kb/Tocaml3083
-D
diff --git a/boot/CVS/Repository b/boot/CVS/Repository
deleted file mode 100644 (file)
index 1e0a06a..0000000
+++ /dev/null
@@ -1 +0,0 @@
-csl/boot
diff --git a/boot/CVS/Root b/boot/CVS/Root
deleted file mode 100644 (file)
index c83f52f..0000000
+++ /dev/null
@@ -1 +0,0 @@
-:ext:yquem.inria.fr:/net/yquem/devel/caml/repository
diff --git a/boot/CVS/Tag b/boot/CVS/Tag
deleted file mode 100644 (file)
index deaa3ee..0000000
+++ /dev/null
@@ -1 +0,0 @@
-Nocaml3083
index f28ffb492d505bf4f60fd5bd5e41c5727e24d229..515197d3a29b68a8f17ca303a74c916f119e4fc9 100755 (executable)
Binary files a/boot/ocamlc and b/boot/ocamlc differ
index ae8698a208e6487f03baf64042862e8d6d002d4c..feecf82cee1eb4f75dfb0a0581f2b949faf6caa0 100755 (executable)
Binary files a/boot/ocamllex and b/boot/ocamllex differ
diff --git a/bytecomp/CVS/Entries b/bytecomp/CVS/Entries
deleted file mode 100644 (file)
index 0d330cf..0000000
+++ /dev/null
@@ -1,45 +0,0 @@
-/.cvsignore/1.1/Tue Aug 29 08:33:13 1995//Tocaml3083
-/bytegen.ml/1.65.2.1/Wed Jul  7 16:49:51 2004//Tocaml3083
-/bytegen.mli/1.6/Wed Nov 17 18:56:59 1999//Tocaml3083
-/bytelibrarian.ml/1.18/Thu Apr 18 22:55:36 2002//Tocaml3083
-/bytelibrarian.mli/1.6/Mon Mar  6 22:11:06 2000//Tocaml3083
-/bytelink.ml/1.83.4.1/Fri Jul  2 09:10:50 2004//Tocaml3083
-/bytelink.mli/1.11/Tue Jun 11 14:15:11 2002//Tocaml3083
-/bytepackager.ml/1.4/Fri Apr  9 13:32:27 2004//Tocaml3083
-/bytepackager.mli/1.1/Fri Feb  8 16:55:42 2002//Tocaml3083
-/bytesections.ml/1.3/Sun Feb 22 15:07:50 2004//Tocaml3083
-/bytesections.mli/1.3/Sun Feb 22 15:07:50 2004//Tocaml3083
-/dll.ml/1.12/Fri Jan 16 15:24:02 2004//Tocaml3083
-/dll.mli/1.5/Tue Jul  2 16:13:12 2002//Tocaml3083
-/emitcode.ml/1.32/Wed May 26 11:10:50 2004//Tocaml3083
-/emitcode.mli/1.14/Thu Mar  6 15:59:54 2003//Tocaml3083
-/instruct.ml/1.21/Wed May 26 11:10:50 2004//Tocaml3083
-/instruct.mli/1.20/Wed May 26 11:10:50 2004//Tocaml3083
-/lambda.ml/1.40.2.1/Wed Jul  7 16:49:51 2004//Tocaml3083
-/lambda.mli/1.38.2.1/Wed Jul  7 16:49:53 2004//Tocaml3083
-/matching.ml/1.60/Thu Apr 29 12:38:11 2004//Tocaml3083
-/matching.mli/1.12/Wed May 26 11:10:50 2004//Tocaml3083
-/meta.ml/1.13/Fri Apr 16 13:46:20 2004//Tocaml3083
-/meta.mli/1.13/Fri Apr 16 13:46:27 2004//Tocaml3083
-/printinstr.ml/1.22/Wed May 26 11:10:50 2004//Tocaml3083
-/printinstr.mli/1.5/Mon Mar  6 22:11:08 2000//Tocaml3083
-/printlambda.ml/1.49/Wed May 26 11:10:50 2004//Tocaml3083
-/printlambda.mli/1.5/Mon Mar  6 22:11:10 2000//Tocaml3083
-/runtimedef.mli/1.4/Wed Nov 17 18:57:01 1999//Tocaml3083
-/simplif.ml/1.23/Wed May 26 11:10:50 2004//Tocaml3083
-/simplif.mli/1.3/Wed Nov 17 18:57:01 1999//Tocaml3083
-/switch.ml/1.9/Tue Oct  1 12:49:52 2002//Tocaml3083
-/switch.mli/1.5/Fri Sep 21 15:59:15 2001//Tocaml3083
-/symtable.ml/1.37/Sun Feb 22 15:07:50 2004//Tocaml3083
-/symtable.mli/1.14/Sun Feb 22 15:07:50 2004//Tocaml3083
-/translclass.ml/1.32/Wed May 26 11:10:50 2004//Tocaml3083
-/translclass.mli/1.10/Wed May 26 11:10:50 2004//Tocaml3083
-/translcore.ml/1.96/Wed May 26 11:10:50 2004//Tocaml3083
-/translcore.mli/1.18/Tue Nov 25 09:20:43 2003//Tocaml3083
-/translmod.ml/1.50/Sat Jun 12 08:55:45 2004//Tocaml3083
-/translmod.mli/1.12/Fri Apr  9 13:32:27 2004//Tocaml3083
-/translobj.ml/1.9/Wed May 26 11:10:51 2004//Tocaml3083
-/translobj.mli/1.6/Wed May 26 11:10:51 2004//Tocaml3083
-/typeopt.ml/1.10/Fri Apr 16 00:50:23 2004//Tocaml3083
-/typeopt.mli/1.4/Mon Feb 28 15:45:50 2000//Tocaml3083
-D
diff --git a/bytecomp/CVS/Repository b/bytecomp/CVS/Repository
deleted file mode 100644 (file)
index 7219db2..0000000
+++ /dev/null
@@ -1 +0,0 @@
-csl/bytecomp
diff --git a/bytecomp/CVS/Root b/bytecomp/CVS/Root
deleted file mode 100644 (file)
index c83f52f..0000000
+++ /dev/null
@@ -1 +0,0 @@
-:ext:yquem.inria.fr:/net/yquem/devel/caml/repository
diff --git a/bytecomp/CVS/Tag b/bytecomp/CVS/Tag
deleted file mode 100644 (file)
index deaa3ee..0000000
+++ /dev/null
@@ -1 +0,0 @@
-Nocaml3083
index 82cdbf945a4b0f5f9e422fe7fa16e6b9863d6367..a7d5bff73ce466d940a17bc0dbd47d6d3443f3db 100644 (file)
@@ -10,7 +10,7 @@
 (*                                                                     *)
 (***********************************************************************)
 
-(* $Id: lambda.ml,v 1.40.2.1 2004/07/07 16:49:51 xleroy Exp $ *)
+(* $Id: lambda.ml,v 1.40.2.2 2005/04/04 05:14:25 garrigue Exp $ *)
 
 open Misc
 open Path
@@ -235,63 +235,88 @@ let name_lambda_list args fn =
       Llet(Strict, id, arg, name_list (Lvar id :: names) rem) in
   name_list [] args
 
-module IdentSet =
-  Set.Make(struct
-    type t = Ident.t
-    let compare = compare
-  end)
-
-let free_variables l =
-  let fv = ref IdentSet.empty in
-  let rec freevars = function
-    Lvar id ->
-      fv := IdentSet.add id !fv
-  | Lconst sc -> ()
+let rec iter f = function
+    Lvar _
+  | Lconst _ -> ()
   | Lapply(fn, args) ->
-      freevars fn; List.iter freevars args
+      f fn; List.iter f args
   | Lfunction(kind, params, body) ->
-      freevars body;
-      List.iter (fun param -> fv := IdentSet.remove param !fv) params
+      f body
   | Llet(str, id, arg, body) ->
-      freevars arg; freevars body; fv := IdentSet.remove id !fv
+      f arg; f body
   | Lletrec(decl, body) ->
-      freevars body;
-      List.iter (fun (id, exp) -> freevars exp) decl;
-      List.iter (fun (id, exp) -> fv := IdentSet.remove id !fv) decl
+      f body;
+      List.iter (fun (id, exp) -> f exp) decl
   | Lprim(p, args) ->
-      List.iter freevars args
+      List.iter f args
   | Lswitch(arg, sw) ->
-      freevars arg; 
-      List.iter (fun (key, case) -> freevars case) sw.sw_consts;
-      List.iter (fun (key, case) -> freevars case) sw.sw_blocks;
+      f arg; 
+      List.iter (fun (key, case) -> f case) sw.sw_consts;
+      List.iter (fun (key, case) -> f case) sw.sw_blocks;
       begin match sw.sw_failaction with
       | None -> ()
-      | Some l -> freevars l
+      | Some l -> f l
       end
   | Lstaticraise (_,args) ->
-      List.iter freevars args
+      List.iter f args
   | Lstaticcatch(e1, (_,vars), e2) ->
-      freevars e1; freevars e2 ;
-      List.iter (fun id -> fv := IdentSet.remove id !fv) vars        
+      f e1; f e2
   | Ltrywith(e1, exn, e2) ->
-      freevars e1; freevars e2; fv := IdentSet.remove exn !fv
+      f e1; f e2
   | Lifthenelse(e1, e2, e3) ->
-      freevars e1; freevars e2; freevars e3
+      f e1; f e2; f e3
   | Lsequence(e1, e2) ->
-      freevars e1; freevars e2
+      f e1; f e2
   | Lwhile(e1, e2) ->
-      freevars e1; freevars e2
+      f e1; f e2
   | Lfor(v, e1, e2, dir, e3) -> 
-      freevars e1; freevars e2; freevars e3; fv := IdentSet.remove v !fv
+      f e1; f e2; f e3
   | Lassign(id, e) ->
-      fv := IdentSet.add id !fv; freevars e
+      f e
   | Lsend (k, met, obj, args) ->
-      List.iter freevars (met::obj::args)
+      List.iter f (met::obj::args)
   | Levent (lam, evt) ->
-      freevars lam
+      f lam
   | Lifused (v, e) ->
-      freevars e
-  in freevars l; !fv
+      f e
+
+module IdentSet =
+  Set.Make(struct
+    type t = Ident.t
+    let compare = compare
+  end)
+
+let free_ids get l =
+  let fv = ref IdentSet.empty in
+  let rec free l =
+    iter free l;
+    fv := List.fold_right IdentSet.add (get l) !fv;
+    match l with
+      Lfunction(kind, params, body) ->
+        List.iter (fun param -> fv := IdentSet.remove param !fv) params
+    | Llet(str, id, arg, body) ->
+        fv := IdentSet.remove id !fv
+    | Lletrec(decl, body) ->
+        List.iter (fun (id, exp) -> fv := IdentSet.remove id !fv) decl
+    | Lstaticcatch(e1, (_,vars), e2) ->
+        List.iter (fun id -> fv := IdentSet.remove id !fv) vars        
+    | Ltrywith(e1, exn, e2) ->
+        fv := IdentSet.remove exn !fv
+    | Lfor(v, e1, e2, dir, e3) -> 
+        fv := IdentSet.remove v !fv
+    | Lassign(id, e) ->
+        fv := IdentSet.add id !fv
+    | Lvar _ | Lconst _ | Lapply _
+    | Lprim _ | Lswitch _ | Lstaticraise _
+    | Lifthenelse _ | Lsequence _ | Lwhile _
+    | Lsend _ | Levent _ | Lifused _ -> ()
+  in free l; !fv
+
+let free_variables l =
+  free_ids (function Lvar id -> [id] | _ -> []) l
+
+let free_methods l =
+  free_ids (function Lsend(Self, Lvar meth, obj, _) -> [meth] | _ -> []) l
 
 (* Check if an action has a "when" guard *)
 let raise_count = ref 0
index 034214072faffe38c082e48fb69ced78a3572fce..51187756b57f6124a24fdbfcf55f3096900a3a04 100644 (file)
@@ -10,7 +10,7 @@
 (*                                                                     *)
 (***********************************************************************)
 
-(* $Id: lambda.mli,v 1.38.2.1 2004/07/07 16:49:53 xleroy Exp $ *)
+(* $Id: lambda.mli,v 1.38.2.2 2005/04/04 05:14:25 garrigue Exp $ *)
 
 (* The "lambda" intermediate code *)
 
@@ -174,8 +174,10 @@ val name_lambda_list: lambda list -> (lambda list -> lambda) -> lambda
 val is_guarded: lambda -> bool
 val patch_guarded : lambda -> lambda -> lambda
 
+val iter: (lambda -> unit) -> lambda -> unit
 module IdentSet: Set.S with type elt = Ident.t
 val free_variables: lambda -> IdentSet.t
+val free_methods: lambda -> IdentSet.t
 
 val transl_path: Path.t -> lambda
 val make_sequence: ('a -> lambda) -> 'a list -> lambda
index a192262d3d31950330107a8e45c268467c05fb14..062c69db2aafe385dcaea03b4002a9fc9f4bc436 100644 (file)
@@ -10,7 +10,7 @@
 (*                                                                     *)
 (***********************************************************************)
 
-(* $Id: translclass.ml,v 1.32 2004/05/26 11:10:50 garrigue Exp $ *)
+(* $Id: translclass.ml,v 1.32.2.2 2005/08/08 01:40:31 garrigue Exp $ *)
 
 open Misc
 open Asttypes
@@ -365,6 +365,16 @@ let rec build_class_lets cl =
   | _ ->
       (cl.cl_env, fun x -> x)
 
+let rec get_class_meths cl =
+  match cl.cl_desc with
+    Tclass_structure cl ->
+      Meths.fold (fun _ -> IdentSet.add) cl.cl_meths IdentSet.empty
+  | Tclass_ident _ -> IdentSet.empty
+  | Tclass_fun (_, _, cl, _)
+  | Tclass_let (_, _, _, cl)
+  | Tclass_apply (cl, _)
+  | Tclass_constraint (cl, _, _, _) -> get_class_meths cl
+
 (*
    XXX Il devrait etre peu couteux d'ecrire des classes :
      class c x y = d e f
@@ -476,8 +486,8 @@ let rec builtin_meths self env env2 body =
     | _ -> raise Not_found
   in
   match body with
-  | Llet(Alias, s', Lvar s, body) when List.mem s self ->
-      builtin_meths self env env2 body
+  | Llet(_, s', Lvar s, body) when List.mem s self ->
+      builtin_meths (s'::self) env env2 body
   | Lapply(f, [arg]) when const_path f ->
       let s, args = conv arg in ("app_"^s, f :: args)
   | Lapply(f, [arg; p]) when const_path f && const_path p ->
@@ -502,7 +512,7 @@ let rec builtin_meths self env env2 body =
         | Lprim(Parraysetu _, [Lvar s; Lvar n; Lvar x'])
           when Ident.same x x' && List.mem s self ->
             ("set_var", [Lvar n])
-        | Llet(Alias, s', Lvar s, body) when List.mem s self ->
+        | Llet(_, s', Lvar s, body) when List.mem s self ->
             enter (s'::self) body
         | _ -> raise Not_found
       in enter self body
@@ -577,11 +587,18 @@ let transl_class ids cl_id arity pub_meths cl =
   let cl_env, llets = build_class_lets cl in
   let new_ids = if top then [] else Env.diff top_env cl_env in
   let env2 = Ident.create "env" in
+  let meth_ids = get_class_meths cl in
   let subst env lam i0 new_ids' =
     let fv = free_variables lam in
     let fv = List.fold_right IdentSet.remove !new_ids' fv in
-    let fv =
-      IdentSet.filter (fun id -> List.mem id new_ids) fv in
+    (* IdentSet.iter
+      (fun id ->
+        if not (List.mem id new_ids) then prerr_endline (Ident.name id))
+      fv; *)
+    let fv = IdentSet.filter (fun id -> List.mem id new_ids) fv in
+    (* need to handle methods specially (PR#3576) *)
+    let fm = IdentSet.diff (free_methods lam) meth_ids in
+    let fv = IdentSet.union fv fm in
     new_ids' := !new_ids' @ IdentSet.elements fv;
     let i = ref (i0-1) in
     List.fold_left
index 0ddbeb511af346fe1493e125df2effab0a28017f..cf8d5b8568c7be00ed1380b58612688b49662091 100644 (file)
@@ -10,7 +10,7 @@
 (*                                                                     *)
 (***********************************************************************)
 
-(* $Id: translcore.ml,v 1.96 2004/05/26 11:10:50 garrigue Exp $ *)
+(* $Id: translcore.ml,v 1.96.2.1 2005/06/12 13:59:25 xleroy Exp $ *)
 
 (* Translation from typed abstract syntax to lambda terms,
    for the core language *)
@@ -53,7 +53,8 @@ let comparisons_table = create_hashtable 11 [
               prim_native_name = ""; prim_native_float = false},
        Pbintcomp(Pnativeint, Ceq),
        Pbintcomp(Pint32, Ceq),
-       Pbintcomp(Pint64, Ceq));
+       Pbintcomp(Pint64, Ceq),
+       true);
   "%notequal",
       (Pccall{prim_name = "caml_notequal"; prim_arity = 2; prim_alloc = true;
               prim_native_name = ""; prim_native_float = false},
@@ -64,7 +65,8 @@ let comparisons_table = create_hashtable 11 [
               prim_native_float = false},
        Pbintcomp(Pnativeint, Cneq),
        Pbintcomp(Pint32, Cneq),
-       Pbintcomp(Pint64, Cneq));
+       Pbintcomp(Pint64, Cneq),
+       true);
   "%lessthan",
       (Pccall{prim_name = "caml_lessthan"; prim_arity = 2; prim_alloc = true;
               prim_native_name = ""; prim_native_float = false},
@@ -75,7 +77,8 @@ let comparisons_table = create_hashtable 11 [
               prim_native_float = false},
        Pbintcomp(Pnativeint, Clt),
        Pbintcomp(Pint32, Clt),
-       Pbintcomp(Pint64, Clt));
+       Pbintcomp(Pint64, Clt),
+       false);
   "%greaterthan",
       (Pccall{prim_name = "caml_greaterthan"; prim_arity = 2; prim_alloc = true;
               prim_native_name = ""; prim_native_float = false},
@@ -86,7 +89,8 @@ let comparisons_table = create_hashtable 11 [
               prim_native_float = false},
        Pbintcomp(Pnativeint, Cgt),
        Pbintcomp(Pint32, Cgt),
-       Pbintcomp(Pint64, Cgt));
+       Pbintcomp(Pint64, Cgt),
+       false);
   "%lessequal",
       (Pccall{prim_name = "caml_lessequal"; prim_arity = 2; prim_alloc = true;
               prim_native_name = ""; prim_native_float = false},
@@ -97,7 +101,8 @@ let comparisons_table = create_hashtable 11 [
               prim_native_float = false},
        Pbintcomp(Pnativeint, Cle),
        Pbintcomp(Pint32, Cle),
-       Pbintcomp(Pint64, Cle));
+       Pbintcomp(Pint64, Cle),
+       false);
   "%greaterequal",
       (Pccall{prim_name = "caml_greaterequal"; prim_arity = 2;
               prim_alloc = true;
@@ -109,7 +114,8 @@ let comparisons_table = create_hashtable 11 [
               prim_native_float = false},
        Pbintcomp(Pnativeint, Cge),
        Pbintcomp(Pint32, Cge),
-       Pbintcomp(Pint64, Cge));
+       Pbintcomp(Pint64, Cge),
+       false);
   "%compare",
       (Pccall{prim_name = "caml_compare"; prim_arity = 2; prim_alloc = true;
               prim_native_name = ""; prim_native_float = false},
@@ -130,7 +136,8 @@ let comparisons_table = create_hashtable 11 [
               prim_native_float = false},
        Pccall{prim_name = "caml_int64_compare"; prim_arity = 2;
               prim_alloc = false; prim_native_name = "";
-              prim_native_float = false})
+              prim_native_float = false},
+       false)
 ]
 
 let primitives_table = create_hashtable 57 [
@@ -262,12 +269,15 @@ let prim_obj_dup =
 let transl_prim prim args =
   try
     let (gencomp, intcomp, floatcomp, stringcomp,
-         nativeintcomp, int32comp, int64comp) =
+         nativeintcomp, int32comp, int64comp,
+         simplify_constant_constructor) =
       Hashtbl.find comparisons_table prim.prim_name in
     begin match args with
-      [arg1; {exp_desc = Texp_construct({cstr_tag = Cstr_constant _}, _)}] ->
+      [arg1; {exp_desc = Texp_construct({cstr_tag = Cstr_constant _}, _)}]
+      when simplify_constant_constructor ->
         intcomp
-    | [{exp_desc = Texp_construct({cstr_tag = Cstr_constant _}, _)}; arg2] ->
+    | [{exp_desc = Texp_construct({cstr_tag = Cstr_constant _}, _)}; arg2]
+      when simplify_constant_constructor ->
         intcomp
     | [arg1; arg2] when has_base_type arg1 Predef.path_int
                      || has_base_type arg1 Predef.path_char ->
@@ -313,7 +323,7 @@ let transl_prim prim args =
 let transl_primitive p =
   let prim =
     try
-      let (gencomp, _, _, _, _, _, _) =
+      let (gencomp, _, _, _, _, _, _, _) =
         Hashtbl.find comparisons_table p.prim_name in
       gencomp
     with Not_found ->
diff --git a/byterun/CVS/Entries b/byterun/CVS/Entries
deleted file mode 100644 (file)
index 3f5c5a1..0000000
+++ /dev/null
@@ -1,91 +0,0 @@
-/.cvsignore/1.10.18.1/Fri Jul 16 16:11:33 2004//Tocaml3083
-/.depend/1.47.6.1/Fri Jul  9 15:55:51 2004//Tocaml3083
-/Makefile/1.48.4.2/Fri Aug 20 15:11:36 2004//Tocaml3083
-/Makefile.nt/1.36.4.1/Fri Aug 20 15:11:36 2004//Tocaml3083
-/alloc.c/1.28/Thu Jan  1 16:42:34 2004//Tocaml3083
-/alloc.h/1.17/Fri Jan  2 19:23:18 2004//Tocaml3083
-/array.c/1.22/Fri Jan  2 19:23:19 2004//Tocaml3083
-/backtrace.c/1.20/Fri Jan  2 19:23:19 2004//Tocaml3083
-/backtrace.h/1.6/Wed Dec 31 14:20:35 2003//Tocaml3083
-/callback.c/1.22/Mon Apr 26 12:02:07 2004//Tocaml3083
-/callback.h/1.13/Mon Jan  5 20:25:58 2004//Tocaml3083
-/compact.c/1.22.6.1/Wed Mar  9 15:49:09 2005//Tocaml3083
-/compact.h/1.7/Wed Dec 31 14:20:35 2003//Tocaml3083
-/compare.c/1.31.6.1/Wed Jul  7 16:48:46 2004//Tocaml3083
-/compatibility.h/1.13/Mon Jun 14 14:28:30 2004//Tocaml3083
-/config.h/1.36/Mon Apr 19 07:55:28 2004//Tocaml3083
-/custom.c/1.14/Mon Jan  5 20:25:58 2004//Tocaml3083
-/custom.h/1.11.6.1/Tue Feb 22 14:33:36 2005//Tocaml3083
-/debugger.c/1.28/Fri Jan  2 19:23:20 2004//Tocaml3083
-/debugger.h/1.9/Thu Jan  1 16:42:35 2004//Tocaml3083
-/dynlink.c/1.14/Sun Feb 22 15:07:51 2004//Tocaml3083
-/dynlink.h/1.8/Sun Feb 22 15:07:51 2004//Tocaml3083
-/exec.h/1.14/Tue Jun  1 12:36:34 2004//Tocaml3083
-/extern.c/1.56/Sat Jun 19 16:02:07 2004//Tocaml3083
-/fail.c/1.29/Mon May 17 17:09:59 2004//Tocaml3083
-/fail.h/1.25/Fri Jan  2 19:23:20 2004//Tocaml3083
-/finalise.c/1.15.2.2/Wed Mar  9 15:49:09 2005//Tocaml3083
-/finalise.h/1.5/Fri Jan  2 19:23:21 2004//Tocaml3083
-/fix_code.c/1.31/Wed May 26 11:10:51 2004//Tocaml3083
-/fix_code.h/1.17/Fri Jan  2 19:23:21 2004//Tocaml3083
-/floats.c/1.46/Fri Jan  9 15:33:31 2004//Tocaml3083
-/freelist.c/1.16/Fri Jan  2 19:23:21 2004//Tocaml3083
-/freelist.h/1.12/Fri Jan  2 19:23:21 2004//Tocaml3083
-/gc.h/1.14/Mon Dec 15 18:10:46 2003//Tocaml3083
-/gc_ctrl.c/1.47.4.2/Wed Mar  9 15:49:09 2005//Tocaml3083
-/gc_ctrl.h/1.15/Fri Jan  2 19:23:22 2004//Tocaml3083
-/globroots.c/1.7/Mon Jan  5 20:25:58 2004//Tocaml3083
-/globroots.h/1.3/Mon Dec 15 18:10:47 2003//Tocaml3083
-/hash.c/1.22/Fri Jan  2 19:23:22 2004//Tocaml3083
-/instrtrace.c/1.19/Fri Apr 23 23:16:15 2004//Tocaml3083
-/instrtrace.h/1.8/Thu Apr 22 09:48:04 2004//Tocaml3083
-/instruct.h/1.20/Wed May 26 11:10:51 2004//Tocaml3083
-/int64_emul.h/1.3/Mon Dec 15 18:10:47 2003//Tocaml3083
-/int64_format.h/1.2/Mon Dec 15 18:10:47 2003//Tocaml3083
-/int64_native.h/1.4/Mon Dec 15 18:10:47 2003//Tocaml3083
-/intern.c/1.58.2.1/Wed Nov  3 19:47:20 2004//Tocaml3083
-/interp.c/1.90/Sat Jun 12 10:40:52 2004//Tocaml3083
-/interp.h/1.13/Mon Apr 26 14:08:22 2004//Tocaml3083
-/intext.h/1.30/Fri Jan  2 19:23:23 2004//Tocaml3083
-/ints.c/1.47/Fri Jan  2 19:23:23 2004//Tocaml3083
-/io.c/1.68/Thu Jan  8 22:28:48 2004//Tocaml3083
-/io.h/1.25/Thu Jan  1 16:42:36 2004//Tocaml3083
-/lexing.c/1.27/Thu Jan  1 16:42:36 2004//Tocaml3083
-/main.c/1.36/Thu Jan  8 22:28:48 2004//Tocaml3083
-/major_gc.c/1.54.2.1/Sat Jul  3 10:00:59 2004//Tocaml3083
-/major_gc.h/1.20/Mon Jun 14 15:17:43 2004//Tocaml3083
-/md5.c/1.18/Thu Jan  1 16:42:36 2004//Tocaml3083
-/md5.h/1.12/Wed Dec 31 14:20:37 2003//Tocaml3083
-/memory.c/1.40.2.1/Wed Dec 22 16:12:16 2004//Tocaml3083
-/memory.h/1.50.2.2/Mon Nov 22 11:16:03 2004//Tocaml3083
-/meta.c/1.31/Mon Apr 26 14:09:01 2004//Tocaml3083
-/minor_gc.c/1.42/Mon Jan  5 20:25:59 2004//Tocaml3083
-/minor_gc.h/1.17/Wed Dec 31 14:20:37 2003//Tocaml3083
-/misc.c/1.26/Thu Apr  1 13:07:57 2004//Tocaml3083
-/misc.h/1.30/Mon May 17 17:09:59 2004//Tocaml3083
-/mlvalues.h/1.48.6.1/Wed Jul  7 01:14:43 2004//Tocaml3083
-/obj.c/1.34.2.3/Tue Jan  4 16:29:27 2005//Tocaml3083
-/osdeps.h/1.9/Fri Jan  2 19:23:25 2004//Tocaml3083
-/parsing.c/1.20/Mon May 17 17:09:59 2004//Tocaml3083
-/prims.h/1.10/Sun Feb 22 15:07:51 2004//Tocaml3083
-/printexc.c/1.16/Thu Jan  8 22:28:48 2004//Tocaml3083
-/printexc.h/1.5/Thu Jan  1 16:42:37 2004//Tocaml3083
-/reverse.h/1.12/Mon Dec 15 18:10:48 2003//Tocaml3083
-/roots.c/1.28/Mon Jan  5 20:25:59 2004//Tocaml3083
-/roots.h/1.18/Thu Jan  1 16:42:37 2004//Tocaml3083
-/signals.c/1.46/Thu Jan  8 22:28:48 2004//Tocaml3083
-/signals.h/1.21/Thu Jan  1 16:42:37 2004//Tocaml3083
-/stacks.c/1.21/Thu Jan  1 16:42:37 2004//Tocaml3083
-/stacks.h/1.13/Thu Jan  1 16:42:37 2004//Tocaml3083
-/startup.c/1.64.4.1/Sat Jul  3 10:01:00 2004//Tocaml3083
-/startup.h/1.5/Sun Feb 22 15:07:51 2004//Tocaml3083
-/str.c/1.26/Mon May 17 17:09:59 2004//Tocaml3083
-/sys.c/1.76/Tue May 18 08:50:22 2004//Tocaml3083
-/sys.h/1.15/Tue Dec 16 18:09:43 2003//Tocaml3083
-/terminfo.c/1.23/Thu Jan  1 16:42:38 2004//Tocaml3083
-/ui.h/1.5/Mon Dec 15 18:10:49 2003//Tocaml3083
-/unix.c/1.21.6.1/Wed Aug 18 05:01:22 2004//Tocaml3083
-/weak.c/1.24/Thu Jan  1 16:42:38 2004//Tocaml3083
-/weak.h/1.7/Thu Jan  1 16:42:38 2004//Tocaml3083
-/win32.c/1.23.6.1/Mon Nov  8 13:08:00 2004//Tocaml3083
-D
diff --git a/byterun/CVS/Repository b/byterun/CVS/Repository
deleted file mode 100644 (file)
index 80cad38..0000000
+++ /dev/null
@@ -1 +0,0 @@
-csl/byterun
diff --git a/byterun/CVS/Root b/byterun/CVS/Root
deleted file mode 100644 (file)
index c83f52f..0000000
+++ /dev/null
@@ -1 +0,0 @@
-:ext:yquem.inria.fr:/net/yquem/devel/caml/repository
diff --git a/byterun/CVS/Tag b/byterun/CVS/Tag
deleted file mode 100644 (file)
index deaa3ee..0000000
+++ /dev/null
@@ -1 +0,0 @@
-Nocaml3083
index 01c486fc1f6738ea172764c9c685bd64d0d769c6..5119eabb2902f82d5a9303a944ea19666ff3b6ba 100644 (file)
@@ -3,8 +3,8 @@ Camlp4 Version 3.08.2
 - [07 Oct 04] Changes in the interfaces plexer.mli and pcaml.mli:
    - plexer.mli: introduced a new lexer building function `make_lexer',
      similar to `gmake', but returning a triple of references in addition
-     (holding respectively the character number of the beginning of the
-     current line, the current line number and the name of the file being
+     (holding respectively the character number of the beginning of the
+     current line, the current line number and the name of the file being
      parsed).
    - pcaml.mli: a new value `position'. A global reference to a triple like
      the one mentioned above.
diff --git a/camlp4/CVS/Entries b/camlp4/CVS/Entries
deleted file mode 100644 (file)
index c569647..0000000
+++ /dev/null
@@ -1,4 +0,0 @@
-/CHANGES/1.48.2.7/Mon Nov 22 16:25:38 2004//Tocaml3083
-/ICHANGES/1.3/Wed May 12 15:22:36 2004//Tocaml3083
-/Makefile/1.22.2.3/Wed Jul  7 16:41:58 2004//Tocaml3083
-D
diff --git a/camlp4/CVS/Entries.Log b/camlp4/CVS/Entries.Log
deleted file mode 100644 (file)
index dbf5e86..0000000
+++ /dev/null
@@ -1,15 +0,0 @@
-A D/boot////
-A D/camlp4////
-A D/compile////
-A D/config////
-A D/etc////
-A D/lib////
-A D/man////
-A D/meta////
-A D/ocaml_src////
-A D/ocaml_stuff////
-A D/ocpp////
-A D/odyl////
-A D/tools////
-A D/top////
-A D/unmaintained////
diff --git a/camlp4/CVS/Repository b/camlp4/CVS/Repository
deleted file mode 100644 (file)
index af2ca2d..0000000
+++ /dev/null
@@ -1 +0,0 @@
-csl/camlp4
diff --git a/camlp4/CVS/Root b/camlp4/CVS/Root
deleted file mode 100644 (file)
index c83f52f..0000000
+++ /dev/null
@@ -1 +0,0 @@
-:ext:yquem.inria.fr:/net/yquem/devel/caml/repository
diff --git a/camlp4/CVS/Tag b/camlp4/CVS/Tag
deleted file mode 100644 (file)
index deaa3ee..0000000
+++ /dev/null
@@ -1 +0,0 @@
-Nocaml3083
diff --git a/camlp4/boot/CVS/Entries b/camlp4/boot/CVS/Entries
deleted file mode 100644 (file)
index bc35430..0000000
+++ /dev/null
@@ -1,2 +0,0 @@
-/.cvsignore/1.2/Fri Sep  7 08:09:27 2001//Tocaml3083
-D
diff --git a/camlp4/boot/CVS/Repository b/camlp4/boot/CVS/Repository
deleted file mode 100644 (file)
index 4698146..0000000
+++ /dev/null
@@ -1 +0,0 @@
-csl/camlp4/boot
diff --git a/camlp4/boot/CVS/Root b/camlp4/boot/CVS/Root
deleted file mode 100644 (file)
index c83f52f..0000000
+++ /dev/null
@@ -1 +0,0 @@
-:ext:yquem.inria.fr:/net/yquem/devel/caml/repository
diff --git a/camlp4/boot/CVS/Tag b/camlp4/boot/CVS/Tag
deleted file mode 100644 (file)
index deaa3ee..0000000
+++ /dev/null
@@ -1 +0,0 @@
-Nocaml3083
diff --git a/camlp4/camlp4/CVS/Entries b/camlp4/camlp4/CVS/Entries
deleted file mode 100644 (file)
index 964f075..0000000
+++ /dev/null
@@ -1,16 +0,0 @@
-/.cvsignore/1.2/Thu Jul 10 12:28:14 2003//Tocaml3083
-/.depend/1.15.2.2/Tue Feb 22 14:33:36 2005//Tocaml3083
-/Makefile/1.20.2.8/Mon Jan 31 10:38:53 2005//Tocaml3083
-/argl.ml/1.14.2.2/Thu Oct  7 09:18:13 2004//Tocaml3083
-/ast2pt.ml/1.31/Tue May 25 11:38:31 2004//Tocaml3083
-/ast2pt.mli/1.4/Wed May 12 15:22:38 2004//Tocaml3083
-/mLast.mli/1.17/Wed May 19 15:00:45 2004//Tocaml3083
-/pcaml.ml/1.13.2.4/Thu Oct  7 09:18:13 2004//Tocaml3083
-/pcaml.mli/1.7.2.4/Thu Oct  7 09:18:13 2004//Tocaml3083
-/quotation.ml/1.3/Fri Jul 19 14:53:44 2002//Tocaml3083
-/quotation.mli/1.2/Fri Jul 19 14:53:44 2002//Tocaml3083
-/reloc.ml/1.16/Wed May 19 15:00:45 2004//Tocaml3083
-/reloc.mli/1.3.2.2/Thu Jul  8 08:50:12 2004//Tocaml3083
-/spretty.ml/1.3/Tue Sep 23 18:06:18 2003//Tocaml3083
-/spretty.mli/1.2/Fri Jul 19 14:53:44 2002//Tocaml3083
-D
diff --git a/camlp4/camlp4/CVS/Repository b/camlp4/camlp4/CVS/Repository
deleted file mode 100644 (file)
index 1b6ed29..0000000
+++ /dev/null
@@ -1 +0,0 @@
-csl/camlp4/camlp4
diff --git a/camlp4/camlp4/CVS/Root b/camlp4/camlp4/CVS/Root
deleted file mode 100644 (file)
index c83f52f..0000000
+++ /dev/null
@@ -1 +0,0 @@
-:ext:yquem.inria.fr:/net/yquem/devel/caml/repository
diff --git a/camlp4/camlp4/CVS/Tag b/camlp4/camlp4/CVS/Tag
deleted file mode 100644 (file)
index deaa3ee..0000000
+++ /dev/null
@@ -1 +0,0 @@
-Nocaml3083
index e9eba00168b4938afcc695cd357afc541cda7ef6..75e48a919be6b84063d2926996429b93242710e4 100644 (file)
@@ -10,7 +10,7 @@
 (*                                                                     *)
 (***********************************************************************)
 
-(* $Id: ast2pt.ml,v 1.31 2004/05/25 11:38:31 mauny Exp $ *)
+(* $Id: ast2pt.ml,v 1.31.2.1 2005/06/01 18:22:24 mauny Exp $ *)
 
 open Stdpp;
 open MLast;
@@ -469,6 +469,8 @@ value rec patt =
   | PaRec loc lpl -> mkpat loc (Ppat_record (List.map mklabpat lpl))
   | PaStr loc s ->
       mkpat loc (Ppat_constant (Const_string (string_of_string_token loc s)))
+  | PaTup loc [] -> error loc "empty tuple pattern"
+  | PaTup loc [_] -> error loc "singleton tuple pattern"
   | PaTup loc pl -> mkpat loc (Ppat_tuple (List.map patt pl))
   | PaTyc loc p t -> mkpat loc (Ppat_constraint (patt p) (ctyp t))
   | PaTyp loc sl -> mkpat loc (Ppat_type (long_id_of_string_list loc sl))
@@ -678,6 +680,8 @@ value rec expr =
   | ExStr loc s ->
       mkexp loc (Pexp_constant (Const_string (string_of_string_token loc s)))
   | ExTry loc e pel -> mkexp loc (Pexp_try (expr e) (List.map mkpwe pel))
+  | ExTup loc [] -> error loc "empty tuple"
+  | ExTup loc [e] -> error loc "singleton tuple"
   | ExTup loc el -> mkexp loc (Pexp_tuple (List.map expr el))
   | ExTyc loc e t -> mkexp loc (Pexp_constraint (expr e) (Some (ctyp t)) None)
   | ExUid loc s ->
index bc4f6baa296d7914788aeb40d6595bd75516d095..1571daea3bcc3b91d546a0b0ceccc8b6a6d132fd 100644 (file)
@@ -10,7 +10,7 @@
 (*                                                                     *)
 (***********************************************************************)
 
-(* $Id: pcaml.ml,v 1.13.2.4 2004/10/07 09:18:13 mauny Exp $ *)
+(* $Id: pcaml.ml,v 1.13.2.5 2005/04/14 07:22:06 mauny Exp $ *)
 
 value version = Sys.ocaml_version;
 
@@ -99,7 +99,7 @@ value expand_quotation loc expander shift name str =
        try expander str with
        [ Stdpp.Exc_located loc exc ->
            let exc1 = Qerror name Expanding exc in
-           raise (Stdpp.Exc_located (Reloc.adjust_loc shift (Reloc.linearize loc)) exc1)
+           raise (Stdpp.Exc_located (Reloc.adjust_loc shift loc) exc1)
        | exc ->
            let exc1 = Qerror name Expanding exc in
            raise (Stdpp.Exc_located loc exc1) ])
index 913fdb466661132d61ff2db14f8e2921ec2881fa..ee446802799e7a020b199e29938e9e4cd7bd9ea7 100644 (file)
@@ -10,7 +10,7 @@
 (*                                                                     *)
 (***********************************************************************)
 
-(* $Id: reloc.ml,v 1.16 2004/05/19 15:00:45 mauny Exp $ *)
+(* $Id: reloc.ml,v 1.16.2.1 2005/04/14 07:22:06 mauny Exp $ *)
 
 open MLast;
 
@@ -107,19 +107,13 @@ value check_location msg ((bp, ep) as loc) =
    (ok, loc)
 ;
 
-(* Change a location into linear positions *)
-value linearize (bp, ep) =
-      ( { (bp) with Lexing.pos_lnum = 1; Lexing.pos_bol = 0 },
-        { (ep) with Lexing.pos_lnum = 1; Lexing.pos_bol = 0 })
-;
-
 value shift_pos n p =
    { (p) with Lexing.pos_cnum = p.Lexing.pos_cnum + n }
 ;
 
 value zero_loc =
-   { (Lexing.dummy_pos) with Lexing.pos_cnum = 0; Lexing.pos_lnum = 0 };
-
+   { (Lexing.dummy_pos) with Lexing.pos_cnum = 0; Lexing.pos_lnum = 0 }
+;
 
 value adjust_pos globpos local_pos =
 {
@@ -147,7 +141,7 @@ value rec patt floc sh =
     [ PaAcc loc x1 x2 -> let nloc = floc loc in PaAcc nloc (self x1) (self x2)
     | PaAli loc x1 x2 -> let nloc = floc loc in PaAli nloc (self x1) (self x2)
     | PaAnt loc x1 -> (* Note that antiquotations are parsed by the OCaml parser, passing line numbers and begs of lines *)
-        patt (fun lloc -> adjust_loc (adjust_pos sh (fst loc)) (linearize lloc)) zero_loc x1
+        patt (fun lloc -> adjust_loc (adjust_pos sh (fst loc)) lloc) zero_loc x1
     | PaAny loc -> let nloc = floc loc in PaAny nloc
     | PaApp loc x1 x2 -> let nloc = floc loc in PaApp nloc (self x1) (self x2)
     | PaArr loc x1 -> let nloc = floc loc in PaArr nloc (List.map self x1)
@@ -179,7 +173,7 @@ and expr floc sh =
     fun
     [ ExAcc loc x1 x2 -> let nloc = floc loc in ExAcc nloc (self x1) (self x2)
     | ExAnt loc x1 -> (* Note that antiquotations are parsed by the OCaml parser, passing line numbers and begs of lines *)
-        expr (fun lloc -> (adjust_loc (adjust_pos sh (fst loc)) (linearize lloc)))
+        expr (fun lloc -> (adjust_loc (adjust_pos sh (fst loc)) lloc))
              zero_loc x1
     | ExApp loc x1 x2 -> let nloc = floc loc in ExApp nloc (self x1) (self x2)
     | ExAre loc x1 x2 -> let nloc = floc loc in ExAre nloc (self x1) (self x2)
index d4be634ffe75923b1706f4f75c065365c99afcf5..c3e73632ca29825999ff2351dd43ebcaf747af23 100644 (file)
 (*                                                                     *)
 (***********************************************************************)
 
-(* $Id: reloc.mli,v 1.3.2.2 2004/07/08 08:50:12 mauny Exp $ *)
+(* $Id: reloc.mli,v 1.3.2.3 2005/04/14 07:22:06 mauny Exp $ *)
 
 value zero_loc : Lexing.position;
 value shift_pos : int -> Lexing.position -> Lexing.position;
 value adjust_loc : Lexing.position -> MLast.loc -> MLast.loc;
-value linearize : MLast.loc -> MLast.loc;
 
 value ctyp :           (MLast.loc -> MLast.loc) -> 'a -> MLast.ctyp -> MLast.ctyp;
 value row_field :      (MLast.loc -> MLast.loc) -> 'a -> MLast.row_field -> MLast.row_field;
diff --git a/camlp4/compile/CVS/Entries b/camlp4/compile/CVS/Entries
deleted file mode 100644 (file)
index d9499fc..0000000
+++ /dev/null
@@ -1,8 +0,0 @@
-/.cvsignore/1.1/Tue Nov  6 09:01:54 2001//Tocaml3083
-/.depend/1.6.4.4/Tue Feb 22 14:33:36 2005//Tocaml3083
-/Makefile/1.8.4.2/Fri Feb 18 09:11:13 2005//Tocaml3083
-/comp_head.ml/1.3.6.1/Fri Feb 18 09:11:13 2005//Tocaml3083
-/comp_trail.ml/1.2/Thu Oct 30 09:52:54 2003//Tocaml3083
-/compile.ml/1.13/Wed May 12 15:22:39 2004//Tocaml3083
-/compile.sh/1.5/Fri Aug 29 12:15:14 2003//Tocaml3083
-D
diff --git a/camlp4/compile/CVS/Repository b/camlp4/compile/CVS/Repository
deleted file mode 100644 (file)
index 181b8d0..0000000
+++ /dev/null
@@ -1 +0,0 @@
-csl/camlp4/compile
diff --git a/camlp4/compile/CVS/Root b/camlp4/compile/CVS/Root
deleted file mode 100644 (file)
index c83f52f..0000000
+++ /dev/null
@@ -1 +0,0 @@
-:ext:yquem.inria.fr:/net/yquem/devel/caml/repository
diff --git a/camlp4/compile/CVS/Tag b/camlp4/compile/CVS/Tag
deleted file mode 100644 (file)
index deaa3ee..0000000
+++ /dev/null
@@ -1 +0,0 @@
-Nocaml3083
index bf2bcef6a3891efc65c2c373818c046fc3a80128..3b31b24d465a80ec85f851bc7e9212ba8d18021b 100644 (file)
@@ -1,4 +1,4 @@
-# $Id: Makefile,v 1.8.4.2 2005/02/18 09:11:13 mauny Exp $
+# $Id: Makefile,v 1.8.4.3 2005/06/22 15:46:42 doligez Exp $
 
 include ../config/Makefile
 
@@ -26,7 +26,8 @@ pa_$D_fast.ml: comp_head.ml $D_fast.ml comp_trail.ml
        cat $(SRC) | sed -e "s/Plexer.make_lexer *()/P.lexer_pos/" -e "/EXTEND/,/END/d" -e "/Grammar.Entry.of_parser/d" -e "/Grammar.Entry.gcreate/d" | cat comp_head.ml - $D_fast.ml comp_trail.ml > pa_$D_fast.ml
 
 $D_fast.ml: compile.cmo $(SRC)
-       OTOP=$(OTOP) EXE=$(EXE) ./compile.sh $(COMP_OPT) $(SRC) > $D_fast.ml
+       echo '(* camlp4r *)' >$D_fast.ml
+       OTOP=$(OTOP) EXE=$(EXE) ./compile.sh $(COMP_OPT) $(SRC) >> $D_fast.ml
 
 install:
        if test -f camlp4$D.fast.opt; then cp camlp4$D.fast.opt $(BINDIR)/camlp4$D.opt$(EXE); fi
diff --git a/camlp4/config/CVS/Entries b/camlp4/config/CVS/Entries
deleted file mode 100644 (file)
index f998072..0000000
+++ /dev/null
@@ -1,6 +0,0 @@
-/.cvsignore/1.1/Fri Sep  7 07:14:11 2001//Tocaml3083
-/Makefile-nt.cnf/1.6/Thu Aug 28 18:34:47 2003//Tocaml3083
-/Makefile.tpl/1.4.10.6/Sat Jul  3 16:53:45 2004//Tocaml3083
-/config.mpw/1.1/Thu Dec 13 13:59:23 2001//Tocaml3083
-/configure_batch/1.5.4.3/Fri Jul 30 14:59:15 2004//Tocaml3083
-D
diff --git a/camlp4/config/CVS/Repository b/camlp4/config/CVS/Repository
deleted file mode 100644 (file)
index 4d1e746..0000000
+++ /dev/null
@@ -1 +0,0 @@
-csl/camlp4/config
diff --git a/camlp4/config/CVS/Root b/camlp4/config/CVS/Root
deleted file mode 100644 (file)
index c83f52f..0000000
+++ /dev/null
@@ -1 +0,0 @@
-:ext:yquem.inria.fr:/net/yquem/devel/caml/repository
diff --git a/camlp4/config/CVS/Tag b/camlp4/config/CVS/Tag
deleted file mode 100644 (file)
index deaa3ee..0000000
+++ /dev/null
@@ -1 +0,0 @@
-Nocaml3083
diff --git a/camlp4/etc/CVS/Entries b/camlp4/etc/CVS/Entries
deleted file mode 100644 (file)
index defc39c..0000000
+++ /dev/null
@@ -1,27 +0,0 @@
-/.cvsignore/1.3/Thu Jul 10 12:28:16 2003//Tocaml3083
-/.depend/1.13.2.4/Tue Feb 22 14:33:36 2005//Tocaml3083
-/Makefile/1.20.2.2/Wed Jul  7 16:22:23 2004//Tocaml3083
-/mkcamlp4.mpw.tpl/1.2/Thu Jul 10 12:28:18 2003//Tocaml3083
-/mkcamlp4.sh.tpl/1.7/Tue Sep 23 18:17:35 2003//Tocaml3083
-/pa_extfold.ml/1.1/Fri Jul 19 14:53:45 2002//Tocaml3083
-/pa_extfun.ml/1.2/Fri Jul 19 14:53:45 2002//Tocaml3083
-/pa_fstream.ml/1.3/Fri Jul 19 14:53:45 2002//Tocaml3083
-/pa_ifdef.ml/1.1.6.1/Mon Jul  5 09:48:42 2004//Tocaml3083
-/pa_o.ml/1.58.2.4/Mon Nov 29 14:16:46 2004//Tocaml3083
-/pa_oop.ml/1.4/Wed May 12 15:22:40 2004//Tocaml3083
-/pa_op.ml/1.6/Thu Jul 10 12:28:21 2003//Tocaml3083
-/pa_ru.ml/1.7/Thu Jul 10 12:28:21 2003//Tocaml3083
-/parserify.ml/1.2/Wed May 12 15:22:40 2004//Tocaml3083
-/parserify.mli/1.1/Thu Jul 10 12:28:22 2003//Tocaml3083
-/pr_depend.ml/1.13/Wed Jul 23 22:26:17 2003//Tocaml3083
-/pr_extend.ml/1.13/Wed May 12 15:22:40 2004//Tocaml3083
-/pr_extfun.ml/1.3/Wed May 12 15:22:40 2004//Tocaml3083
-/pr_null.ml/1.2/Fri Jul 19 14:53:46 2002//Tocaml3083
-/pr_o.ml/1.45/Wed May 12 21:33:45 2004//Tocaml3083
-/pr_op.ml/1.4/Fri Jul 19 14:53:47 2002//Tocaml3083
-/pr_op_main.ml/1.2/Wed May 12 15:22:40 2004//Tocaml3083
-/pr_r.ml/1.48/Wed May 12 15:22:41 2004//Tocaml3083
-/pr_rp.ml/1.5/Wed May 12 15:22:41 2004//Tocaml3083
-/pr_rp_main.ml/1.2/Wed May 12 15:22:41 2004//Tocaml3083
-/q_phony.ml/1.4/Wed May 12 15:22:41 2004//Tocaml3083
-D
diff --git a/camlp4/etc/CVS/Repository b/camlp4/etc/CVS/Repository
deleted file mode 100644 (file)
index 1acdabf..0000000
+++ /dev/null
@@ -1 +0,0 @@
-csl/camlp4/etc
diff --git a/camlp4/etc/CVS/Root b/camlp4/etc/CVS/Root
deleted file mode 100644 (file)
index c83f52f..0000000
+++ /dev/null
@@ -1 +0,0 @@
-:ext:yquem.inria.fr:/net/yquem/devel/caml/repository
diff --git a/camlp4/etc/CVS/Tag b/camlp4/etc/CVS/Tag
deleted file mode 100644 (file)
index deaa3ee..0000000
+++ /dev/null
@@ -1 +0,0 @@
-Nocaml3083
index b23a63fd619259ea27978f75e9eef148fef5e9d4..a48813d0d5701dbccb9af60abca5deb3a5d886f9 100644 (file)
@@ -10,7 +10,7 @@
 (*                                                                     *)
 (***********************************************************************)
 
-(* $Id: pa_o.ml,v 1.58.2.4 2004/11/29 14:16:46 mauny Exp $ *)
+(* $Id: pa_o.ml,v 1.58.2.5 2005/06/02 10:40:32 mauny Exp $ *)
 
 open Stdpp;
 open Pcaml;
@@ -720,7 +720,8 @@ EXTEND
     [ RIGHTA
       [ p = patt LEVEL "simple"; e = SELF -> <:expr< fun $p$ -> $e$ >>
       | "="; e = expr -> <:expr< $e$ >>
-      | ":"; t = ctyp; "="; e = expr -> <:expr< ($e$ : $t$) >> ] ]
+      | ":"; t = ctyp; "="; e = expr -> <:expr< ($e$ : $t$) >> 
+      | ":>"; t = ctyp; "="; e = expr -> <:expr< ($e$ :> $t$) >> ] ]
   ;
   match_case:
     [ [ x1 = patt; w = OPT [ "when"; e = expr -> e ]; "->"; x2 = expr ->
index c83571faadb80acd90d8bc5294ae44f7b8f7120c..ad042ea6d264cb2e7294841270bd75808d4c31ee 100644 (file)
@@ -10,7 +10,7 @@
 (*                                                                     *)
 (***********************************************************************)
 
-(* $Id: pr_o.ml,v 1.45 2004/05/12 21:33:45 mauny Exp $ *)
+(* $Id: pr_o.ml,v 1.45.2.2 2005/06/29 13:37:13 mauny Exp $ *)
 
 open Pcaml;
 open Spretty;
@@ -118,9 +118,10 @@ value has_special_chars v =
 ;
 
 value var_escaped v =
-  if v = "" then "$lid:\"\"$"
-  else if has_special_chars v || is_infix v then "( " ^ v ^ " )"
-  else if is_keyword v then v ^ "__"
+  if v = "" then "$lid:\"\"$" else
+  if v = "val" then "contents" else
+  if has_special_chars v || is_infix v then "( " ^ v ^ " )" else
+  if is_keyword v then v ^ "__"
   else v
 ;
 
@@ -135,11 +136,7 @@ value conv_con =
   | x -> x ]
 ;
 
-value conv_lab =
-  fun
-  [ "val" -> "contents"
-  | x -> var_escaped x ]
-;
+value conv_lab = var_escaped;
 
 (* default global loc *)
 
@@ -148,6 +145,8 @@ value loc = (Token.nowhere, Token.nowhere);
 value id_var s =
   if has_special_chars s || is_infix s then
     HVbox [: `S LR "("; `S LR s; `S LR ")" :]
+  else if s = "val" then HVbox [: `S LR "contents" :]
+  else if s = "contents" then HVbox [: `S LR "contents__" :]
   else if is_keyword s then HVbox [: `S LR (s ^ "__") :]
   else HVbox [: `S LR s :]
 ;
index c17145594996288dbbbb220089740f852dd5cba8..2599b63113a4a3c5d366a909942ccd5dbdae132c 100644 (file)
@@ -10,7 +10,7 @@
 (*                                                                     *)
 (***********************************************************************)
 
-(* $Id: pr_r.ml,v 1.48 2004/05/12 15:22:41 mauny Exp $ *)
+(* $Id: pr_r.ml,v 1.48.2.2 2005/06/20 16:49:01 mauny Exp $ *)
 
 open Pcaml;
 open Spretty;
@@ -28,6 +28,12 @@ value gen_where = ref True;
 value old_sequences = ref False;
 value expand_declare = ref False;
 
+value no_curried_constructors = ref False;
+
+value constructors_are_curried () =
+  not no_curried_constructors.val
+;
+
 external is_printable : char -> bool = "caml_is_printable";
 
 value char_escaped =
@@ -173,7 +179,14 @@ and label is_last b (loc, f, m, t) k =
        k :]
 ;
 
-value rec ctyp_list tel k = listws ctyp (S LR "and") tel k;
+value rec ctyp_list tel k =
+  if constructors_are_curried() then
+    listws ctyp (S LR "and") tel k else
+  if List.length tel > 1 then
+    [: `S LO "("; listws ctyp (S LR "*") tel [: `S RO ")"; k :] :]
+  else
+    listws ctyp (S LR "*") tel k
+;
 
 value rec variants loc b vl k =
   match vl with
@@ -231,8 +244,29 @@ and field (lab, t) k =
   HVbox [: `S LR (var_escaped lab); `S LR ":"; `ctyp t k :]
 ;
 
+value rec data_constructor_app e = match e with
+  [ <:expr< $uid:_$ >> | <:expr< $uid:_$ $_$ >> -> True
+  | <:expr< $a$ $_$ >> -> data_constructor_app a
+  | _ -> False ]
+;
+
+value uncurry_expr fe last_arg =
+  let rec linearize fe result = match fe with
+  [ <:expr< $f$ $x$ >> -> linearize f [ x :: result ]
+  | _ -> (fe, result) ] in
+  linearize fe [last_arg]
+;
+
 (* patterns *)
 
+value uncurry_patt pat last_arg =
+  let rec linearize pat result = match pat with
+  [ <:patt< $p$ $x$ >> -> linearize p [ x :: result ]
+  | _ -> (pat, result) ] in
+  linearize pat [last_arg]
+;
+
+
 value rec is_irrefut_patt =
   fun
   [ <:patt< $lid:_$ >> -> True
@@ -1146,7 +1180,19 @@ pr_expr.pr_levels :=
             if is_infix n then [: `next e "" k :]
             else [: curr <:expr< $lid:n$ $x$ >> "" [: :]; `next y "" k :]
       | <:expr< $x$ $y$ >> ->
-          fun curr next _ k -> [: curr x "" [: :]; `next y "" k :]
+          if constructors_are_curried() || (not(data_constructor_app x)) then
+            fun curr next _ k -> [: curr x "" [: :]; `next y "" k :]
+          else
+            match uncurry_expr x y with
+            [ (f, ( [_;_::_] as args )) ->
+                fun curr next _ k -> 
+                  [: curr f "" [: :];
+                     `HOVCbox
+                        [: `S LO "(";
+                           listws expr (S RO ",") args [: `S RO ")"; k :] :] :]
+            | (f, [ arg ]) ->
+                fun curr next _ k -> [: curr f "" [: :]; `next arg "" k :]
+            | (f, []) -> failwith "patt@pr_r" ]
       | <:expr< new $list:sl$ >> ->
           fun curr next _ k -> [: `S LR "new"; `class_longident sl k :]
       | e -> fun curr next _ k -> [: `next e "" k :] ]};
@@ -1294,7 +1340,19 @@ pr_patt.pr_levels :=
       [ <:patt< [$_$ :: $_$] >> as p ->
           fun curr next _ k -> [: `next p "" k :]
       | <:patt< $x$ $y$ >> ->
-          fun curr next _ k -> [: curr x "" [: :]; `next y "" k :]
+          if constructors_are_curried() then
+            fun curr next _ k -> [: curr x "" [: :]; `next y "" k :]
+          else
+            match uncurry_patt x y with
+            [ (constr, ( [_;_::_] as args )) ->
+                fun curr next _ k -> 
+                  [: curr constr "" [: :];
+                     `HOVCbox
+                        [: `S LO "(";
+                           listws patt (S RO ",") args [: `S RO ")"; k :] :] :]
+            | (constr, [ arg ]) ->
+                fun curr next _ k -> [: curr constr "" [: :]; `next arg "" k :]
+            | (constr, []) -> failwith "patt@pr_r" ]
       | p -> fun curr next _ k -> [: `next p "" k :] ]};
    {pr_label = ""; pr_box _ x = HOVbox x;
     pr_rules =
@@ -1898,3 +1956,6 @@ Pcaml.add_option "-exp_dcl" (Arg.Set expand_declare)
 
 Pcaml.add_option "-tc" (Arg.Clear ncip)
   "Deprecated since version 3.05; equivalent to -cip.";
+
+Pcaml.add_option "-no_curried_constructors" (Arg.Set no_curried_constructors)
+  "Considers all non constant data constructors as unary.";
diff --git a/camlp4/lib/CVS/Entries b/camlp4/lib/CVS/Entries
deleted file mode 100644 (file)
index bbcc681..0000000
+++ /dev/null
@@ -1,20 +0,0 @@
-/.cvsignore/1.1/Fri Sep  7 07:23:16 2001//Tocaml3083
-/.depend/1.3.2.1/Tue Feb 22 14:33:36 2005//Tocaml3083
-/Makefile/1.8.2.6/Wed Jul 28 13:55:43 2004//Tocaml3083
-/extfold.ml/1.1/Fri Jul 19 14:53:47 2002//Tocaml3083
-/extfold.mli/1.1/Fri Jul 19 14:53:47 2002//Tocaml3083
-/extfun.ml/1.3/Thu Jul 10 12:28:24 2003//Tocaml3083
-/extfun.mli/1.2/Fri Jul 19 14:53:48 2002//Tocaml3083
-/fstream.ml/1.5/Thu Jul 10 12:28:24 2003//Tocaml3083
-/fstream.mli/1.3/Fri Jul 19 14:53:48 2002//Tocaml3083
-/gramext.ml/1.4/Fri Jul 19 14:53:48 2002//Tocaml3083
-/gramext.mli/1.3/Fri Jul 19 14:53:48 2002//Tocaml3083
-/grammar.ml/1.12.2.2/Mon Nov 22 13:41:24 2004//Tocaml3083
-/grammar.mli/1.6.2.1/Mon Nov 22 13:41:24 2004//Tocaml3083
-/plexer.ml/1.20.2.5/Fri Feb 18 09:11:13 2005//Tocaml3083
-/plexer.mli/1.7.4.1/Thu Oct  7 09:18:13 2004//Tocaml3083
-/stdpp.ml/1.5/Wed May 12 15:22:42 2004//Tocaml3083
-/stdpp.mli/1.5/Wed May 12 15:22:42 2004//Tocaml3083
-/token.ml/1.11.2.1/Mon Jun 28 18:30:48 2004//Tocaml3083
-/token.mli/1.6/Wed May 12 15:22:42 2004//Tocaml3083
-D
diff --git a/camlp4/lib/CVS/Repository b/camlp4/lib/CVS/Repository
deleted file mode 100644 (file)
index c004ba3..0000000
+++ /dev/null
@@ -1 +0,0 @@
-csl/camlp4/lib
diff --git a/camlp4/lib/CVS/Root b/camlp4/lib/CVS/Root
deleted file mode 100644 (file)
index c83f52f..0000000
+++ /dev/null
@@ -1 +0,0 @@
-:ext:yquem.inria.fr:/net/yquem/devel/caml/repository
diff --git a/camlp4/lib/CVS/Tag b/camlp4/lib/CVS/Tag
deleted file mode 100644 (file)
index deaa3ee..0000000
+++ /dev/null
@@ -1 +0,0 @@
-Nocaml3083
index 30cf52cd5059fb816e4645106e633fca27205cee..3d6899cf4657ecd3762cc0b1057bc22878c7c78e 100644 (file)
@@ -10,7 +10,7 @@
 (*                                                                     *)
 (***********************************************************************)
 
-(* $Id: plexer.ml,v 1.20.2.5 2005/02/18 09:11:13 mauny Exp $ *)
+(* $Id: plexer.ml,v 1.20.2.6 2005/04/14 07:22:06 mauny Exp $ *)
 
 open Stdpp;
 open Token;
@@ -131,12 +131,12 @@ value err loc msg = raise_with_loc loc (Token.Error msg);
 
 (* Debugging positions and locations *)
 value eprint_pos msg p =
-   Printf.eprintf "%s: fname=%s; lnum=%d; bol=%d; cnum=%d\n%!"
+   Printf.eprintf "%s: fname=%s; lnum=%d; bol=%d; cnum=%d%!"
      msg p.Lexing.pos_fname p.Lexing.pos_lnum p.Lexing.pos_bol p.Lexing.pos_cnum
 ;
 
 value eprint_loc (bp, ep) =
- do { eprint_pos "P1" bp; eprint_pos "P2" ep }
+ do { eprint_pos "P1=" bp; eprint_pos " --P2=" ep }
 ;
    
 value check_location msg ((bp, ep) as loc) =
@@ -162,6 +162,12 @@ value check_location msg ((bp, ep) as loc) =
    (ok, loc)
 ;
 
+value debug_token ((kind, tok), loc) = do {
+   Printf.eprintf "%s(%s) at " kind tok;
+   eprint_loc loc;
+   Printf.eprintf "\n%!"
+};
+
 value next_token_fun dfa ssd find_kwd fname lnum bolpos glexr =
    let make_pos p =
      {Lexing.pos_fname = fname.val; Lexing.pos_lnum = lnum.val;
@@ -219,12 +225,14 @@ value next_token_fun dfa ssd find_kwd fname lnum bolpos glexr =
             (tok, loc)
         | _ -> keyword_or_error (bp, Stream.count s) "'" ]
     | [: `'"'; s :] ->
-        let tok = ("STRING", get_buff (string bp 0 s)) in
+        let bpos = make_pos bp in
+        let tok = ("STRING", get_buff (string bpos 0 s)) in
         let loc = mkloc (bp, Stream.count s) in
         (tok, loc)
     | [: `'$'; s :] ->
-        let tok = dollar bp 0 s in
-        let loc = mkloc (bp, Stream.count s) in
+        let bpos = make_pos bp in
+        let tok = dollar bpos 0 s in
+        let loc = (bpos, make_pos (Stream.count s)) in
         (tok, loc)
     | [: `('!' | '=' | '@' | '^' | '&' | '+' | '-' | '*' | '/' | '%' as c);
          s :] ->
@@ -304,39 +312,40 @@ value next_token_fun dfa ssd find_kwd fname lnum bolpos glexr =
           let id = get_buff len in
           keyword_or_error (bp, ep) id ]
     else
+      let bpos = make_pos bp in
       match strm with parser
-      [ [: `'<'; len = quotation bp 0 :] ep ->
-          (("QUOTATION", ":" ^ get_buff len), mkloc (bp, ep))
+      [ [: `'<'; len = quotation bpos 0 :] ep ->
+          (("QUOTATION", ":" ^ get_buff len), (bpos, make_pos ep))
       | [: `':'; i = parser [: len = ident 0 :] -> get_buff len;
-           `'<' ? "character '<' expected"; len = quotation bp 0 :] ep ->
-          (("QUOTATION", i ^ ":" ^ get_buff len), mkloc (bp, ep))
+           `'<' ? "character '<' expected"; len = quotation bpos 0 :] ep ->
+          (("QUOTATION", i ^ ":" ^ get_buff len), (bpos, make_pos ep))
       | [: len = ident2 (store 0 '<') :] ep ->
           let id = get_buff len in
           keyword_or_error (bp, ep) id ]
-  and string bp len =
+  and string bpos len =
     parser
     [ [: `'"' :] -> len
     | [: `'\\'; `c; s :] ep  ->
         let len = store len '\\' in
         match c with [
-          '\010' -> do { bolpos.val := ep; incr lnum; string bp (store len c) s }
+          '\010' -> do { bolpos.val := ep; incr lnum; string bpos (store len c) s }
         | '\013' ->
             let (len, ep) =
               match Stream.peek s with [
                 Some '\010' -> do { Stream.junk s; (store (store len '\013') '\010', ep+1) }
               | _ -> (store len '\013', ep) ] in
-            do { bolpos.val := ep; incr lnum; string bp len s }
-        | c -> string bp (store len c) s
+            do { bolpos.val := ep; incr lnum; string bpos len s }
+        | c -> string bpos (store len c) s
         ]
-    | [: `'\010'; s :] ep -> do { bolpos.val := ep; incr lnum; string bp (store len '\010') s }
+    | [: `'\010'; s :] ep -> do { bolpos.val := ep; incr lnum; string bpos (store len '\010') s }
     | [: `'\013'; s :] ep ->
         let (len, ep) =
           match Stream.peek s with
             [ Some '\010' -> do { Stream.junk s; (store (store len '\013') '\010', ep+1) }
             | _ -> (store len '\013', ep) ] in
-        do { bolpos.val := ep; incr lnum; string bp len s }
-    | [: `c; s :] -> string bp (store len c) s
-    | [: :] ep -> err (mkloc (bp, ep)) "string not terminated" ]
+        do { bolpos.val := ep; incr lnum; string bpos len s }
+    | [: `c; s :] -> string bpos (store len c) s
+    | [: :] ep -> err (bpos, make_pos ep) "string not terminated" ]
   and char bp len =
     parser
     [ [: `'''; s :] -> if len = 0 then char bp (store len ''') s else len
@@ -350,127 +359,127 @@ value next_token_fun dfa ssd find_kwd fname lnum bolpos glexr =
         do { bolpos.val := bol; incr lnum; char bp (store len '\013') s}
     | [: `c; s :] -> char bp (store len c) s
     | [: :] ep -> err (mkloc (bp, ep)) "char not terminated" ]
-  and dollar bp len s =
+  and dollar bpos len s =
     if no_quotations.val then
       ("", get_buff (ident2 (store 0 '$') s)) 
     else match s with parser
     [ [: `'$' :] -> ("ANTIQUOT", ":" ^ get_buff len)
-    | [: `('a'..'z' | 'A'..'Z' as c); s :] -> antiquot bp (store len c) s
-    | [: `('0'..'9' as c); s :] -> maybe_locate bp (store len c) s
+    | [: `('a'..'z' | 'A'..'Z' as c); s :] -> antiquot bpos (store len c) s
+    | [: `('0'..'9' as c); s :] -> maybe_locate bpos (store len c) s
     | [: `':'; s :] ->
         let k = get_buff len in
-        ("ANTIQUOT", k ^ ":" ^ locate_or_antiquot_rest bp 0 s)
+        ("ANTIQUOT", k ^ ":" ^ locate_or_antiquot_rest bpos 0 s)
     | [: `'\\'; `c; s :] ->
-        ("ANTIQUOT", ":" ^ locate_or_antiquot_rest bp (store len c) s)
+        ("ANTIQUOT", ":" ^ locate_or_antiquot_rest bpos (store len c) s)
     | [: s :] ->
         if dfa then
           match s with parser
           [ [: `c :] ->
-              ("ANTIQUOT", ":" ^ locate_or_antiquot_rest bp (store len c) s)
-          | [: :] ep -> err (mkloc (bp, ep)) "antiquotation not terminated" ]
+              ("ANTIQUOT", ":" ^ locate_or_antiquot_rest bpos (store len c) s)
+          | [: :] ep -> err (bpos, make_pos ep) "antiquotation not terminated" ]
         else ("", get_buff (ident2 (store 0 '$') s)) ]
-  and maybe_locate bp len =
+  and maybe_locate bpos len =
     parser
     [ [: `'$' :] -> ("ANTIQUOT", ":" ^ get_buff len)
-    | [: `('0'..'9' as c); s :] -> maybe_locate bp (store len c) s
+    | [: `('0'..'9' as c); s :] -> maybe_locate bpos (store len c) s
     | [: `':'; s :] ->
-        ("LOCATE", get_buff len ^ ":" ^ locate_or_antiquot_rest bp 0 s)
+        ("LOCATE", get_buff len ^ ":" ^ locate_or_antiquot_rest bpos 0 s)
     | [: `'\\'; `c; s :] ->
-        ("ANTIQUOT", ":" ^ locate_or_antiquot_rest bp (store len c) s)
+        ("ANTIQUOT", ":" ^ locate_or_antiquot_rest bpos (store len c) s)
     | [: `c; s :] ->
-        ("ANTIQUOT", ":" ^ locate_or_antiquot_rest bp (store len c) s)
-    | [: :] ep -> err (mkloc (bp, ep)) "antiquotation not terminated" ]
-  and antiquot bp len =
+        ("ANTIQUOT", ":" ^ locate_or_antiquot_rest bpos (store len c) s)
+    | [: :] ep -> err (bpos, make_pos ep) "antiquotation not terminated" ]
+  and antiquot bpos len =
     parser
     [ [: `'$' :] -> ("ANTIQUOT", ":" ^ get_buff len)
     | [: `('a'..'z' | 'A'..'Z' | '0'..'9' as c); s :] ->
-        antiquot bp (store len c) s
+        antiquot bpos (store len c) s
     | [: `':'; s :] ->
         let k = get_buff len in
-        ("ANTIQUOT", k ^ ":" ^ locate_or_antiquot_rest bp 0 s)
+        ("ANTIQUOT", k ^ ":" ^ locate_or_antiquot_rest bpos 0 s)
     | [: `'\\'; `c; s :] ->
-        ("ANTIQUOT", ":" ^ locate_or_antiquot_rest bp (store len c) s)
+        ("ANTIQUOT", ":" ^ locate_or_antiquot_rest bpos (store len c) s)
     | [: `c; s :] ->
-        ("ANTIQUOT", ":" ^ locate_or_antiquot_rest bp (store len c) s)
-    | [: :] ep -> err (mkloc (bp, ep)) "antiquotation not terminated" ]
-  and locate_or_antiquot_rest bp len =
+        ("ANTIQUOT", ":" ^ locate_or_antiquot_rest bpos (store len c) s)
+    | [: :] ep -> err (bpos, make_pos ep) "antiquotation not terminated" ]
+  and locate_or_antiquot_rest bpos len =
     parser
     [ [: `'$' :] -> get_buff len
-    | [: `'\\'; `c; s :] -> locate_or_antiquot_rest bp (store len c) s
-    | [: `c; s :] -> locate_or_antiquot_rest bp (store len c) s
-    | [: :] ep -> err (mkloc (bp, ep)) "antiquotation not terminated" ]
-  and quotation bp len =
+    | [: `'\\'; `c; s :] -> locate_or_antiquot_rest bpos (store len c) s
+    | [: `c; s :] -> locate_or_antiquot_rest bpos (store len c) s
+    | [: :] ep -> err (bpos, make_pos ep) "antiquotation not terminated" ]
+  and quotation bpos len =
     parser
-    [ [: `'>'; s :] -> maybe_end_quotation bp len s
+    [ [: `'>'; s :] -> maybe_end_quotation bpos len s
     | [: `'<'; s :] ->
-        quotation bp (maybe_nested_quotation bp (store len '<') s) s
+        quotation bpos (maybe_nested_quotation bpos (store len '<') s) s
     | [: `'\\';
          len =
            parser
            [ [: `('>' | '<' | '\\' as c) :] -> store len c
            | [: :] -> store len '\\' ];
          s :] ->
-        quotation bp len s
-    | [: `'\010'; s :] -> do {bolpos.val := bp+1; incr lnum; quotation bp (store len '\010') s}
-    | [: `'\013'; s :] ->
+        quotation bpos len s
+    | [: `'\010'; s :] ep -> do {bolpos.val := ep; incr lnum; quotation bpos (store len '\010') s}
+    | [: `'\013'; s :] ep ->
         let bol =
           match Stream.peek s with
-            [ Some '\010' -> do { Stream.junk s; bp+2 }
-            | _ -> bp+1 ] in
-        do { bolpos.val := bol; incr lnum; quotation bp (store len '\013') s}
-    | [: `c; s :] -> quotation bp (store len c) s
-    | [: :] ep -> err (mkloc (bp, ep)) "quotation not terminated" ]
-  and maybe_nested_quotation bp len =
+            [ Some '\010' -> do { Stream.junk s; ep+1 }
+            | _ -> ep ] in
+        do { bolpos.val := bol; incr lnum; quotation bpos (store len '\013') s}
+    | [: `c; s :] -> quotation bpos (store len c) s
+    | [: :] ep -> err (bpos, make_pos ep) "quotation not terminated" ]
+  and maybe_nested_quotation bpos len =
     parser
-    [ [: `'<'; s :] -> mstore (quotation bp (store len '<') s) ">>"
+    [ [: `'<'; s :] -> mstore (quotation bpos (store len '<') s) ">>"
     | [: `':'; len = ident (store len ':');
          a =
            parser
-           [ [: `'<'; s :] -> mstore (quotation bp (store len '<') s) ">>"
+           [ [: `'<'; s :] -> mstore (quotation bpos (store len '<') s) ">>"
            | [: :] -> len ] :] ->
         a
     | [: :] -> len ]
-  and maybe_end_quotation bp len =
+  and maybe_end_quotation bpos len =
     parser
     [ [: `'>' :] -> len
-    | [: a = quotation bp (store len '>') :] -> a ]
+    | [: a = quotation bpos (store len '>') :] -> a ]
   and left_paren bp =
     parser
-    [ [: `'*'; _ = comment bp; a = next_token True :] -> a
+    [ [: `'*'; _ = comment (make_pos bp); a = next_token True :] -> a
     | [: :] ep -> keyword_or_error (bp, ep) "(" ]
-  and comment bp =
+  and comment bpos =
     parser
-    [ [: `'('; s :] -> left_paren_in_comment bp s
-    | [: `'*'; s :] -> star_in_comment bp s
-    | [: `'"'; _ = string bp 0; s :] -> comment bp s
-    | [: `'''; s :] -> quote_in_comment bp s
-    | [: `'\010'; s :] ep -> do { bolpos.val := ep; incr lnum; comment bp s }
+    [ [: `'('; s :] -> left_paren_in_comment bpos s
+    | [: `'*'; s :] -> star_in_comment bpos s
+    | [: `'"'; _ = string bpos 0; s :] -> comment bpos s
+    | [: `'''; s :] -> quote_in_comment bpos s
+    | [: `'\010'; s :] ep -> do { bolpos.val := ep; incr lnum; comment bpos s }
     | [: `'\013'; s :] ep ->
         let ep =
           match Stream.peek s with
             [ Some '\010' -> do { Stream.junk s; ep+1 }
             | _ -> ep ] in
-        do { bolpos.val := ep; incr lnum; comment bp s }
-                    | [: `c; s :] -> comment bp s
-    | [: :] ep -> err (mkloc (bp, ep)) "comment not terminated" ]
-  and quote_in_comment bp =
+        do { bolpos.val := ep; incr lnum; comment bpos s }
+                    | [: `c; s :] -> comment bpos s
+    | [: :] ep -> err (bpos, make_pos ep) "comment not terminated" ]
+  and quote_in_comment bpos =
     parser
-    [ [: `'''; s :] -> comment bp s
-    | [: `'\\'; s :] -> quote_antislash_in_comment bp 0 s
-    | [: s :] ->
+    [ [: `'''; s :] -> comment bpos s
+    | [: `'\\'; s :] -> quote_antislash_in_comment bpos 0 s
+    | [: s :] ep ->
         do {
           match Stream.npeek 2 s with
           [ [ ( '\013' | '\010' ); '''] ->
-            do { bolpos.val := bp + 1; incr lnum;
+            do { bolpos.val := ep; incr lnum;
                  Stream.junk s; Stream.junk s }
           | [ '\013'; '\010' ] ->
                match Stream.npeek 3 s with
-                 [ [_; _; '''] -> do { bolpos.val := bp + 2; incr lnum;
+                 [ [_; _; '''] -> do { bolpos.val := ep + 1; incr lnum;
                                        Stream.junk s; Stream.junk s; Stream.junk s }
                  | _ -> () ]
           | [_; '''] -> do { Stream.junk s; Stream.junk s }
           | _ -> () ];
-          comment bp s
+          comment bpos s
         } ]
   and quote_any_in_comment bp =
     parser
@@ -491,14 +500,14 @@ value next_token_fun dfa ssd find_kwd fname lnum bolpos glexr =
     parser
     [ [: `'0'..'9'; s :] -> quote_any_in_comment bp s
     | [: a = comment bp :] -> a ]
-  and left_paren_in_comment bp =
+  and left_paren_in_comment bpos =
     parser
-    [ [: `'*'; s :] -> do { comment bp s; comment bp s }
-    | [: a = comment bp :] -> a ]
-  and star_in_comment bp =
+    [ [: `'*'; s :] -> do { comment bpos s; comment bpos s }
+    | [: a = comment bpos :] -> a ]
+  and star_in_comment bpos =
     parser
     [ [: `')' :] -> ()
-    | [: a = comment bp :] -> a ]
+    | [: a = comment bpos :] -> a ]
   and linedir n s =
     match stream_peek_nth n s with
     [ Some (' ' | '\t') -> linedir (n + 1) s
@@ -553,6 +562,7 @@ value next_token_fun dfa ssd find_kwd fname lnum bolpos glexr =
               glex.tok_comm := Some [comm_loc :: list]
             else ()
         | None -> () ];
+        (* debug_token r; *)
         r
       }
     with
diff --git a/camlp4/man/CVS/Entries b/camlp4/man/CVS/Entries
deleted file mode 100644 (file)
index 1e20a15..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-/.cvsignore/1.2/Thu Dec 13 13:59:23 2001//Tocaml3083
-/Makefile/1.6/Thu Jul  3 16:14:49 2003//Tocaml3083
-/camlp4.1.tpl/1.7.4.1/Mon Aug  2 08:04:35 2004//Tocaml3083
-/camlp4.help.tpl/1.1/Thu Dec 13 13:59:23 2001//Tocaml3083
-D
diff --git a/camlp4/man/CVS/Repository b/camlp4/man/CVS/Repository
deleted file mode 100644 (file)
index 501e95d..0000000
+++ /dev/null
@@ -1 +0,0 @@
-csl/camlp4/man
diff --git a/camlp4/man/CVS/Root b/camlp4/man/CVS/Root
deleted file mode 100644 (file)
index c83f52f..0000000
+++ /dev/null
@@ -1 +0,0 @@
-:ext:yquem.inria.fr:/net/yquem/devel/caml/repository
diff --git a/camlp4/man/CVS/Tag b/camlp4/man/CVS/Tag
deleted file mode 100644 (file)
index deaa3ee..0000000
+++ /dev/null
@@ -1 +0,0 @@
-Nocaml3083
diff --git a/camlp4/meta/CVS/Entries b/camlp4/meta/CVS/Entries
deleted file mode 100644 (file)
index efecb20..0000000
+++ /dev/null
@@ -1,11 +0,0 @@
-/.cvsignore/1.1/Fri Sep  7 07:51:49 2001//Tocaml3083
-/.depend/1.7.2.2/Tue Feb 22 14:33:36 2005//Tocaml3083
-/Makefile/1.15.2.1/Mon Jul 12 10:05:21 2004//Tocaml3083
-/pa_extend.ml/1.33/Wed May 12 15:22:43 2004//Tocaml3083
-/pa_extend_m.ml/1.8/Fri Jul 19 14:53:50 2002//Tocaml3083
-/pa_macro.ml/1.2.4.6/Fri Jul  2 09:37:16 2004//Tocaml3083
-/pa_r.ml/1.59.2.2/Mon Nov 29 14:16:46 2004//Tocaml3083
-/pa_rp.ml/1.7/Thu Jul 10 12:28:27 2003//Tocaml3083
-/pr_dump.ml/1.4/Thu Jul 10 12:28:27 2003//Tocaml3083
-/q_MLast.ml/1.56/Tue May 25 18:53:18 2004//Tocaml3083
-D
diff --git a/camlp4/meta/CVS/Repository b/camlp4/meta/CVS/Repository
deleted file mode 100644 (file)
index d93ef78..0000000
+++ /dev/null
@@ -1 +0,0 @@
-csl/camlp4/meta
diff --git a/camlp4/meta/CVS/Root b/camlp4/meta/CVS/Root
deleted file mode 100644 (file)
index c83f52f..0000000
+++ /dev/null
@@ -1 +0,0 @@
-:ext:yquem.inria.fr:/net/yquem/devel/caml/repository
diff --git a/camlp4/meta/CVS/Tag b/camlp4/meta/CVS/Tag
deleted file mode 100644 (file)
index deaa3ee..0000000
+++ /dev/null
@@ -1 +0,0 @@
-Nocaml3083
index 05655e3841abd2adf53854f4e4f6bfd7e1690ae1..8a62effd045b04f5b32bac0f85e366b7fe3be518 100644 (file)
@@ -10,7 +10,7 @@
 (*                                                                     *)
 (***********************************************************************)
 
-(* $Id: pa_r.ml,v 1.59.2.2 2004/11/29 14:16:46 mauny Exp $ *)
+(* $Id: pa_r.ml,v 1.59.2.3 2005/06/02 10:40:32 mauny Exp $ *)
 
 open Stdpp;
 open Pcaml;
@@ -427,7 +427,8 @@ EXTEND
     [ RIGHTA
       [ p = ipatt; e = SELF -> <:expr< fun $p$ -> $e$ >>
       | "="; e = expr -> <:expr< $e$ >>
-      | ":"; t = ctyp; "="; e = expr -> <:expr< ($e$ : $t$) >> ] ]
+      | ":"; t = ctyp; "="; e = expr -> <:expr< ($e$ : $t$) >> 
+      | ":>"; t = ctyp; "="; e = expr -> <:expr< ($e$ :> $t$) >> ] ]
   ;
   match_case:
     [ [ p = patt; aso = as_patt_opt; w = when_expr_opt; "->"; e = expr ->
index ad9999774b7044c65059faeab84eabd76c000fb7..bcdfa68f475d2c590a1b6fb003dff55523c10b38 100644 (file)
 (*                                                                     *)
 (***********************************************************************)
 
-(* $Id: q_MLast.ml,v 1.56 2004/05/25 18:53:18 mauny Exp $ *)
+(* $Id: q_MLast.ml,v 1.56.2.2 2005/06/17 12:25:57 mauny Exp $ *)
 
-value gram = Grammar.gcreate (Plexer.gmake ());
+value (gram, q_position) =
+  let (lexer,pos) = Plexer.make_lexer () in
+  (Grammar.gcreate lexer, pos)
+;
 
 module Qast =
   struct
@@ -56,10 +59,20 @@ module Qast =
       | Record lal -> <:expr< {$list:List.map to_expr_label lal$} >>
       | Loc -> <:expr< $lid:Stdpp.loc_name.val$ >>
       | Antiquot loc s ->
+          let (bolpos,lnum, _) = Pcaml.position.val in
+          let (bolposv,lnumv) = (bolpos.val, lnum.val) in
+          let zero_pos () = do { bolpos.val := 0; lnum.val := 1 } in
+          let restore_pos () = do { bolpos.val := bolposv; lnum.val := lnumv } in
           let e =
-            try Grammar.Entry.parse Pcaml.expr_eoi (Stream.of_string s) with
+            try
+              let _ = zero_pos() in
+              let result = Grammar.Entry.parse Pcaml.expr_eoi (Stream.of_string s) in
+              let _ = restore_pos() in
+              result
+            with
             [ Stdpp.Exc_located (bp, ep) exc ->
-              raise (Stdpp.Exc_located (Reloc.adjust_loc (fst loc) (bp,ep)) exc) ]
+                do { restore_pos() ; raise (Stdpp.Exc_located (Reloc.adjust_loc (fst loc) (bp,ep)) exc) }
+            | exc -> do { restore_pos(); raise exc } ]
           in
           <:expr< $anti:e$ >> ]
     and to_expr_label (l, a) = (<:patt< MLast.$lid:l$ >>, to_expr a);
@@ -83,10 +96,20 @@ module Qast =
       | Record lal -> <:patt< {$list:List.map to_patt_label lal$} >>
       | Loc -> <:patt< _ >>
       | Antiquot loc s ->
+          let (bolpos,lnum, _) = Pcaml.position.val in
+          let (bolposv,lnumv) = (bolpos.val, lnum.val) in
+          let zero_pos () = do { bolpos.val := 0; lnum.val := 1 } in
+          let restore_pos () = do { bolpos.val := bolposv; lnum.val := lnumv } in
           let p =
-            try Grammar.Entry.parse Pcaml.patt_eoi (Stream.of_string s) with
+            try
+              let _ = zero_pos() in
+              let result = Grammar.Entry.parse Pcaml.patt_eoi (Stream.of_string s) in
+              let _ = restore_pos() in
+              result
+             with
             [ Stdpp.Exc_located (bp, ep) exc ->
-                raise (Stdpp.Exc_located (Reloc.adjust_loc (fst loc) (bp, ep)) exc) ]
+                do { restore_pos() ; raise (Stdpp.Exc_located (Reloc.adjust_loc (fst loc) (bp, ep)) exc) }
+            | exc -> do { restore_pos(); raise exc } ]
           in
           <:patt< $anti:p$ >> ]
     and to_patt_label (l, a) = (<:patt< MLast.$lid:l$ >>, to_patt a);
@@ -168,9 +191,10 @@ value neg_string n =
 
 value mkumin _ f arg =
   match arg with
-  [ Qast.Node "ExInt" [Qast.Loc; Qast.Str n] when int_of_string n > 0 ->
-      let n = neg_string n in
-      Qast.Node "ExInt" [Qast.Loc; Qast.Str n]
+  [ Qast.Node (("ExInt" | "ExInt32" | "ExInt64" | "ExNativeInt") as exi)
+      [Qast.Loc; Qast.Str n] when int_of_string n > 0 ->
+        let n = neg_string n in
+        Qast.Node exi [Qast.Loc; Qast.Str n]
   | Qast.Node "ExFlo" [Qast.Loc; Qast.Str n] when float_of_string n > 0.0 ->
       let n = neg_string n in
       Qast.Node "ExFlo" [Qast.Loc; Qast.Str n]
@@ -1401,12 +1425,24 @@ EXTEND
 END;
 
 value apply_entry e =
-  let f s = Grammar.Entry.parse e (Stream.of_string s) in
+  let f s =
+    let (bolpos,lnum,fname) = q_position in
+    let (bolp,ln,_) = (bolpos.val, lnum.val, fname.val) in
+    let zero_position() = do { bolpos.val := 0; lnum.val := 1 } in
+    let restore_position() = do { bolpos.val := bolp; lnum.val := ln } in
+    let _ = zero_position() in
+    try
+      let result =
+        Grammar.Entry.parse e (Stream.of_string s) in
+      let _ = restore_position() in
+      result
+    with exc -> do { restore_position(); raise exc } in
   let expr s = Qast.to_expr (f s) in
   let patt s = Qast.to_patt (f s) in
   Quotation.ExAst (expr, patt)
 ;
 
+
 let sig_item_eoi = Grammar.Entry.create gram "signature item" in
 do {
   EXTEND
diff --git a/camlp4/ocaml_src/CVS/Entries b/camlp4/ocaml_src/CVS/Entries
deleted file mode 100644 (file)
index 39b66de..0000000
+++ /dev/null
@@ -1,2 +0,0 @@
-/.cvsignore/1.1/Fri Sep  7 11:19:48 2001//Tocaml3083
-D
diff --git a/camlp4/ocaml_src/CVS/Entries.Log b/camlp4/ocaml_src/CVS/Entries.Log
deleted file mode 100644 (file)
index 5f8c2dd..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-A D/camlp4////
-A D/lib////
-A D/meta////
-A D/odyl////
-A D/tools////
diff --git a/camlp4/ocaml_src/CVS/Repository b/camlp4/ocaml_src/CVS/Repository
deleted file mode 100644 (file)
index b0b043d..0000000
+++ /dev/null
@@ -1 +0,0 @@
-csl/camlp4/ocaml_src
diff --git a/camlp4/ocaml_src/CVS/Root b/camlp4/ocaml_src/CVS/Root
deleted file mode 100644 (file)
index c83f52f..0000000
+++ /dev/null
@@ -1 +0,0 @@
-:ext:yquem.inria.fr:/net/yquem/devel/caml/repository
diff --git a/camlp4/ocaml_src/CVS/Tag b/camlp4/ocaml_src/CVS/Tag
deleted file mode 100644 (file)
index deaa3ee..0000000
+++ /dev/null
@@ -1 +0,0 @@
-Nocaml3083
index 3c0f8e10bbf9c56f4e367278b738821cbd2ca579..2f078d8d33b32c15e268b9e8884068fddb7a8342 100644 (file)
@@ -1,18 +1,18 @@
-ast2pt.cmi: $(OTOP)/parsing/location.cmi $(OTOP)/parsing/longident.cmi mLast.cmi \
-    $(OTOP)/parsing/parsetree.cmi 
-pcaml.cmi: mLast.cmi spretty.cmi 
+ast2pt.cmi: $(OTOP)/parsing/parsetree.cmi mLast.cmi $(OTOP)/parsing/longident.cmi \
+    $(OTOP)/parsing/location.cmi 
+pcaml.cmi: spretty.cmi mLast.cmi 
 quotation.cmi: mLast.cmi 
 reloc.cmi: mLast.cmi 
-argl.cmo: ast2pt.cmi mLast.cmi ../odyl/odyl_main.cmi pcaml.cmi 
-argl.cmx: ast2pt.cmx mLast.cmi ../odyl/odyl_main.cmx pcaml.cmx 
-ast2pt.cmo: $(OTOP)/parsing/asttypes.cmi $(OTOP)/parsing/location.cmi \
-    $(OTOP)/parsing/longident.cmi mLast.cmi $(OTOP)/parsing/parsetree.cmi \
-    pcaml.cmi ast2pt.cmi 
-ast2pt.cmx: $(OTOP)/parsing/asttypes.cmi $(OTOP)/parsing/location.cmx \
-    $(OTOP)/parsing/longident.cmx mLast.cmi $(OTOP)/parsing/parsetree.cmi \
-    pcaml.cmx ast2pt.cmi 
-pcaml.cmo: mLast.cmi quotation.cmi reloc.cmi spretty.cmi pcaml.cmi 
-pcaml.cmx: mLast.cmi quotation.cmx reloc.cmx spretty.cmx pcaml.cmi 
+argl.cmo: pcaml.cmi ../odyl/odyl_main.cmi mLast.cmi ast2pt.cmi 
+argl.cmx: pcaml.cmx ../odyl/odyl_main.cmx mLast.cmi ast2pt.cmx 
+ast2pt.cmo: pcaml.cmi $(OTOP)/parsing/parsetree.cmi mLast.cmi \
+    $(OTOP)/parsing/longident.cmi $(OTOP)/parsing/location.cmi \
+    $(OTOP)/parsing/asttypes.cmi ast2pt.cmi 
+ast2pt.cmx: pcaml.cmx $(OTOP)/parsing/parsetree.cmi mLast.cmi \
+    $(OTOP)/parsing/longident.cmx $(OTOP)/parsing/location.cmx \
+    $(OTOP)/parsing/asttypes.cmi ast2pt.cmi 
+pcaml.cmo: spretty.cmi reloc.cmi quotation.cmi mLast.cmi pcaml.cmi 
+pcaml.cmx: spretty.cmx reloc.cmx quotation.cmx mLast.cmi pcaml.cmi 
 quotation.cmo: mLast.cmi quotation.cmi 
 quotation.cmx: mLast.cmi quotation.cmi 
 reloc.cmo: mLast.cmi reloc.cmi 
diff --git a/camlp4/ocaml_src/camlp4/CVS/Entries b/camlp4/ocaml_src/camlp4/CVS/Entries
deleted file mode 100644 (file)
index 1a3f743..0000000
+++ /dev/null
@@ -1,16 +0,0 @@
-/.cvsignore/1.2/Fri Sep  7 07:39:39 2001//Tocaml3083
-/.depend/1.13.2.1/Wed Jun 30 16:23:18 2004//Tocaml3083
-/Makefile/1.20.2.5/Fri Feb 18 09:11:13 2005//Tocaml3083
-/argl.ml/1.17.2.3/Thu Oct  7 09:18:13 2004//Tocaml3083
-/ast2pt.ml/1.30.2.2/Mon Nov 22 13:41:25 2004//Tocaml3083
-/ast2pt.mli/1.3/Wed May 12 15:22:44 2004//Tocaml3083
-/mLast.mli/1.19/Wed May 19 15:00:46 2004//Tocaml3083
-/pcaml.ml/1.18.2.4/Thu Oct  7 09:18:13 2004//Tocaml3083
-/pcaml.mli/1.8.2.4/Thu Oct  7 09:18:13 2004//Tocaml3083
-/quotation.ml/1.3/Sat Feb 16 18:44:18 2002//Tocaml3083
-/quotation.mli/1.3/Fri Jul 19 14:53:51 2002//Tocaml3083
-/reloc.ml/1.18/Wed May 19 15:00:47 2004//Tocaml3083
-/reloc.mli/1.3.2.3/Mon Jul 12 22:33:52 2004//Tocaml3083
-/spretty.ml/1.5/Thu Sep 25 12:05:06 2003//Tocaml3083
-/spretty.mli/1.3/Fri Jul 19 14:53:51 2002//Tocaml3083
-D
diff --git a/camlp4/ocaml_src/camlp4/CVS/Repository b/camlp4/ocaml_src/camlp4/CVS/Repository
deleted file mode 100644 (file)
index 0142181..0000000
+++ /dev/null
@@ -1 +0,0 @@
-csl/camlp4/ocaml_src/camlp4
diff --git a/camlp4/ocaml_src/camlp4/CVS/Root b/camlp4/ocaml_src/camlp4/CVS/Root
deleted file mode 100644 (file)
index c83f52f..0000000
+++ /dev/null
@@ -1 +0,0 @@
-:ext:yquem.inria.fr:/net/yquem/devel/caml/repository
diff --git a/camlp4/ocaml_src/camlp4/CVS/Tag b/camlp4/ocaml_src/camlp4/CVS/Tag
deleted file mode 100644 (file)
index deaa3ee..0000000
+++ /dev/null
@@ -1 +0,0 @@
-Nocaml3083
index 786075527c738ce02e466bae46ec65b2f7ecc2f7..1e3b861305919898b427d500507ff45e0b222230 100644 (file)
@@ -465,6 +465,8 @@ let rec patt =
   | PaRec (loc, lpl) -> mkpat loc (Ppat_record (List.map mklabpat lpl))
   | PaStr (loc, s) ->
       mkpat loc (Ppat_constant (Const_string (string_of_string_token loc s)))
+  | PaTup (loc, []) -> error loc "empty tuple pattern"
+  | PaTup (loc, [_]) -> error loc "singleton tuple pattern"
   | PaTup (loc, pl) -> mkpat loc (Ppat_tuple (List.map patt pl))
   | PaTyc (loc, p, t) -> mkpat loc (Ppat_constraint (patt p, ctyp t))
   | PaTyp (loc, sl) -> mkpat loc (Ppat_type (long_id_of_string_list loc sl))
@@ -679,6 +681,8 @@ let rec expr =
   | ExStr (loc, s) ->
       mkexp loc (Pexp_constant (Const_string (string_of_string_token loc s)))
   | ExTry (loc, e, pel) -> mkexp loc (Pexp_try (expr e, List.map mkpwe pel))
+  | ExTup (loc, []) -> error loc "empty tuple"
+  | ExTup (loc, [e]) -> error loc "singleton tuple"
   | ExTup (loc, el) -> mkexp loc (Pexp_tuple (List.map expr el))
   | ExTyc (loc, e, t) ->
       mkexp loc (Pexp_constraint (expr e, Some (ctyp t), None))
index bf78791a301b4c6ada6967715b1995e4e72e0f5b..3e26f7f6dd2ea121f6d5ce420b36b022c4fd28da 100644 (file)
@@ -97,9 +97,7 @@ let expand_quotation loc expander shift name str =
        try expander str with
          Stdpp.Exc_located (loc, exc) ->
            let exc1 = Qerror (name, Expanding, exc) in
-           raise
-             (Stdpp.Exc_located
-                (Reloc.adjust_loc shift (Reloc.linearize loc), exc1))
+           raise (Stdpp.Exc_located (Reloc.adjust_loc shift loc, exc1))
        | exc ->
            let exc1 = Qerror (name, Expanding, exc) in
            raise (Stdpp.Exc_located (loc, exc1)))
index 1e22fee9396f04602ff5dd29d2a834a0fd7b068e..bf380894489242eec6802f848d42c211669e2f14 100644 (file)
@@ -104,19 +104,12 @@ let check_location msg (bp, ep as loc) =
   ok, loc
 ;;
 
-(* Change a location into linear positions *)
-let linearize (bp, ep) =
-  {bp with Lexing.pos_lnum = 1; Lexing.pos_bol = 0},
-  {ep with Lexing.pos_lnum = 1; Lexing.pos_bol = 0}
-;;
-
 let shift_pos n p = {p with Lexing.pos_cnum = p.Lexing.pos_cnum + n};;
 
 let zero_loc =
   {(Lexing.dummy_pos) with Lexing.pos_cnum = 0; Lexing.pos_lnum = 0}
 ;;
 
-
 let adjust_pos globpos local_pos =
   {Lexing.pos_fname = globpos.Lexing.pos_fname;
    Lexing.pos_lnum = globpos.Lexing.pos_lnum + local_pos.Lexing.pos_lnum - 1;
@@ -140,9 +133,8 @@ let rec patt floc sh =
     | PaAli (loc, x1, x2) ->
         let nloc = floc loc in PaAli (nloc, self x1, self x2)
     | PaAnt (loc, x1) ->
-        patt
-          (fun lloc -> adjust_loc (adjust_pos sh (fst loc)) (linearize lloc))
-          zero_loc x1
+        patt (fun lloc -> adjust_loc (adjust_pos sh (fst loc)) lloc) zero_loc
+          x1
     | PaAny loc -> let nloc = floc loc in PaAny nloc
     | PaApp (loc, x1, x2) ->
         let nloc = floc loc in PaApp (nloc, self x1, self x2)
@@ -184,9 +176,8 @@ and expr floc sh =
       ExAcc (loc, x1, x2) ->
         let nloc = floc loc in ExAcc (nloc, self x1, self x2)
     | ExAnt (loc, x1) ->
-        expr
-          (fun lloc -> adjust_loc (adjust_pos sh (fst loc)) (linearize lloc))
-          zero_loc x1
+        expr (fun lloc -> adjust_loc (adjust_pos sh (fst loc)) lloc) zero_loc
+          x1
     | ExApp (loc, x1, x2) ->
         let nloc = floc loc in ExApp (nloc, self x1, self x2)
     | ExAre (loc, x1, x2) ->
index cfad3b87a270cc897853bfe5ef38b0dc639d1c51..dae5bc1fc657d975af8cdb9968cfe72905b1a0eb 100644 (file)
@@ -15,7 +15,6 @@
 val zero_loc : Lexing.position;;
 val shift_pos : int -> Lexing.position -> Lexing.position;;
 val adjust_loc : Lexing.position -> MLast.loc -> MLast.loc;;
-val linearize : MLast.loc -> MLast.loc;;
 
 val ctyp : (MLast.loc -> MLast.loc) -> 'a -> MLast.ctyp -> MLast.ctyp;;
 val row_field :
index d7afaebeb24a27bb4d7d2dbfcea5bd86b3a74bfe..286b4c5b02abcc55a8dda5003ed9634c2b60147e 100644 (file)
@@ -1,20 +1,20 @@
 extfold.cmi: gramext.cmi 
 gramext.cmi: token.cmi 
-grammar.cmi: gramext.cmi token.cmi 
+grammar.cmi: token.cmi gramext.cmi 
 plexer.cmi: token.cmi 
 stdpp.cmi: token.cmi 
-extfold.cmo: gramext.cmi grammar.cmi extfold.cmi 
-extfold.cmx: gramext.cmx grammar.cmx extfold.cmi 
+extfold.cmo: grammar.cmi gramext.cmi extfold.cmi 
+extfold.cmx: grammar.cmx gramext.cmx extfold.cmi 
 extfun.cmo: extfun.cmi 
 extfun.cmx: extfun.cmi 
 fstream.cmo: fstream.cmi 
 fstream.cmx: fstream.cmi 
 gramext.cmo: token.cmi gramext.cmi 
 gramext.cmx: token.cmx gramext.cmi 
-grammar.cmo: gramext.cmi stdpp.cmi token.cmi grammar.cmi 
-grammar.cmx: gramext.cmx stdpp.cmx token.cmx grammar.cmi 
-plexer.cmo: stdpp.cmi token.cmi plexer.cmi 
-plexer.cmx: stdpp.cmx token.cmx plexer.cmi 
+grammar.cmo: token.cmi stdpp.cmi gramext.cmi grammar.cmi 
+grammar.cmx: token.cmx stdpp.cmx gramext.cmx grammar.cmi 
+plexer.cmo: token.cmi stdpp.cmi plexer.cmi 
+plexer.cmx: token.cmx stdpp.cmx plexer.cmi 
 stdpp.cmo: token.cmi stdpp.cmi 
 stdpp.cmx: token.cmx stdpp.cmi 
 token.cmo: token.cmi 
diff --git a/camlp4/ocaml_src/lib/CVS/Entries b/camlp4/ocaml_src/lib/CVS/Entries
deleted file mode 100644 (file)
index cd7bae8..0000000
+++ /dev/null
@@ -1,19 +0,0 @@
-/.depend/1.3/Wed May 12 15:22:45 2004//Tocaml3083
-/Makefile/1.11.2.5/Mon Nov 22 13:41:25 2004//Tocaml3083
-/extfold.ml/1.1/Fri Jul 19 14:53:52 2002//Tocaml3083
-/extfold.mli/1.1/Fri Jul 19 14:53:52 2002//Tocaml3083
-/extfun.ml/1.2/Fri Dec 14 19:39:32 2001//Tocaml3083
-/extfun.mli/1.3/Fri Jul 19 14:53:52 2002//Tocaml3083
-/fstream.ml/1.5/Fri Jul 19 14:53:52 2002//Tocaml3083
-/fstream.mli/1.3/Wed Jan 23 16:27:56 2002//Tocaml3083
-/gramext.ml/1.5/Fri Jul 19 14:53:52 2002//Tocaml3083
-/gramext.mli/1.4/Fri Jul 19 14:53:52 2002//Tocaml3083
-/grammar.ml/1.12.2.2/Mon Nov 22 13:41:25 2004//Tocaml3083
-/grammar.mli/1.8.2.1/Mon Nov 22 13:41:25 2004//Tocaml3083
-/plexer.ml/1.22.2.6/Fri Feb 18 09:11:13 2005//Tocaml3083
-/plexer.mli/1.9.4.2/Mon Nov 22 13:41:25 2004//Tocaml3083
-/stdpp.ml/1.5/Wed May 12 15:22:46 2004//Tocaml3083
-/stdpp.mli/1.6/Wed May 12 15:22:46 2004//Tocaml3083
-/token.ml/1.13.2.1/Mon Jun 28 18:30:48 2004//Tocaml3083
-/token.mli/1.7/Wed May 12 15:22:46 2004//Tocaml3083
-D
diff --git a/camlp4/ocaml_src/lib/CVS/Repository b/camlp4/ocaml_src/lib/CVS/Repository
deleted file mode 100644 (file)
index 8a097f7..0000000
+++ /dev/null
@@ -1 +0,0 @@
-csl/camlp4/ocaml_src/lib
diff --git a/camlp4/ocaml_src/lib/CVS/Root b/camlp4/ocaml_src/lib/CVS/Root
deleted file mode 100644 (file)
index c83f52f..0000000
+++ /dev/null
@@ -1 +0,0 @@
-:ext:yquem.inria.fr:/net/yquem/devel/caml/repository
diff --git a/camlp4/ocaml_src/lib/CVS/Tag b/camlp4/ocaml_src/lib/CVS/Tag
deleted file mode 100644 (file)
index deaa3ee..0000000
+++ /dev/null
@@ -1 +0,0 @@
-Nocaml3083
index 6f5aab2dbd6535c360e6c0bea25a9a4301bad924..706393b6280772317c3aa1b56eb5ec1bb87c557a 100644 (file)
@@ -150,11 +150,11 @@ let err loc msg = raise_with_loc loc (Token.Error msg);;
 
 (* Debugging positions and locations *)
 let eprint_pos msg p =
-  Printf.eprintf "%s: fname=%s; lnum=%d; bol=%d; cnum=%d\n%!" msg
+  Printf.eprintf "%s: fname=%s; lnum=%d; bol=%d; cnum=%d%!" msg
     p.Lexing.pos_fname p.Lexing.pos_lnum p.Lexing.pos_bol p.Lexing.pos_cnum
 ;;
 
-let eprint_loc (bp, ep) = eprint_pos "P1" bp; eprint_pos "P2" ep;;
+let eprint_loc (bp, ep) = eprint_pos "P1=" bp; eprint_pos " --P2=" ep;;
    
 let check_location msg (bp, ep as loc) =
   let ok =
@@ -175,6 +175,10 @@ let check_location msg (bp, ep as loc) =
   ok, loc
 ;;
 
+let debug_token ((kind, tok), loc) =
+  Printf.eprintf "%s(%s) at " kind tok; eprint_loc loc; Printf.eprintf "\n%!"
+;;
+
 let next_token_fun dfa ssd find_kwd fname lnum bolpos glexr =
   let make_pos p =
     {Lexing.pos_fname = !fname; Lexing.pos_lnum = !lnum;
@@ -257,12 +261,14 @@ let next_token_fun dfa ssd find_kwd fname lnum bolpos glexr =
         end
     | Some '\"' ->
         Stream.junk strm__;
-        let tok = "STRING", get_buff (string bp 0 strm__) in
+        let bpos = make_pos bp in
+        let tok = "STRING", get_buff (string bpos 0 strm__) in
         let loc = mkloc (bp, Stream.count strm__) in tok, loc
     | Some '$' ->
         Stream.junk strm__;
-        let tok = dollar bp 0 strm__ in
-        let loc = mkloc (bp, Stream.count strm__) in tok, loc
+        let bpos = make_pos bp in
+        let tok = dollar bpos 0 strm__ in
+        let loc = bpos, make_pos (Stream.count strm__) in tok, loc
     | Some ('!' | '=' | '@' | '^' | '&' | '+' | '-' | '*' | '/' | '%' as c) ->
         Stream.junk strm__;
         let id = get_buff (ident2 (store 0 c) strm__) in
@@ -401,16 +407,17 @@ let next_token_fun dfa ssd find_kwd fname lnum bolpos glexr =
       let ep = Stream.count strm__ in
       let id = get_buff len in keyword_or_error (bp, ep) id
     else
+      let bpos = make_pos bp in
       let (strm__ : _ Stream.t) = strm in
       match Stream.peek strm__ with
         Some '<' ->
           Stream.junk strm__;
           let len =
-            try quotation bp 0 strm__ with
+            try quotation bpos 0 strm__ with
               Stream.Failure -> raise (Stream.Error "")
           in
           let ep = Stream.count strm__ in
-          ("QUOTATION", ":" ^ get_buff len), mkloc (bp, ep)
+          ("QUOTATION", ":" ^ get_buff len), (bpos, make_pos ep)
       | Some ':' ->
           Stream.junk strm__;
           let i =
@@ -421,18 +428,18 @@ let next_token_fun dfa ssd find_kwd fname lnum bolpos glexr =
             Some '<' ->
               Stream.junk strm__;
               let len =
-                try quotation bp 0 strm__ with
+                try quotation bpos 0 strm__ with
                   Stream.Failure -> raise (Stream.Error "")
               in
               let ep = Stream.count strm__ in
-              ("QUOTATION", i ^ ":" ^ get_buff len), mkloc (bp, ep)
+              ("QUOTATION", i ^ ":" ^ get_buff len), (bpos, make_pos ep)
           | _ -> raise (Stream.Error "character '<' expected")
           end
       | _ ->
           let len = ident2 (store 0 '<') strm__ in
           let ep = Stream.count strm__ in
           let id = get_buff len in keyword_or_error (bp, ep) id
-  and string bp len (strm__ : _ Stream.t) =
+  and string bpos len (strm__ : _ Stream.t) =
     match Stream.peek strm__ with
       Some '\"' -> Stream.junk strm__; len
     | Some '\\' ->
@@ -444,7 +451,7 @@ let next_token_fun dfa ssd find_kwd fname lnum bolpos glexr =
             let ep = Stream.count strm__ in
             let len = store len '\\' in
             begin match c with
-              '\010' -> bolpos := ep; incr lnum; string bp (store len c) s
+              '\010' -> bolpos := ep; incr lnum; string bpos (store len c) s
             | '\013' ->
                 let (len, ep) =
                   match Stream.peek s with
@@ -452,8 +459,8 @@ let next_token_fun dfa ssd find_kwd fname lnum bolpos glexr =
                       Stream.junk s; store (store len '\013') '\010', ep + 1
                   | _ -> store len '\013', ep
                 in
-                bolpos := ep; incr lnum; string bp len s
-            | c -> string bp (store len c) s
+                bolpos := ep; incr lnum; string bpos len s
+            | c -> string bpos (store len c) s
             end
         | _ -> raise (Stream.Error "")
         end
@@ -461,7 +468,7 @@ let next_token_fun dfa ssd find_kwd fname lnum bolpos glexr =
         Stream.junk strm__;
         let s = strm__ in
         let ep = Stream.count strm__ in
-        bolpos := ep; incr lnum; string bp (store len '\010') s
+        bolpos := ep; incr lnum; string bpos (store len '\010') s
     | Some '\013' ->
         Stream.junk strm__;
         let s = strm__ in
@@ -472,11 +479,11 @@ let next_token_fun dfa ssd find_kwd fname lnum bolpos glexr =
               Stream.junk s; store (store len '\013') '\010', ep + 1
           | _ -> store len '\013', ep
         in
-        bolpos := ep; incr lnum; string bp len s
-    | Some c -> Stream.junk strm__; string bp (store len c) strm__
+        bolpos := ep; incr lnum; string bpos len s
+    | Some c -> Stream.junk strm__; string bpos (store len c) strm__
     | _ ->
         let ep = Stream.count strm__ in
-        err (mkloc (bp, ep)) "string not terminated"
+        err (bpos, make_pos ep) "string not terminated"
   and char bp len (strm__ : _ Stream.t) =
     match Stream.peek strm__ with
       Some '\'' ->
@@ -506,27 +513,27 @@ let next_token_fun dfa ssd find_kwd fname lnum bolpos glexr =
     | _ ->
         let ep = Stream.count strm__ in
         err (mkloc (bp, ep)) "char not terminated"
-  and dollar bp len s =
+  and dollar bpos len s =
     if !no_quotations then "", get_buff (ident2 (store 0 '$') s)
     else
       let (strm__ : _ Stream.t) = s in
       match Stream.peek strm__ with
         Some '$' -> Stream.junk strm__; "ANTIQUOT", ":" ^ get_buff len
       | Some ('a'..'z' | 'A'..'Z' as c) ->
-          Stream.junk strm__; antiquot bp (store len c) strm__
+          Stream.junk strm__; antiquot bpos (store len c) strm__
       | Some ('0'..'9' as c) ->
-          Stream.junk strm__; maybe_locate bp (store len c) strm__
+          Stream.junk strm__; maybe_locate bpos (store len c) strm__
       | Some ':' ->
           Stream.junk strm__;
           let k = get_buff len in
-          "ANTIQUOT", k ^ ":" ^ locate_or_antiquot_rest bp 0 strm__
+          "ANTIQUOT", k ^ ":" ^ locate_or_antiquot_rest bpos 0 strm__
       | Some '\\' ->
           Stream.junk strm__;
           begin match Stream.peek strm__ with
             Some c ->
               Stream.junk strm__;
               "ANTIQUOT",
-              ":" ^ locate_or_antiquot_rest bp (store len c) strm__
+              ":" ^ locate_or_antiquot_rest bpos (store len c) strm__
           | _ -> raise (Stream.Error "")
           end
       | _ ->
@@ -536,57 +543,59 @@ let next_token_fun dfa ssd find_kwd fname lnum bolpos glexr =
             match Stream.peek strm__ with
               Some c ->
                 Stream.junk strm__;
-                "ANTIQUOT", ":" ^ locate_or_antiquot_rest bp (store len c) s
+                "ANTIQUOT", ":" ^ locate_or_antiquot_rest bpos (store len c) s
             | _ ->
                 let ep = Stream.count strm__ in
-                err (mkloc (bp, ep)) "antiquotation not terminated"
+                err (bpos, make_pos ep) "antiquotation not terminated"
           else "", get_buff (ident2 (store 0 '$') s)
-  and maybe_locate bp len (strm__ : _ Stream.t) =
+  and maybe_locate bpos len (strm__ : _ Stream.t) =
     match Stream.peek strm__ with
       Some '$' -> Stream.junk strm__; "ANTIQUOT", ":" ^ get_buff len
     | Some ('0'..'9' as c) ->
-        Stream.junk strm__; maybe_locate bp (store len c) strm__
+        Stream.junk strm__; maybe_locate bpos (store len c) strm__
     | Some ':' ->
         Stream.junk strm__;
-        "LOCATE", get_buff len ^ ":" ^ locate_or_antiquot_rest bp 0 strm__
+        "LOCATE", get_buff len ^ ":" ^ locate_or_antiquot_rest bpos 0 strm__
     | Some '\\' ->
         Stream.junk strm__;
         begin match Stream.peek strm__ with
           Some c ->
             Stream.junk strm__;
-            "ANTIQUOT", ":" ^ locate_or_antiquot_rest bp (store len c) strm__
+            "ANTIQUOT",
+            ":" ^ locate_or_antiquot_rest bpos (store len c) strm__
         | _ -> raise (Stream.Error "")
         end
     | Some c ->
         Stream.junk strm__;
-        "ANTIQUOT", ":" ^ locate_or_antiquot_rest bp (store len c) strm__
+        "ANTIQUOT", ":" ^ locate_or_antiquot_rest bpos (store len c) strm__
     | _ ->
         let ep = Stream.count strm__ in
-        err (mkloc (bp, ep)) "antiquotation not terminated"
-  and antiquot bp len (strm__ : _ Stream.t) =
+        err (bpos, make_pos ep) "antiquotation not terminated"
+  and antiquot bpos len (strm__ : _ Stream.t) =
     match Stream.peek strm__ with
       Some '$' -> Stream.junk strm__; "ANTIQUOT", ":" ^ get_buff len
     | Some ('a'..'z' | 'A'..'Z' | '0'..'9' as c) ->
-        Stream.junk strm__; antiquot bp (store len c) strm__
+        Stream.junk strm__; antiquot bpos (store len c) strm__
     | Some ':' ->
         Stream.junk strm__;
         let k = get_buff len in
-        "ANTIQUOT", k ^ ":" ^ locate_or_antiquot_rest bp 0 strm__
+        "ANTIQUOT", k ^ ":" ^ locate_or_antiquot_rest bpos 0 strm__
     | Some '\\' ->
         Stream.junk strm__;
         begin match Stream.peek strm__ with
           Some c ->
             Stream.junk strm__;
-            "ANTIQUOT", ":" ^ locate_or_antiquot_rest bp (store len c) strm__
+            "ANTIQUOT",
+            ":" ^ locate_or_antiquot_rest bpos (store len c) strm__
         | _ -> raise (Stream.Error "")
         end
     | Some c ->
         Stream.junk strm__;
-        "ANTIQUOT", ":" ^ locate_or_antiquot_rest bp (store len c) strm__
+        "ANTIQUOT", ":" ^ locate_or_antiquot_rest bpos (store len c) strm__
     | _ ->
         let ep = Stream.count strm__ in
-        err (mkloc (bp, ep)) "antiquotation not terminated"
-  and locate_or_antiquot_rest bp len (strm__ : _ Stream.t) =
+        err (bpos, make_pos ep) "antiquotation not terminated"
+  and locate_or_antiquot_rest bpos len (strm__ : _ Stream.t) =
     match Stream.peek strm__ with
       Some '$' -> Stream.junk strm__; get_buff len
     | Some '\\' ->
@@ -594,20 +603,21 @@ let next_token_fun dfa ssd find_kwd fname lnum bolpos glexr =
         begin match Stream.peek strm__ with
           Some c ->
             Stream.junk strm__;
-            locate_or_antiquot_rest bp (store len c) strm__
+            locate_or_antiquot_rest bpos (store len c) strm__
         | _ -> raise (Stream.Error "")
         end
     | Some c ->
-        Stream.junk strm__; locate_or_antiquot_rest bp (store len c) strm__
+        Stream.junk strm__; locate_or_antiquot_rest bpos (store len c) strm__
     | _ ->
         let ep = Stream.count strm__ in
-        err (mkloc (bp, ep)) "antiquotation not terminated"
-  and quotation bp len (strm__ : _ Stream.t) =
+        err (bpos, make_pos ep) "antiquotation not terminated"
+  and quotation bpos len (strm__ : _ Stream.t) =
     match Stream.peek strm__ with
-      Some '>' -> Stream.junk strm__; maybe_end_quotation bp len strm__
+      Some '>' -> Stream.junk strm__; maybe_end_quotation bpos len strm__
     | Some '<' ->
         Stream.junk strm__;
-        quotation bp (maybe_nested_quotation bp (store len '<') strm__) strm__
+        quotation bpos (maybe_nested_quotation bpos (store len '<') strm__)
+          strm__
     | Some '\\' ->
         Stream.junk strm__;
         let len =
@@ -618,28 +628,31 @@ let next_token_fun dfa ssd find_kwd fname lnum bolpos glexr =
           with
             Stream.Failure -> raise (Stream.Error "")
         in
-        quotation bp len strm__
+        quotation bpos len strm__
     | Some '\010' ->
         Stream.junk strm__;
         let s = strm__ in
-        bolpos := bp + 1; incr lnum; quotation bp (store len '\010') s
+        let ep = Stream.count strm__ in
+        bolpos := ep; incr lnum; quotation bpos (store len '\010') s
     | Some '\013' ->
         Stream.junk strm__;
         let s = strm__ in
+        let ep = Stream.count strm__ in
         let bol =
           match Stream.peek s with
-            Some '\010' -> Stream.junk s; bp + 2
-          | _ -> bp + 1
+            Some '\010' -> Stream.junk s; ep + 1
+          | _ -> ep
         in
-        bolpos := bol; incr lnum; quotation bp (store len '\013') s
-    | Some c -> Stream.junk strm__; quotation bp (store len c) strm__
+        bolpos := bol; incr lnum; quotation bpos (store len '\013') s
+    | Some c -> Stream.junk strm__; quotation bpos (store len c) strm__
     | _ ->
         let ep = Stream.count strm__ in
-        err (mkloc (bp, ep)) "quotation not terminated"
-  and maybe_nested_quotation bp len (strm__ : _ Stream.t) =
+        err (bpos, make_pos ep) "quotation not terminated"
+  and maybe_nested_quotation bpos len (strm__ : _ Stream.t) =
     match Stream.peek strm__ with
       Some '<' ->
-        Stream.junk strm__; mstore (quotation bp (store len '<') strm__) ">>"
+        Stream.junk strm__;
+        mstore (quotation bpos (store len '<') strm__) ">>"
     | Some ':' ->
         Stream.junk strm__;
         let len =
@@ -650,44 +663,45 @@ let next_token_fun dfa ssd find_kwd fname lnum bolpos glexr =
           match Stream.peek strm__ with
             Some '<' ->
               Stream.junk strm__;
-              mstore (quotation bp (store len '<') strm__) ">>"
+              mstore (quotation bpos (store len '<') strm__) ">>"
           | _ -> len
         with
           Stream.Failure -> raise (Stream.Error "")
         end
     | _ -> len
-  and maybe_end_quotation bp len (strm__ : _ Stream.t) =
+  and maybe_end_quotation bpos len (strm__ : _ Stream.t) =
     match Stream.peek strm__ with
       Some '>' -> Stream.junk strm__; len
-    | _ -> quotation bp (store len '>') strm__
+    | _ -> quotation bpos (store len '>') strm__
   and left_paren bp (strm__ : _ Stream.t) =
     match Stream.peek strm__ with
       Some '*' ->
         Stream.junk strm__;
         let _ =
-          try comment bp strm__ with
+          try comment (make_pos bp) strm__ with
             Stream.Failure -> raise (Stream.Error "")
         in
         begin try next_token true strm__ with
           Stream.Failure -> raise (Stream.Error "")
         end
     | _ -> let ep = Stream.count strm__ in keyword_or_error (bp, ep) "("
-  and comment bp (strm__ : _ Stream.t) =
+  and comment bpos (strm__ : _ Stream.t) =
     match Stream.peek strm__ with
-      Some '(' -> Stream.junk strm__; left_paren_in_comment bp strm__
-    | Some '*' -> Stream.junk strm__; star_in_comment bp strm__
+      Some '(' -> Stream.junk strm__; left_paren_in_comment bpos strm__
+    | Some '*' -> Stream.junk strm__; star_in_comment bpos strm__
     | Some '\"' ->
         Stream.junk strm__;
         let _ =
-          try string bp 0 strm__ with
+          try string bpos 0 strm__ with
             Stream.Failure -> raise (Stream.Error "")
         in
-        comment bp strm__
-    | Some '\'' -> Stream.junk strm__; quote_in_comment bp strm__
+        comment bpos strm__
+    | Some '\'' -> Stream.junk strm__; quote_in_comment bpos strm__
     | Some '\010' ->
         Stream.junk strm__;
         let s = strm__ in
-        let ep = Stream.count strm__ in bolpos := ep; incr lnum; comment bp s
+        let ep = Stream.count strm__ in
+        bolpos := ep; incr lnum; comment bpos s
     | Some '\013' ->
         Stream.junk strm__;
         let s = strm__ in
@@ -697,24 +711,26 @@ let next_token_fun dfa ssd find_kwd fname lnum bolpos glexr =
             Some '\010' -> Stream.junk s; ep + 1
           | _ -> ep
         in
-        bolpos := ep; incr lnum; comment bp s
-    | Some c -> Stream.junk strm__; comment bp strm__
+        bolpos := ep; incr lnum; comment bpos s
+    | Some c -> Stream.junk strm__; comment bpos strm__
     | _ ->
         let ep = Stream.count strm__ in
-        err (mkloc (bp, ep)) "comment not terminated"
-  and quote_in_comment bp (strm__ : _ Stream.t) =
+        err (bpos, make_pos ep) "comment not terminated"
+  and quote_in_comment bpos (strm__ : _ Stream.t) =
     match Stream.peek strm__ with
-      Some '\'' -> Stream.junk strm__; comment bp strm__
-    | Some '\\' -> Stream.junk strm__; quote_antislash_in_comment bp 0 strm__
+      Some '\'' -> Stream.junk strm__; comment bpos strm__
+    | Some '\\' ->
+        Stream.junk strm__; quote_antislash_in_comment bpos 0 strm__
     | _ ->
         let s = strm__ in
+        let ep = Stream.count strm__ in
         begin match Stream.npeek 2 s with
           ['\013' | '\010'; '\''] ->
-            bolpos := bp + 1; incr lnum; Stream.junk s; Stream.junk s
+            bolpos := ep; incr lnum; Stream.junk s; Stream.junk s
         | ['\013'; '\010'] ->
             begin match Stream.npeek 3 s with
               [_; _; '\''] ->
-                bolpos := bp + 2;
+                bolpos := ep + 1;
                 incr lnum;
                 Stream.junk s;
                 Stream.junk s;
@@ -724,7 +740,7 @@ let next_token_fun dfa ssd find_kwd fname lnum bolpos glexr =
         | [_; '\''] -> Stream.junk s; Stream.junk s
         | _ -> ()
         end;
-        comment bp s
+        comment bpos s
   and quote_any_in_comment bp (strm__ : _ Stream.t) =
     match Stream.peek strm__ with
       Some '\'' -> Stream.junk strm__; comment bp strm__
@@ -746,15 +762,15 @@ let next_token_fun dfa ssd find_kwd fname lnum bolpos glexr =
     match Stream.peek strm__ with
       Some ('0'..'9') -> Stream.junk strm__; quote_any_in_comment bp strm__
     | _ -> comment bp strm__
-  and left_paren_in_comment bp (strm__ : _ Stream.t) =
+  and left_paren_in_comment bpos (strm__ : _ Stream.t) =
     match Stream.peek strm__ with
       Some '*' ->
-        Stream.junk strm__; let s = strm__ in comment bp s; comment bp s
-    | _ -> comment bp strm__
-  and star_in_comment bp (strm__ : _ Stream.t) =
+        Stream.junk strm__; let s = strm__ in comment bpos s; comment bpos s
+    | _ -> comment bpos strm__
+  and star_in_comment bpos (strm__ : _ Stream.t) =
     match Stream.peek strm__ with
       Some ')' -> Stream.junk strm__; ()
-    | _ -> comment bp strm__
+    | _ -> comment bpos strm__
   and linedir n s =
     match stream_peek_nth n s with
       Some (' ' | '\t') -> linedir (n + 1) s
@@ -1073,11 +1089,11 @@ let make_lexer () =
   let id_table = Hashtbl.create 301 in
   let glexr =
     ref
-      {tok_func = (fun _ -> raise (Match_failure ("", 762, 17)));
-       tok_using = (fun _ -> raise (Match_failure ("", 762, 37)));
-       tok_removing = (fun _ -> raise (Match_failure ("", 762, 60)));
-       tok_match = (fun _ -> raise (Match_failure ("", 763, 18)));
-       tok_text = (fun _ -> raise (Match_failure ("", 763, 37)));
+      {tok_func = (fun _ -> raise (Match_failure ("", 772, 17)));
+       tok_using = (fun _ -> raise (Match_failure ("", 772, 37)));
+       tok_removing = (fun _ -> raise (Match_failure ("", 772, 60)));
+       tok_match = (fun _ -> raise (Match_failure ("", 773, 18)));
+       tok_text = (fun _ -> raise (Match_failure ("", 773, 37)));
        tok_comm = None}
   in
   let (f, pos) = func kwd_table glexr in
@@ -1109,11 +1125,11 @@ let make () =
   let id_table = Hashtbl.create 301 in
   let glexr =
     ref
-      {tok_func = (fun _ -> raise (Match_failure ("", 796, 17)));
-       tok_using = (fun _ -> raise (Match_failure ("", 796, 37)));
-       tok_removing = (fun _ -> raise (Match_failure ("", 796, 60)));
-       tok_match = (fun _ -> raise (Match_failure ("", 797, 18)));
-       tok_text = (fun _ -> raise (Match_failure ("", 797, 37)));
+      {tok_func = (fun _ -> raise (Match_failure ("", 806, 17)));
+       tok_using = (fun _ -> raise (Match_failure ("", 806, 37)));
+       tok_removing = (fun _ -> raise (Match_failure ("", 806, 60)));
+       tok_match = (fun _ -> raise (Match_failure ("", 807, 18)));
+       tok_text = (fun _ -> raise (Match_failure ("", 807, 37)));
        tok_comm = None}
   in
   {func = fst (func kwd_table glexr); using = using_token kwd_table id_table;
index 977947f59fadd63668597b896a62bb8cc2a03ceb..83b86c2708eff14ce5582f516f9a337d69c3d300 100644 (file)
@@ -1,16 +1,16 @@
-pa_extend.cmo: ../camlp4/mLast.cmi ../camlp4/pcaml.cmi ../camlp4/reloc.cmi 
-pa_extend.cmx: ../camlp4/mLast.cmi ../camlp4/pcaml.cmx ../camlp4/reloc.cmx 
+pa_extend.cmo: ../camlp4/reloc.cmi ../camlp4/pcaml.cmi ../camlp4/mLast.cmi 
+pa_extend.cmx: ../camlp4/reloc.cmx ../camlp4/pcaml.cmx ../camlp4/mLast.cmi 
 pa_extend_m.cmo: pa_extend.cmo 
 pa_extend_m.cmx: pa_extend.cmx 
-pa_macro.cmo: ../camlp4/mLast.cmi ../camlp4/pcaml.cmi 
-pa_macro.cmx: ../camlp4/mLast.cmi ../camlp4/pcaml.cmx 
-pa_r.cmo: ../camlp4/mLast.cmi ../camlp4/pcaml.cmi 
-pa_r.cmx: ../camlp4/mLast.cmi ../camlp4/pcaml.cmx 
-pa_rp.cmo: ../camlp4/mLast.cmi ../camlp4/pcaml.cmi 
-pa_rp.cmx: ../camlp4/mLast.cmi ../camlp4/pcaml.cmx 
-pr_dump.cmo: ../camlp4/ast2pt.cmi $(OTOP)/utils/config.cmi ../camlp4/pcaml.cmi 
-pr_dump.cmx: ../camlp4/ast2pt.cmx $(OTOP)/utils/config.cmx ../camlp4/pcaml.cmx 
-q_MLast.cmo: ../camlp4/mLast.cmi ../camlp4/pcaml.cmi ../camlp4/quotation.cmi \
-    ../camlp4/reloc.cmi 
-q_MLast.cmx: ../camlp4/mLast.cmi ../camlp4/pcaml.cmx ../camlp4/quotation.cmx \
-    ../camlp4/reloc.cmx 
+pa_macro.cmo: ../camlp4/pcaml.cmi ../camlp4/mLast.cmi 
+pa_macro.cmx: ../camlp4/pcaml.cmx ../camlp4/mLast.cmi 
+pa_r.cmo: ../camlp4/pcaml.cmi ../camlp4/mLast.cmi 
+pa_r.cmx: ../camlp4/pcaml.cmx ../camlp4/mLast.cmi 
+pa_rp.cmo: ../camlp4/pcaml.cmi ../camlp4/mLast.cmi 
+pa_rp.cmx: ../camlp4/pcaml.cmx ../camlp4/mLast.cmi 
+pr_dump.cmo: ../camlp4/pcaml.cmi $(OTOP)/utils/config.cmi ../camlp4/ast2pt.cmi 
+pr_dump.cmx: ../camlp4/pcaml.cmx $(OTOP)/utils/config.cmx ../camlp4/ast2pt.cmx 
+q_MLast.cmo: ../camlp4/reloc.cmi ../camlp4/quotation.cmi ../camlp4/pcaml.cmi \
+    ../camlp4/mLast.cmi 
+q_MLast.cmx: ../camlp4/reloc.cmx ../camlp4/quotation.cmx ../camlp4/pcaml.cmx \
+    ../camlp4/mLast.cmi 
diff --git a/camlp4/ocaml_src/meta/CVS/Entries b/camlp4/ocaml_src/meta/CVS/Entries
deleted file mode 100644 (file)
index 50ffebe..0000000
+++ /dev/null
@@ -1,11 +0,0 @@
-/.cvsignore/1.1/Fri Sep  7 07:19:20 2001//Tocaml3083
-/.depend/1.7.2.1/Wed Jul  7 16:13:53 2004//Tocaml3083
-/Makefile/1.15.2.1/Wed Aug 18 11:17:37 2004//Tocaml3083
-/pa_extend.ml/1.32/Wed May 12 15:22:46 2004//Tocaml3083
-/pa_extend_m.ml/1.10/Wed May 12 15:22:46 2004//Tocaml3083
-/pa_macro.ml/1.2.4.5/Tue Jun 29 20:41:02 2004//Tocaml3083
-/pa_r.ml/1.54.2.4/Mon Nov 29 14:16:46 2004//Tocaml3083
-/pa_rp.ml/1.6/Wed May 12 15:22:47 2004//Tocaml3083
-/pr_dump.ml/1.4/Thu Jul 10 12:28:32 2003//Tocaml3083
-/q_MLast.ml/1.61/Tue May 25 18:53:19 2004//Tocaml3083
-D
diff --git a/camlp4/ocaml_src/meta/CVS/Repository b/camlp4/ocaml_src/meta/CVS/Repository
deleted file mode 100644 (file)
index 64f3255..0000000
+++ /dev/null
@@ -1 +0,0 @@
-csl/camlp4/ocaml_src/meta
diff --git a/camlp4/ocaml_src/meta/CVS/Root b/camlp4/ocaml_src/meta/CVS/Root
deleted file mode 100644 (file)
index c83f52f..0000000
+++ /dev/null
@@ -1 +0,0 @@
-:ext:yquem.inria.fr:/net/yquem/devel/caml/repository
diff --git a/camlp4/ocaml_src/meta/CVS/Tag b/camlp4/ocaml_src/meta/CVS/Tag
deleted file mode 100644 (file)
index deaa3ee..0000000
+++ /dev/null
@@ -1 +0,0 @@
-Nocaml3083
index e052e9b45b30b3c2ffea75a25d7a041c838b2e02..9d4977e1684bd7f2c47df77c99fe8e97acda295f 100644 (file)
@@ -1293,7 +1293,15 @@ Grammar.extend
            (p, e : 'let_binding))]];
     Grammar.Entry.obj (fun_binding : 'fun_binding Grammar.Entry.e), None,
     [None, Some Gramext.RightA,
-     [[Gramext.Stoken ("", ":");
+     [[Gramext.Stoken ("", ":>");
+       Gramext.Snterm (Grammar.Entry.obj (ctyp : 'ctyp Grammar.Entry.e));
+       Gramext.Stoken ("", "=");
+       Gramext.Snterm (Grammar.Entry.obj (expr : 'expr Grammar.Entry.e))],
+      Gramext.action
+        (fun (e : 'expr) _ (t : 'ctyp) _
+           (loc : Lexing.position * Lexing.position) ->
+           (MLast.ExCoe (loc, e, None, t) : 'fun_binding));
+      [Gramext.Stoken ("", ":");
        Gramext.Snterm (Grammar.Entry.obj (ctyp : 'ctyp Grammar.Entry.e));
        Gramext.Stoken ("", "=");
        Gramext.Snterm (Grammar.Entry.obj (expr : 'expr Grammar.Entry.e))],
index dac10349ddb08b5d66c0e7dddf3d26e522537d70..54daba105726ffdef06e0d690fb18796a4b9cefe 100644 (file)
@@ -12,7 +12,9 @@
 
 (* This file has been generated by program: do not edit! *)
 
-let gram = Grammar.gcreate (Plexer.gmake ());;
+let (gram, q_position) =
+  let (lexer, pos) = Plexer.make_lexer () in Grammar.gcreate lexer, pos
+;;
 
 module Qast =
   struct
@@ -68,12 +70,24 @@ module Qast =
       | Record lal -> MLast.ExRec (loc, List.map to_expr_label lal, None)
       | Loc -> MLast.ExLid (loc, !(Stdpp.loc_name))
       | Antiquot (loc, s) ->
+          let (bolpos, lnum, _) = !(Pcaml.position) in
+          let (bolposv, lnumv) = !bolpos, !lnum in
+          let zero_pos () = bolpos := 0; lnum := 1 in
+          let restore_pos () = bolpos := bolposv; lnum := lnumv in
           let e =
-            try Grammar.Entry.parse Pcaml.expr_eoi (Stream.of_string s) with
+            try
+              let _ = zero_pos () in
+              let result =
+                Grammar.Entry.parse Pcaml.expr_eoi (Stream.of_string s)
+              in
+              let _ = restore_pos () in result
+            with
               Stdpp.Exc_located ((bp, ep), exc) ->
+                restore_pos ();
                 raise
                   (Stdpp.Exc_located
                      (Reloc.adjust_loc (fst loc) (bp, ep), exc))
+            | exc -> restore_pos (); raise exc
           in
           MLast.ExAnt (loc, e)
     and to_expr_label (l, a) =
@@ -110,12 +124,24 @@ module Qast =
       | Record lal -> MLast.PaRec (loc, List.map to_patt_label lal)
       | Loc -> MLast.PaAny loc
       | Antiquot (loc, s) ->
+          let (bolpos, lnum, _) = !(Pcaml.position) in
+          let (bolposv, lnumv) = !bolpos, !lnum in
+          let zero_pos () = bolpos := 0; lnum := 1 in
+          let restore_pos () = bolpos := bolposv; lnum := lnumv in
           let p =
-            try Grammar.Entry.parse Pcaml.patt_eoi (Stream.of_string s) with
+            try
+              let _ = zero_pos () in
+              let result =
+                Grammar.Entry.parse Pcaml.patt_eoi (Stream.of_string s)
+              in
+              let _ = restore_pos () in result
+            with
               Stdpp.Exc_located ((bp, ep), exc) ->
+                restore_pos ();
                 raise
                   (Stdpp.Exc_located
                      (Reloc.adjust_loc (fst loc) (bp, ep), exc))
+            | exc -> restore_pos (); raise exc
           in
           MLast.PaAnt (loc, p)
     and to_patt_label (l, a) =
@@ -199,8 +225,11 @@ let neg_string n =
 
 let mkumin _ f arg =
   match arg with
-    Qast.Node ("ExInt", [Qast.Loc; Qast.Str n]) when int_of_string n > 0 ->
-      let n = neg_string n in Qast.Node ("ExInt", [Qast.Loc; Qast.Str n])
+    Qast.Node
+      (("ExInt" | "ExInt32" | "ExInt64" | "ExNativeInt" as exi),
+       [Qast.Loc; Qast.Str n])
+    when int_of_string n > 0 ->
+      let n = neg_string n in Qast.Node (exi, [Qast.Loc; Qast.Str n])
   | Qast.Node ("ExFlo", [Qast.Loc; Qast.Str n])
     when float_of_string n > 0.0 ->
       let n = neg_string n in Qast.Node ("ExFlo", [Qast.Loc; Qast.Str n])
@@ -659,7 +688,7 @@ Grammar.extend
            (let (_, c, tl) =
               match ctl with
                 Qast.Tuple [xx1; xx2; xx3] -> xx1, xx2, xx3
-              | _ -> match () with _ -> raise (Match_failure ("", 308, 19))
+              | _ -> match () with _ -> raise (Match_failure ("", 332, 19))
             in
             Qast.Node ("StExc", [Qast.Loc; c; tl; b]) :
             'str_item));
@@ -953,7 +982,7 @@ Grammar.extend
            (let (_, c, tl) =
               match ctl with
                 Qast.Tuple [xx1; xx2; xx3] -> xx1, xx2, xx3
-              | _ -> match () with _ -> raise (Match_failure ("", 366, 19))
+              | _ -> match () with _ -> raise (Match_failure ("", 390, 19))
             in
             Qast.Node ("SgExc", [Qast.Loc; c; tl]) :
             'sig_item));
@@ -5126,11 +5155,23 @@ Grammar.extend
           (Qast.Str s : 'a_OPTLABEL))]]];;
 
 let apply_entry e =
-  let f s = Grammar.Entry.parse e (Stream.of_string s) in
+  let f s =
+    let (bolpos, lnum, fname) = q_position in
+    let (bolp, ln, _) = !bolpos, !lnum, !fname in
+    let zero_position () = bolpos := 0; lnum := 1 in
+    let restore_position () = bolpos := bolp; lnum := ln in
+    let _ = zero_position () in
+    try
+      let result = Grammar.Entry.parse e (Stream.of_string s) in
+      let _ = restore_position () in result
+    with
+      exc -> restore_position (); raise exc
+  in
   let expr s = Qast.to_expr (f s) in
   let patt s = Qast.to_patt (f s) in Quotation.ExAst (expr, patt)
 ;;
 
+
 let sig_item_eoi = Grammar.Entry.create gram "signature item" in
 Grammar.extend
   [Grammar.Entry.obj (sig_item_eoi : 'sig_item_eoi Grammar.Entry.e), None,
index 3f125b7d3a3b71dcb8f127b64d241e4f969f941e..a26294403e87eafc19cb42e37ca92a15b78dc7a3 100644 (file)
@@ -1,4 +1,4 @@
-odyl.cmo: odyl_config.cmo odyl_main.cmi 
-odyl.cmx: odyl_config.cmx odyl_main.cmx 
+odyl.cmo: odyl_main.cmi odyl_config.cmo 
+odyl.cmx: odyl_main.cmx odyl_config.cmx 
 odyl_main.cmo: odyl_config.cmo odyl_main.cmi 
 odyl_main.cmx: odyl_config.cmx odyl_main.cmi 
diff --git a/camlp4/ocaml_src/odyl/CVS/Entries b/camlp4/ocaml_src/odyl/CVS/Entries
deleted file mode 100644 (file)
index 4e3ee14..0000000
+++ /dev/null
@@ -1,7 +0,0 @@
-/.cvsignore/1.3/Fri Sep  7 07:32:56 2001//Tocaml3083
-/.depend/1.8.2.3/Wed Aug 18 11:17:37 2004//Tocaml3083
-/Makefile/1.16.4.3/Wed Aug 18 11:17:37 2004//Tocaml3083
-/odyl.ml/1.3.6.1/Thu Jul  1 08:02:09 2004//Tocaml3083
-/odyl_main.ml/1.5.4.1/Thu Jul  1 08:03:46 2004//Tocaml3083
-/odyl_main.mli/1.2/Fri Dec 14 19:39:34 2001//Tocaml3083
-D
diff --git a/camlp4/ocaml_src/odyl/CVS/Repository b/camlp4/ocaml_src/odyl/CVS/Repository
deleted file mode 100644 (file)
index 9989381..0000000
+++ /dev/null
@@ -1 +0,0 @@
-csl/camlp4/ocaml_src/odyl
diff --git a/camlp4/ocaml_src/odyl/CVS/Root b/camlp4/ocaml_src/odyl/CVS/Root
deleted file mode 100644 (file)
index c83f52f..0000000
+++ /dev/null
@@ -1 +0,0 @@
-:ext:yquem.inria.fr:/net/yquem/devel/caml/repository
diff --git a/camlp4/ocaml_src/odyl/CVS/Tag b/camlp4/ocaml_src/odyl/CVS/Tag
deleted file mode 100644 (file)
index deaa3ee..0000000
+++ /dev/null
@@ -1 +0,0 @@
-Nocaml3083
diff --git a/camlp4/ocaml_src/tools/CVS/Entries b/camlp4/ocaml_src/tools/CVS/Entries
deleted file mode 100644 (file)
index d01a464..0000000
+++ /dev/null
@@ -1,8 +0,0 @@
-/camlp4_comm.mpw/1.2/Fri Jul 19 14:53:55 2002//Tocaml3083
-/camlp4_comm.sh/1.1/Fri Sep  7 07:22:07 2001//Tocaml3083
-/extract_crc.mpw/1.1/Thu Dec 13 13:59:25 2001//Tocaml3083
-/extract_crc.sh/1.4/Thu Jul 10 12:28:33 2003//Tocaml3083
-/ocamlc.mpw/1.1/Thu Dec 13 13:59:25 2001//Tocaml3083
-/ocamlc.sh/1.4/Sat Apr 27 14:45:31 2002//Tocaml3083
-/ocamlopt.sh/1.3/Sat Apr 27 14:45:31 2002//Tocaml3083
-D
diff --git a/camlp4/ocaml_src/tools/CVS/Repository b/camlp4/ocaml_src/tools/CVS/Repository
deleted file mode 100644 (file)
index 83a0562..0000000
+++ /dev/null
@@ -1 +0,0 @@
-csl/camlp4/ocaml_src/tools
diff --git a/camlp4/ocaml_src/tools/CVS/Root b/camlp4/ocaml_src/tools/CVS/Root
deleted file mode 100644 (file)
index c83f52f..0000000
+++ /dev/null
@@ -1 +0,0 @@
-:ext:yquem.inria.fr:/net/yquem/devel/caml/repository
diff --git a/camlp4/ocaml_src/tools/CVS/Tag b/camlp4/ocaml_src/tools/CVS/Tag
deleted file mode 100644 (file)
index deaa3ee..0000000
+++ /dev/null
@@ -1 +0,0 @@
-Nocaml3083
diff --git a/camlp4/ocaml_stuff/CVS/Entries b/camlp4/ocaml_stuff/CVS/Entries
deleted file mode 100644 (file)
index c4f42f6..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-D/otherlibs////
-D/parsing////
-D/utils////
diff --git a/camlp4/ocaml_stuff/CVS/Repository b/camlp4/ocaml_stuff/CVS/Repository
deleted file mode 100644 (file)
index 0cb5ab0..0000000
+++ /dev/null
@@ -1 +0,0 @@
-csl/camlp4/ocaml_stuff
diff --git a/camlp4/ocaml_stuff/CVS/Root b/camlp4/ocaml_stuff/CVS/Root
deleted file mode 100644 (file)
index c83f52f..0000000
+++ /dev/null
@@ -1 +0,0 @@
-:ext:yquem.inria.fr:/net/yquem/devel/caml/repository
diff --git a/camlp4/ocaml_stuff/CVS/Tag b/camlp4/ocaml_stuff/CVS/Tag
deleted file mode 100644 (file)
index 8b28f3e..0000000
+++ /dev/null
@@ -1 +0,0 @@
-Tocaml3083
diff --git a/camlp4/ocaml_stuff/otherlibs/CVS/Entries b/camlp4/ocaml_stuff/otherlibs/CVS/Entries
deleted file mode 100644 (file)
index a34ce05..0000000
+++ /dev/null
@@ -1 +0,0 @@
-D/dynlink////
diff --git a/camlp4/ocaml_stuff/otherlibs/CVS/Repository b/camlp4/ocaml_stuff/otherlibs/CVS/Repository
deleted file mode 100644 (file)
index e9270e1..0000000
+++ /dev/null
@@ -1 +0,0 @@
-csl/camlp4/ocaml_stuff/otherlibs
diff --git a/camlp4/ocaml_stuff/otherlibs/CVS/Root b/camlp4/ocaml_stuff/otherlibs/CVS/Root
deleted file mode 100644 (file)
index c83f52f..0000000
+++ /dev/null
@@ -1 +0,0 @@
-:ext:yquem.inria.fr:/net/yquem/devel/caml/repository
diff --git a/camlp4/ocaml_stuff/otherlibs/CVS/Tag b/camlp4/ocaml_stuff/otherlibs/CVS/Tag
deleted file mode 100644 (file)
index 8b28f3e..0000000
+++ /dev/null
@@ -1 +0,0 @@
-Tocaml3083
diff --git a/camlp4/ocaml_stuff/otherlibs/dynlink/CVS/Entries b/camlp4/ocaml_stuff/otherlibs/dynlink/CVS/Entries
deleted file mode 100644 (file)
index fa58475..0000000
+++ /dev/null
@@ -1,2 +0,0 @@
-/.depend/1.3/Fri Jul 19 14:53:55 2002//Tocaml3083
-D
diff --git a/camlp4/ocaml_stuff/otherlibs/dynlink/CVS/Repository b/camlp4/ocaml_stuff/otherlibs/dynlink/CVS/Repository
deleted file mode 100644 (file)
index df7cb76..0000000
+++ /dev/null
@@ -1 +0,0 @@
-csl/camlp4/ocaml_stuff/otherlibs/dynlink
diff --git a/camlp4/ocaml_stuff/otherlibs/dynlink/CVS/Root b/camlp4/ocaml_stuff/otherlibs/dynlink/CVS/Root
deleted file mode 100644 (file)
index c83f52f..0000000
+++ /dev/null
@@ -1 +0,0 @@
-:ext:yquem.inria.fr:/net/yquem/devel/caml/repository
diff --git a/camlp4/ocaml_stuff/otherlibs/dynlink/CVS/Tag b/camlp4/ocaml_stuff/otherlibs/dynlink/CVS/Tag
deleted file mode 100644 (file)
index deaa3ee..0000000
+++ /dev/null
@@ -1 +0,0 @@
-Nocaml3083
diff --git a/camlp4/ocaml_stuff/parsing/CVS/Entries b/camlp4/ocaml_stuff/parsing/CVS/Entries
deleted file mode 100644 (file)
index fa58475..0000000
+++ /dev/null
@@ -1,2 +0,0 @@
-/.depend/1.3/Fri Jul 19 14:53:55 2002//Tocaml3083
-D
diff --git a/camlp4/ocaml_stuff/parsing/CVS/Repository b/camlp4/ocaml_stuff/parsing/CVS/Repository
deleted file mode 100644 (file)
index 230f4a7..0000000
+++ /dev/null
@@ -1 +0,0 @@
-csl/camlp4/ocaml_stuff/parsing
diff --git a/camlp4/ocaml_stuff/parsing/CVS/Root b/camlp4/ocaml_stuff/parsing/CVS/Root
deleted file mode 100644 (file)
index c83f52f..0000000
+++ /dev/null
@@ -1 +0,0 @@
-:ext:yquem.inria.fr:/net/yquem/devel/caml/repository
diff --git a/camlp4/ocaml_stuff/parsing/CVS/Tag b/camlp4/ocaml_stuff/parsing/CVS/Tag
deleted file mode 100644 (file)
index deaa3ee..0000000
+++ /dev/null
@@ -1 +0,0 @@
-Nocaml3083
diff --git a/camlp4/ocaml_stuff/utils/CVS/Entries b/camlp4/ocaml_stuff/utils/CVS/Entries
deleted file mode 100644 (file)
index fa58475..0000000
+++ /dev/null
@@ -1,2 +0,0 @@
-/.depend/1.3/Fri Jul 19 14:53:55 2002//Tocaml3083
-D
diff --git a/camlp4/ocaml_stuff/utils/CVS/Repository b/camlp4/ocaml_stuff/utils/CVS/Repository
deleted file mode 100644 (file)
index 6c7079f..0000000
+++ /dev/null
@@ -1 +0,0 @@
-csl/camlp4/ocaml_stuff/utils
diff --git a/camlp4/ocaml_stuff/utils/CVS/Root b/camlp4/ocaml_stuff/utils/CVS/Root
deleted file mode 100644 (file)
index c83f52f..0000000
+++ /dev/null
@@ -1 +0,0 @@
-:ext:yquem.inria.fr:/net/yquem/devel/caml/repository
diff --git a/camlp4/ocaml_stuff/utils/CVS/Tag b/camlp4/ocaml_stuff/utils/CVS/Tag
deleted file mode 100644 (file)
index deaa3ee..0000000
+++ /dev/null
@@ -1 +0,0 @@
-Nocaml3083
diff --git a/camlp4/ocpp/CVS/Entries b/camlp4/ocpp/CVS/Entries
deleted file mode 100644 (file)
index 26ec7e9..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-/.cvsignore/1.1/Fri Sep  7 07:57:04 2001//Tocaml3083
-/.depend/1.1/Fri Sep  7 07:57:04 2001//Tocaml3083
-/Makefile/1.6/Wed May 12 15:22:48 2004//Tocaml3083
-/ocpp.ml/1.6/Wed May 12 15:22:48 2004//Tocaml3083
-D
diff --git a/camlp4/ocpp/CVS/Repository b/camlp4/ocpp/CVS/Repository
deleted file mode 100644 (file)
index 2897f5d..0000000
+++ /dev/null
@@ -1 +0,0 @@
-csl/camlp4/ocpp
diff --git a/camlp4/ocpp/CVS/Root b/camlp4/ocpp/CVS/Root
deleted file mode 100644 (file)
index c83f52f..0000000
+++ /dev/null
@@ -1 +0,0 @@
-:ext:yquem.inria.fr:/net/yquem/devel/caml/repository
diff --git a/camlp4/ocpp/CVS/Tag b/camlp4/ocpp/CVS/Tag
deleted file mode 100644 (file)
index deaa3ee..0000000
+++ /dev/null
@@ -1 +0,0 @@
-Nocaml3083
diff --git a/camlp4/odyl/CVS/Entries b/camlp4/odyl/CVS/Entries
deleted file mode 100644 (file)
index 51580ed..0000000
+++ /dev/null
@@ -1,7 +0,0 @@
-/.cvsignore/1.2/Thu Jul 10 12:28:34 2003//Tocaml3083
-/.depend/1.11.4.4/Tue Feb 22 14:33:36 2005//Tocaml3083
-/Makefile/1.15.4.6/Wed Jul 28 13:11:07 2004//Tocaml3083
-/odyl.ml/1.2.6.1/Wed Jun 23 13:31:38 2004//Tocaml3083
-/odyl_main.ml/1.4.4.1/Wed Jun 23 14:43:58 2004//Tocaml3083
-/odyl_main.mli/1.2/Fri Jul 19 14:53:56 2002//Tocaml3083
-D
diff --git a/camlp4/odyl/CVS/Repository b/camlp4/odyl/CVS/Repository
deleted file mode 100644 (file)
index 1c13fa1..0000000
+++ /dev/null
@@ -1 +0,0 @@
-csl/camlp4/odyl
diff --git a/camlp4/odyl/CVS/Root b/camlp4/odyl/CVS/Root
deleted file mode 100644 (file)
index c83f52f..0000000
+++ /dev/null
@@ -1 +0,0 @@
-:ext:yquem.inria.fr:/net/yquem/devel/caml/repository
diff --git a/camlp4/odyl/CVS/Tag b/camlp4/odyl/CVS/Tag
deleted file mode 100644 (file)
index deaa3ee..0000000
+++ /dev/null
@@ -1 +0,0 @@
-Nocaml3083
diff --git a/camlp4/tools/CVS/Entries b/camlp4/tools/CVS/Entries
deleted file mode 100644 (file)
index e0cf06f..0000000
+++ /dev/null
@@ -1,10 +0,0 @@
-/apply.sh/1.4.4.1/Wed Jul  7 16:22:26 2004//Tocaml3083
-/camlp4_comm.mpw/1.1/Thu Dec 13 13:59:25 2001//Tocaml3083
-/camlp4_comm.sh/1.9/Wed May 12 15:22:48 2004//Tocaml3083
-/conv.sh/1.4/Sun Nov 23 18:20:48 2003//Tocaml3083
-/extract_crc.mpw/1.1/Thu Dec 13 13:59:25 2001//Tocaml3083
-/extract_crc.sh/1.4/Thu Jul 10 12:28:35 2003//Tocaml3083
-/ocamlc.mpw/1.1/Thu Dec 13 13:59:25 2001//Tocaml3083
-/ocamlc.sh/1.4/Sat Apr 27 14:45:31 2002//Tocaml3083
-/ocamlopt.sh/1.3/Sat Apr 27 14:45:31 2002//Tocaml3083
-D
diff --git a/camlp4/tools/CVS/Repository b/camlp4/tools/CVS/Repository
deleted file mode 100644 (file)
index 7a5d012..0000000
+++ /dev/null
@@ -1 +0,0 @@
-csl/camlp4/tools
diff --git a/camlp4/tools/CVS/Root b/camlp4/tools/CVS/Root
deleted file mode 100644 (file)
index c83f52f..0000000
+++ /dev/null
@@ -1 +0,0 @@
-:ext:yquem.inria.fr:/net/yquem/devel/caml/repository
diff --git a/camlp4/tools/CVS/Tag b/camlp4/tools/CVS/Tag
deleted file mode 100644 (file)
index deaa3ee..0000000
+++ /dev/null
@@ -1 +0,0 @@
-Nocaml3083
diff --git a/camlp4/top/CVS/Entries b/camlp4/top/CVS/Entries
deleted file mode 100644 (file)
index 9e35ea9..0000000
+++ /dev/null
@@ -1,7 +0,0 @@
-/.cvsignore/1.1/Fri Sep  7 07:54:49 2001//Tocaml3083
-/.depend/1.9.4.1/Tue Feb 22 14:33:36 2005//Tocaml3083
-/Makefile/1.12.2.1/Fri Jul  9 15:10:57 2004//Tocaml3083
-/camlp4_top.ml/1.13.2.1/Thu Oct  7 09:18:13 2004//Tocaml3083
-/oprint.ml/1.6/Tue Sep 23 12:52:34 2003//Tocaml3083
-/rprint.ml/1.14/Sat Jun 12 08:55:46 2004//Tocaml3083
-D
diff --git a/camlp4/top/CVS/Repository b/camlp4/top/CVS/Repository
deleted file mode 100644 (file)
index a3a5585..0000000
+++ /dev/null
@@ -1 +0,0 @@
-csl/camlp4/top
diff --git a/camlp4/top/CVS/Root b/camlp4/top/CVS/Root
deleted file mode 100644 (file)
index c83f52f..0000000
+++ /dev/null
@@ -1 +0,0 @@
-:ext:yquem.inria.fr:/net/yquem/devel/caml/repository
diff --git a/camlp4/top/CVS/Tag b/camlp4/top/CVS/Tag
deleted file mode 100644 (file)
index deaa3ee..0000000
+++ /dev/null
@@ -1 +0,0 @@
-Nocaml3083
index 77fc1919519b1df2d17301dd170c145a6a0204ab..51199ce25a37627c5cbc1dd995aa26d058869900 100644 (file)
@@ -10,7 +10,7 @@
 (*                                                                     *)
 (***********************************************************************)
 
-(* $Id: rprint.ml,v 1.14 2004/06/12 08:55:46 xleroy Exp $ *)
+(* $Id: rprint.ml,v 1.14.2.1 2005/06/17 12:25:57 mauny Exp $ *)
 
 open Format;
 open Outcometree;
@@ -135,7 +135,7 @@ and print_out_type_1 ppf =
       fprintf ppf "@[%s%a ->@ %a@]" (if lab <> "" then lab ^ ":" else "")
         print_out_type_2 ty1 print_out_type_1 ty2
   | Otyp_poly sl ty ->
-      fprintf ppf "@[<hov 2>%a.@ %a@]"
+      fprintf ppf "@[<hov 2>!%a.@ %a@]"
         pr_vars sl
         print_out_type ty
   | ty -> print_out_type_2 ppf ty ]
diff --git a/camlp4/unmaintained/CVS/Entries b/camlp4/unmaintained/CVS/Entries
deleted file mode 100644 (file)
index 5e12be7..0000000
+++ /dev/null
@@ -1,7 +0,0 @@
-/Makefile/1.1.2.1/Wed Jul  7 16:33:14 2004//Tocaml3083
-D/format////
-D/lefteval////
-D/ocamllex////
-D/olabl////
-D/scheme////
-D/sml////
diff --git a/camlp4/unmaintained/CVS/Repository b/camlp4/unmaintained/CVS/Repository
deleted file mode 100644 (file)
index 1134a33..0000000
+++ /dev/null
@@ -1 +0,0 @@
-csl/camlp4/unmaintained
diff --git a/camlp4/unmaintained/CVS/Root b/camlp4/unmaintained/CVS/Root
deleted file mode 100644 (file)
index c83f52f..0000000
+++ /dev/null
@@ -1 +0,0 @@
-:ext:yquem.inria.fr:/net/yquem/devel/caml/repository
diff --git a/camlp4/unmaintained/CVS/Tag b/camlp4/unmaintained/CVS/Tag
deleted file mode 100644 (file)
index deaa3ee..0000000
+++ /dev/null
@@ -1 +0,0 @@
-Nocaml3083
diff --git a/camlp4/unmaintained/format/CVS/Entries b/camlp4/unmaintained/format/CVS/Entries
deleted file mode 100644 (file)
index a667f7b..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-/.depend/1.1.2.1/Wed Jul  7 16:22:26 2004//Tocaml3083
-/Makefile/1.1.2.1/Wed Jul  7 16:22:26 2004//Tocaml3083
-/README/1.1.2.1/Wed Jul  7 16:22:27 2004//Tocaml3083
-/pa_format.ml/1.1.2.1/Wed Jul  7 16:22:27 2004//Tocaml3083
-D
diff --git a/camlp4/unmaintained/format/CVS/Repository b/camlp4/unmaintained/format/CVS/Repository
deleted file mode 100644 (file)
index e37de8b..0000000
+++ /dev/null
@@ -1 +0,0 @@
-csl/camlp4/unmaintained/format
diff --git a/camlp4/unmaintained/format/CVS/Root b/camlp4/unmaintained/format/CVS/Root
deleted file mode 100644 (file)
index c83f52f..0000000
+++ /dev/null
@@ -1 +0,0 @@
-:ext:yquem.inria.fr:/net/yquem/devel/caml/repository
diff --git a/camlp4/unmaintained/format/CVS/Tag b/camlp4/unmaintained/format/CVS/Tag
deleted file mode 100644 (file)
index deaa3ee..0000000
+++ /dev/null
@@ -1 +0,0 @@
-Nocaml3083
diff --git a/camlp4/unmaintained/lefteval/CVS/Entries b/camlp4/unmaintained/lefteval/CVS/Entries
deleted file mode 100644 (file)
index 05a75eb..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-/.depend/1.1.2.1/Wed Jul  7 16:22:27 2004//Tocaml3083
-/Makefile/1.1.2.1/Wed Jul  7 16:22:28 2004//Tocaml3083
-/README/1.1.2.1/Wed Jul  7 16:22:28 2004//Tocaml3083
-/pa_lefteval.ml/1.1.2.1/Wed Jul  7 16:22:28 2004//Tocaml3083
-D
diff --git a/camlp4/unmaintained/lefteval/CVS/Repository b/camlp4/unmaintained/lefteval/CVS/Repository
deleted file mode 100644 (file)
index 05356c5..0000000
+++ /dev/null
@@ -1 +0,0 @@
-csl/camlp4/unmaintained/lefteval
diff --git a/camlp4/unmaintained/lefteval/CVS/Root b/camlp4/unmaintained/lefteval/CVS/Root
deleted file mode 100644 (file)
index c83f52f..0000000
+++ /dev/null
@@ -1 +0,0 @@
-:ext:yquem.inria.fr:/net/yquem/devel/caml/repository
diff --git a/camlp4/unmaintained/lefteval/CVS/Tag b/camlp4/unmaintained/lefteval/CVS/Tag
deleted file mode 100644 (file)
index deaa3ee..0000000
+++ /dev/null
@@ -1 +0,0 @@
-Nocaml3083
diff --git a/camlp4/unmaintained/ocamllex/CVS/Entries b/camlp4/unmaintained/ocamllex/CVS/Entries
deleted file mode 100644 (file)
index 50c04b9..0000000
+++ /dev/null
@@ -1,4 +0,0 @@
-/Makefile/1.1.2.1/Wed Jul  7 16:22:29 2004//Tocaml3083
-/README/1.1.2.1/Wed Jul  7 16:22:29 2004//Tocaml3083
-/pa_ocamllex.ml/1.1.2.1/Wed Jul  7 16:22:29 2004//Tocaml3083
-D
diff --git a/camlp4/unmaintained/ocamllex/CVS/Repository b/camlp4/unmaintained/ocamllex/CVS/Repository
deleted file mode 100644 (file)
index 305a0be..0000000
+++ /dev/null
@@ -1 +0,0 @@
-csl/camlp4/unmaintained/ocamllex
diff --git a/camlp4/unmaintained/ocamllex/CVS/Root b/camlp4/unmaintained/ocamllex/CVS/Root
deleted file mode 100644 (file)
index c83f52f..0000000
+++ /dev/null
@@ -1 +0,0 @@
-:ext:yquem.inria.fr:/net/yquem/devel/caml/repository
diff --git a/camlp4/unmaintained/ocamllex/CVS/Tag b/camlp4/unmaintained/ocamllex/CVS/Tag
deleted file mode 100644 (file)
index deaa3ee..0000000
+++ /dev/null
@@ -1 +0,0 @@
-Nocaml3083
diff --git a/camlp4/unmaintained/olabl/CVS/Entries b/camlp4/unmaintained/olabl/CVS/Entries
deleted file mode 100644 (file)
index 76b4000..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-/.depend/1.1.2.1/Wed Jul  7 16:22:30 2004//Tocaml3083
-/Makefile/1.1.2.1/Wed Jul  7 16:22:31 2004//Tocaml3083
-/README/1.1.2.1/Wed Jul  7 16:22:31 2004//Tocaml3083
-/pa_olabl.ml/1.1.2.1/Wed Jul  7 16:22:31 2004//Tocaml3083
-D
diff --git a/camlp4/unmaintained/olabl/CVS/Repository b/camlp4/unmaintained/olabl/CVS/Repository
deleted file mode 100644 (file)
index a48587f..0000000
+++ /dev/null
@@ -1 +0,0 @@
-csl/camlp4/unmaintained/olabl
diff --git a/camlp4/unmaintained/olabl/CVS/Root b/camlp4/unmaintained/olabl/CVS/Root
deleted file mode 100644 (file)
index c83f52f..0000000
+++ /dev/null
@@ -1 +0,0 @@
-:ext:yquem.inria.fr:/net/yquem/devel/caml/repository
diff --git a/camlp4/unmaintained/olabl/CVS/Tag b/camlp4/unmaintained/olabl/CVS/Tag
deleted file mode 100644 (file)
index deaa3ee..0000000
+++ /dev/null
@@ -1 +0,0 @@
-Nocaml3083
diff --git a/camlp4/unmaintained/scheme/CVS/Entries b/camlp4/unmaintained/scheme/CVS/Entries
deleted file mode 100644 (file)
index 2915d04..0000000
+++ /dev/null
@@ -1,8 +0,0 @@
-/.depend/1.1.2.1/Wed Jul  7 16:22:32 2004//Tocaml3083
-/Makefile/1.1.2.1/Wed Jul  7 16:22:32 2004//Tocaml3083
-/README/1.1.2.1/Wed Jul  7 16:22:32 2004//Tocaml3083
-/pa_scheme.ml/1.1.2.1/Wed Jul  7 16:22:32 2004//Tocaml3083
-/pa_scheme.sc/1.1.2.1/Wed Jul  7 16:22:33 2004//Tocaml3083
-/pr_scheme.ml/1.1.2.1/Wed Jul  7 16:22:33 2004//Tocaml3083
-/pr_schp_main.ml/1.1.2.1/Wed Jul  7 16:22:34 2004//Tocaml3083
-D
diff --git a/camlp4/unmaintained/scheme/CVS/Repository b/camlp4/unmaintained/scheme/CVS/Repository
deleted file mode 100644 (file)
index 6cb7772..0000000
+++ /dev/null
@@ -1 +0,0 @@
-csl/camlp4/unmaintained/scheme
diff --git a/camlp4/unmaintained/scheme/CVS/Root b/camlp4/unmaintained/scheme/CVS/Root
deleted file mode 100644 (file)
index c83f52f..0000000
+++ /dev/null
@@ -1 +0,0 @@
-:ext:yquem.inria.fr:/net/yquem/devel/caml/repository
diff --git a/camlp4/unmaintained/scheme/CVS/Tag b/camlp4/unmaintained/scheme/CVS/Tag
deleted file mode 100644 (file)
index deaa3ee..0000000
+++ /dev/null
@@ -1 +0,0 @@
-Nocaml3083
diff --git a/camlp4/unmaintained/sml/CVS/Entries b/camlp4/unmaintained/sml/CVS/Entries
deleted file mode 100644 (file)
index 56c3802..0000000
+++ /dev/null
@@ -1,6 +0,0 @@
-/.depend/1.1.2.1/Wed Jul  7 16:37:09 2004//Tocaml3083
-/Makefile/1.1.2.1/Wed Jul  7 16:37:10 2004//Tocaml3083
-/README/1.1.2.1/Wed Jul  7 16:37:10 2004//Tocaml3083
-/pa_sml.ml/1.1.2.1/Wed Jul  7 16:37:10 2004//Tocaml3083
-/smllib.sml/1.1.2.1/Wed Jul  7 16:37:11 2004//Tocaml3083
-D
diff --git a/camlp4/unmaintained/sml/CVS/Repository b/camlp4/unmaintained/sml/CVS/Repository
deleted file mode 100644 (file)
index 22ddc3e..0000000
+++ /dev/null
@@ -1 +0,0 @@
-csl/camlp4/unmaintained/sml
diff --git a/camlp4/unmaintained/sml/CVS/Root b/camlp4/unmaintained/sml/CVS/Root
deleted file mode 100644 (file)
index c83f52f..0000000
+++ /dev/null
@@ -1 +0,0 @@
-:ext:yquem.inria.fr:/net/yquem/devel/caml/repository
diff --git a/camlp4/unmaintained/sml/CVS/Tag b/camlp4/unmaintained/sml/CVS/Tag
deleted file mode 100644 (file)
index deaa3ee..0000000
+++ /dev/null
@@ -1 +0,0 @@
-Nocaml3083
diff --git a/config/CVS/Entries b/config/CVS/Entries
deleted file mode 100644 (file)
index ce54b03..0000000
+++ /dev/null
@@ -1,9 +0,0 @@
-/.cvsignore/1.2/Thu Feb 15 16:18:54 1996//Tocaml3083
-/Makefile-templ/1.29/Sat Jun 19 16:17:31 2004//Tocaml3083
-/Makefile.mingw/1.12/Thu Apr  1 13:08:56 2004//Tocaml3083
-/Makefile.msvc/1.12.4.2/Wed Feb  2 15:39:40 2005//Tocaml3083
-/m-nt.h/1.10/Fri Jun  7 09:49:37 2002//Tocaml3083
-/m-templ.h/1.14/Fri Dec  7 13:39:40 2001//Tocaml3083
-/s-nt.h/1.12/Tue Jun 18 13:00:55 2002//Tocaml3083
-/s-templ.h/1.22/Tue May 18 08:50:22 2004//Tocaml3083
-D
diff --git a/config/CVS/Entries.Log b/config/CVS/Entries.Log
deleted file mode 100644 (file)
index 4d297bf..0000000
+++ /dev/null
@@ -1,2 +0,0 @@
-A D/auto-aux////
-A D/gnu////
diff --git a/config/CVS/Repository b/config/CVS/Repository
deleted file mode 100644 (file)
index 4e8e931..0000000
+++ /dev/null
@@ -1 +0,0 @@
-csl/config
diff --git a/config/CVS/Root b/config/CVS/Root
deleted file mode 100644 (file)
index c83f52f..0000000
+++ /dev/null
@@ -1 +0,0 @@
-:ext:yquem.inria.fr:/net/yquem/devel/caml/repository
diff --git a/config/CVS/Tag b/config/CVS/Tag
deleted file mode 100644 (file)
index deaa3ee..0000000
+++ /dev/null
@@ -1 +0,0 @@
-Nocaml3083
diff --git a/config/auto-aux/CVS/Entries b/config/auto-aux/CVS/Entries
deleted file mode 100644 (file)
index e62a8fa..0000000
+++ /dev/null
@@ -1,29 +0,0 @@
-/align.c/1.7/Fri Dec  7 13:39:41 2001//Tocaml3083
-/ansi.c/1.4/Fri Dec  7 13:39:41 2001//Tocaml3083
-/async_io.c/1.8/Tue Feb 11 14:05:36 2003//Tocaml3083
-/bytecopy.c/1.7/Fri Dec  7 13:39:43 2001//Tocaml3083
-/dblalign.c/1.9/Fri Dec  7 13:39:43 2001//Tocaml3083
-/divmod.c/1.3/Tue Dec 30 23:59:47 2003//Tocaml3083
-/elf.c/1.4/Fri Dec  7 13:39:43 2001//Tocaml3083
-/endian.c/1.8/Fri Dec  7 13:39:43 2001//Tocaml3083
-/getgroups.c/1.8/Fri Dec  7 13:39:43 2001//Tocaml3083
-/gethostbyaddr.c/1.2/Mon May  6 08:29:52 2002//Tocaml3083
-/gethostbyname.c/1.2/Mon May  6 08:29:52 2002//Tocaml3083
-/hasgot/1.9/Fri Apr  9 13:23:11 2004//Tocaml3083
-/ia32sse2.c/1.1.6.1/Mon Jan 31 17:25:42 2005//Tocaml3083
-/int64align.c/1.2/Fri Dec  7 13:39:43 2001//Tocaml3083
-/longlong.c/1.4/Sat May 25 08:33:26 2002//Tocaml3083
-/runtest/1.5/Thu Sep  6 08:52:21 2001//Tocaml3083
-/schar.c/1.8/Fri Dec  7 13:39:44 2001//Tocaml3083
-/schar2.c/1.8/Fri Dec  7 13:39:44 2001//Tocaml3083
-/searchpath/1.1/Tue Feb 13 16:26:44 1996//Tocaml3083
-/sharpbang/1.1/Tue Feb 13 16:26:45 1996//Tocaml3083
-/sharpbang2/1.1/Wed Jul 16 14:22:26 2003//Tocaml3083
-/sighandler.c/1.7/Fri Dec  7 13:39:44 2001//Tocaml3083
-/signals.c/1.7/Fri Dec  7 13:39:44 2001//Tocaml3083
-/sizes.c/1.9/Fri Dec  7 13:39:44 2001//Tocaml3083
-/solaris-ld/1.2/Tue Aug 28 14:47:18 2001/-kk/Tocaml3083
-/stackov.c/1.4/Wed Jul 23 07:57:17 2003//Tocaml3083
-/tclversion.c/1.3/Wed Aug 20 15:11:52 2003//Tocaml3083
-/trycompile/1.1/Sat May  4 09:58:01 2002//Tocaml3083
-D
diff --git a/config/auto-aux/CVS/Repository b/config/auto-aux/CVS/Repository
deleted file mode 100644 (file)
index 03597e0..0000000
+++ /dev/null
@@ -1 +0,0 @@
-csl/config/auto-aux
diff --git a/config/auto-aux/CVS/Root b/config/auto-aux/CVS/Root
deleted file mode 100644 (file)
index c83f52f..0000000
+++ /dev/null
@@ -1 +0,0 @@
-:ext:yquem.inria.fr:/net/yquem/devel/caml/repository
diff --git a/config/auto-aux/CVS/Tag b/config/auto-aux/CVS/Tag
deleted file mode 100644 (file)
index deaa3ee..0000000
+++ /dev/null
@@ -1 +0,0 @@
-Nocaml3083
diff --git a/config/gnu/CVS/Entries b/config/gnu/CVS/Entries
deleted file mode 100644 (file)
index 7516e9c..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-/config.guess/1.4/Mon Feb 16 12:37:15 2004//Tocaml3083
-/config.sub/1.1.1.3/Mon Feb 16 12:30:04 2004//Tocaml3083
-D
diff --git a/config/gnu/CVS/Repository b/config/gnu/CVS/Repository
deleted file mode 100644 (file)
index 6b52af6..0000000
+++ /dev/null
@@ -1 +0,0 @@
-csl/config/gnu
diff --git a/config/gnu/CVS/Root b/config/gnu/CVS/Root
deleted file mode 100644 (file)
index c83f52f..0000000
+++ /dev/null
@@ -1 +0,0 @@
-:ext:yquem.inria.fr:/net/yquem/devel/caml/repository
diff --git a/config/gnu/CVS/Tag b/config/gnu/CVS/Tag
deleted file mode 100644 (file)
index deaa3ee..0000000
+++ /dev/null
@@ -1 +0,0 @@
-Nocaml3083
index fd28ce8de8241e94375850736784c3298cf4d1f0..710ee45d2fe497a4521e45aae3e50b0b87253006 100755 (executable)
--- a/configure
+++ b/configure
@@ -13,7 +13,7 @@
 #                                                                       #
 #########################################################################
 
-# $Id: configure,v 1.215.2.9 2005/01/24 15:22:46 doligez Exp $
+# $Id: configure,v 1.215.2.10 2005/06/12 13:36:42 xleroy Exp $
 
 configure_options="$*"
 prefix=/usr/local
@@ -1180,6 +1180,7 @@ for dir in \
     $x11_lib_dir          \
     $x11_try_lib_dir      \
                           \
+    /usr/X11R6/lib64      \
     /usr/X11R6/lib        \
     /usr/lib/X11R6        \
     /usr/local/X11R6/lib  \
diff --git a/debugger/CVS/Entries b/debugger/CVS/Entries
deleted file mode 100644 (file)
index 35af822..0000000
+++ /dev/null
@@ -1,65 +0,0 @@
-/.cvsignore/1.1/Fri Mar 21 07:10:20 1997//Tocaml3083
-/.depend/1.30.2.2/Tue Feb 22 14:33:36 2005//Tocaml3083
-/Makefile/1.29/Sun Feb 22 15:07:51 2004//Tocaml3083
-/breakpoints.ml/1.12/Fri Nov 21 16:10:56 2003//Tocaml3083
-/breakpoints.mli/1.2/Wed Nov 17 18:57:22 1999//Tocaml3083
-/checkpoints.ml/1.4/Tue Oct 29 17:53:23 2002//Tocaml3083
-/checkpoints.mli/1.4/Tue Oct 29 17:53:23 2002//Tocaml3083
-/command_line.ml/1.21/Fri Nov 21 16:10:56 2003//Tocaml3083
-/command_line.mli/1.4/Tue Mar  7 18:22:14 2000//Tocaml3083
-/debugcom.ml/1.12/Tue Oct 29 17:53:23 2002//Tocaml3083
-/debugcom.mli/1.8/Tue Oct 29 17:53:23 2002//Tocaml3083
-/debugger_config.ml/1.10/Sun Nov 17 16:42:10 2002//Tocaml3083
-/debugger_config.mli/1.5/Sun Nov 17 16:42:10 2002//Tocaml3083
-/envaux.ml/1.7/Mon Mar  6 22:11:17 2000//Tocaml3083
-/envaux.mli/1.5/Mon Mar  6 22:11:20 2000//Tocaml3083
-/eval.ml/1.28/Wed Jul  2 09:14:30 2003//Tocaml3083
-/eval.mli/1.6/Mon Mar  6 22:11:21 2000//Tocaml3083
-/events.ml/1.5/Sat Nov  2 22:36:42 2002//Tocaml3083
-/events.mli/1.3/Wed Nov 17 18:57:24 1999//Tocaml3083
-/exec.ml/1.4/Wed Nov 17 18:57:24 1999//Tocaml3083
-/exec.mli/1.4/Wed Nov 17 18:57:24 1999//Tocaml3083
-/frames.ml/1.9/Sat Nov  2 22:36:42 2002//Tocaml3083
-/frames.mli/1.3/Wed Nov 17 18:57:24 1999//Tocaml3083
-/history.ml/1.5/Tue Oct 29 17:53:24 2002//Tocaml3083
-/history.mli/1.4/Tue Oct 29 17:53:24 2002//Tocaml3083
-/input_handling.ml/1.4/Wed Nov 17 18:57:25 1999//Tocaml3083
-/input_handling.mli/1.2/Wed Nov 17 18:57:25 1999//Tocaml3083
-/int64ops.ml/1.1/Tue Oct 29 17:53:24 2002//Tocaml3083
-/int64ops.mli/1.1/Tue Oct 29 17:53:24 2002//Tocaml3083
-/lexer.mli/1.1/Sun Jun 13 12:46:11 2004//Tocaml3083
-/lexer.mll/1.8/Fri Jan  3 15:39:54 2003//Tocaml3083
-/loadprinter.ml/1.18/Thu Jul 17 13:55:37 2003//Tocaml3083
-/loadprinter.mli/1.4/Tue Mar  7 18:22:15 2000//Tocaml3083
-/main.ml/1.15/Thu Dec  4 12:32:04 2003//Tocaml3083
-/parameters.ml/1.3/Thu Feb 14 15:17:10 2002//Tocaml3083
-/parameters.mli/1.2/Wed Nov 17 18:57:26 1999//Tocaml3083
-/parser.mly/1.7/Tue Oct 29 17:53:24 2002//Tocaml3083
-/parser_aux.mli/1.4/Wed Nov 17 18:57:26 1999//Tocaml3083
-/pattern_matching.ml/1.4/Thu Dec 28 13:03:41 2000//Tocaml3083
-/pattern_matching.mli/1.2/Wed Nov 17 18:57:26 1999//Tocaml3083
-/pos.ml/1.1/Fri Nov 21 16:10:56 2003//Tocaml3083
-/pos.mli/1.1/Fri Nov 21 16:10:57 2003//Tocaml3083
-/primitives.ml/1.6/Tue Oct 29 17:53:24 2002//Tocaml3083
-/primitives.mli/1.2/Wed Nov 17 18:57:26 1999//Tocaml3083
-/printval.ml/1.21/Wed Feb 13 11:09:17 2002//Tocaml3083
-/printval.mli/1.10/Tue Jul  3 11:04:09 2001//Tocaml3083
-/program_loading.ml/1.6/Wed Nov 17 18:57:27 1999//Tocaml3083
-/program_loading.mli/1.3/Wed Nov 17 18:57:27 1999//Tocaml3083
-/program_management.ml/1.11/Sat Nov  2 22:36:42 2002//Tocaml3083
-/program_management.mli/1.2/Wed Nov 17 18:57:27 1999//Tocaml3083
-/show_information.ml/1.12/Sat Nov  2 22:36:44 2002//Tocaml3083
-/show_information.mli/1.3/Mon Mar  6 22:11:25 2000//Tocaml3083
-/show_source.ml/1.12/Tue Mar  7 18:22:18 2000//Tocaml3083
-/show_source.mli/1.3/Wed Nov 17 18:57:28 1999//Tocaml3083
-/source.ml/1.7/Fri Jun  7 07:35:38 2002//Tocaml3083
-/source.mli/1.2/Wed Nov 17 18:57:28 1999//Tocaml3083
-/symbols.ml/1.17/Sat Nov  2 22:36:45 2002//Tocaml3083
-/symbols.mli/1.6/Wed Nov 17 18:57:29 1999//Tocaml3083
-/time_travel.ml/1.17/Mon Jun 21 08:39:32 2004//Tocaml3083
-/time_travel.mli/1.5/Tue Oct 29 17:53:24 2002//Tocaml3083
-/trap_barrier.ml/1.3/Wed Nov 17 18:57:29 1999//Tocaml3083
-/trap_barrier.mli/1.2/Wed Nov 17 18:57:29 1999//Tocaml3083
-/unix_tools.ml/1.8/Sat Nov  2 22:36:45 2002//Tocaml3083
-/unix_tools.mli/1.4/Sat Nov  2 22:36:45 2002//Tocaml3083
-D
diff --git a/debugger/CVS/Repository b/debugger/CVS/Repository
deleted file mode 100644 (file)
index 7d36cdb..0000000
+++ /dev/null
@@ -1 +0,0 @@
-csl/debugger
diff --git a/debugger/CVS/Root b/debugger/CVS/Root
deleted file mode 100644 (file)
index c83f52f..0000000
+++ /dev/null
@@ -1 +0,0 @@
-:ext:yquem.inria.fr:/net/yquem/devel/caml/repository
diff --git a/debugger/CVS/Tag b/debugger/CVS/Tag
deleted file mode 100644 (file)
index deaa3ee..0000000
+++ /dev/null
@@ -1 +0,0 @@
-Nocaml3083
index 813fc12aebc7f276beb1fe78be4d63e6c5482be0..aff393a4f8236b202b267656610162d3fc2dea97 100644 (file)
@@ -11,7 +11,7 @@
 (*                                                                     *)
 (***********************************************************************)
 
-(* $Id: program_loading.ml,v 1.6 1999/11/17 18:57:27 xleroy Exp $ *)
+(* $Id: program_loading.ml,v 1.6.16.1 2005/08/02 14:04:13 doligez Exp $ *)
 
 (* Program loading *)
 
@@ -70,8 +70,8 @@ let exec_with_runtime =
     (function () ->
       Printf.sprintf "CAML_DEBUG_SOCKET=%s %s %s %s"
                      !socket_name
-                     runtime_program
-                     !program_name
+                     (Filename.quote runtime_program)
+                     (Filename.quote !program_name)
                      !arguments)
 
 (* Excute the program directly *)
@@ -80,7 +80,7 @@ let exec_direct =
     (function () ->
       Printf.sprintf "CAML_DEBUG_SOCKET=%s %s %s"
                      !socket_name
-                     !program_name
+                     (Filename.quote !program_name)
                      !arguments)
 
 (* Ask the user. *)
diff --git a/driver/CVS/Entries b/driver/CVS/Entries
deleted file mode 100644 (file)
index 10f1f8b..0000000
+++ /dev/null
@@ -1,18 +0,0 @@
-/compile.ml/1.54/Sun Jun 13 12:46:41 2004//Tocaml3083
-/compile.mli/1.8/Sun Jun 13 12:46:41 2004//Tocaml3083
-/errors.ml/1.25/Thu Jun 19 15:53:49 2003//Tocaml3083
-/errors.mli/1.5/Mon Mar  6 22:11:31 2000//Tocaml3083
-/main.ml/1.67/Sun Jun 13 12:46:41 2004//Tocaml3083
-/main.mli/1.1/Fri Jan  7 16:03:04 2000//Tocaml3083
-/main_args.ml/1.42/Thu Jul 17 08:38:27 2003//Tocaml3083
-/main_args.mli/1.25/Thu Jul 17 08:38:27 2003//Tocaml3083
-/ocamlcomp.sh.in/1.2/Sat Jun  8 03:27:50 2002//Tocaml3083
-/optcompile.ml/1.48/Sun Jun 13 12:46:41 2004//Tocaml3083
-/optcompile.mli/1.8/Sun Jun 13 12:46:41 2004//Tocaml3083
-/opterrors.ml/1.18/Thu Jun 19 15:53:49 2003//Tocaml3083
-/opterrors.mli/1.5/Tue Mar  7 05:02:32 2000//Tocaml3083
-/optmain.ml/1.81/Sun Jun 13 12:46:41 2004//Tocaml3083
-/optmain.mli/1.1/Fri Jan  7 16:03:04 2000//Tocaml3083
-/pparse.ml/1.3/Wed Jun 16 16:58:46 2004//Tocaml3083
-/pparse.mli/1.1/Fri Feb  8 10:14:31 2002//Tocaml3083
-D
diff --git a/driver/CVS/Repository b/driver/CVS/Repository
deleted file mode 100644 (file)
index 476986f..0000000
+++ /dev/null
@@ -1 +0,0 @@
-csl/driver
diff --git a/driver/CVS/Root b/driver/CVS/Root
deleted file mode 100644 (file)
index c83f52f..0000000
+++ /dev/null
@@ -1 +0,0 @@
-:ext:yquem.inria.fr:/net/yquem/devel/caml/repository
diff --git a/driver/CVS/Tag b/driver/CVS/Tag
deleted file mode 100644 (file)
index deaa3ee..0000000
+++ /dev/null
@@ -1 +0,0 @@
-Nocaml3083
diff --git a/emacs/CVS/Entries b/emacs/CVS/Entries
deleted file mode 100644 (file)
index 3036c2a..0000000
+++ /dev/null
@@ -1,17 +0,0 @@
-/.cvsignore/1.2/Wed Jan  9 20:38:33 2002//Tocaml3083
-/COPYING/1.1.2.1/Mon Aug  9 16:09:33 2004//Tocaml3083
-/Makefile/1.16.4.1/Mon Aug  9 16:09:33 2004//Tocaml3083
-/README/1.12/Mon Aug  5 02:05:42 2002//Tocaml3083
-/README.itz/1.2/Wed Apr  5 18:30:13 2000//Tocaml3083
-/caml-compat.el/1.2.18.1/Mon Aug  9 16:09:33 2004//Tocaml3083
-/caml-emacs.el/1.6.6.1/Mon Aug  9 16:09:33 2004//Tocaml3083
-/caml-font.el/1.18.2.1/Mon Aug  9 16:09:33 2004//Tocaml3083
-/caml-help.el/1.16.4.1/Mon Aug  9 16:09:33 2004/-kk/Tocaml3083
-/caml-hilit.el/1.8.4.1/Mon Aug  9 16:09:33 2004//Tocaml3083
-/caml-types.el/1.29.6.2/Mon Nov 15 12:50:54 2004//Tocaml3083
-/caml-xemacs.el/1.5.6.2/Tue Nov  2 10:21:03 2004//Tocaml3083
-/caml.el/1.36.4.1/Mon Aug  9 16:09:33 2004//Tocaml3083
-/camldebug.el/1.8.4.1/Mon Aug  9 16:09:33 2004//Tocaml3083
-/inf-caml.el/1.10.8.1/Mon Aug  9 16:09:33 2004//Tocaml3083
-/ocamltags.in/1.5.18.1/Mon Aug  9 16:09:33 2004//Tocaml3083
-D
diff --git a/emacs/CVS/Repository b/emacs/CVS/Repository
deleted file mode 100644 (file)
index 4c35e1f..0000000
+++ /dev/null
@@ -1 +0,0 @@
-csl/emacs
diff --git a/emacs/CVS/Root b/emacs/CVS/Root
deleted file mode 100644 (file)
index c83f52f..0000000
+++ /dev/null
@@ -1 +0,0 @@
-:ext:yquem.inria.fr:/net/yquem/devel/caml/repository
diff --git a/emacs/CVS/Tag b/emacs/CVS/Tag
deleted file mode 100644 (file)
index deaa3ee..0000000
+++ /dev/null
@@ -1 +0,0 @@
-Nocaml3083
index 92735acac2b2ac016ddd066bad7d92a60d69e3ad..97e4d24468c78103f9547c823e3fa87e4247e339 100644 (file)
@@ -10,7 +10,7 @@
 ;(*                                                                     *)
 ;(***********************************************************************)
 
-;(* $Id$ *)
+;(* $Id: caml-help.el,v 1.16.4.1 2004/08/09 16:09:33 doligez Exp $ *)
 
 ;; caml-info.el --- contextual completion and help to caml-mode
 
index 11f870de588e98c92af0d4b8d4aaa951716a0f91..8590723822f4b249af641b861f6248a0e3f17122 100644 (file)
@@ -10,7 +10,7 @@
 ;(*                                                                     *)
 ;(***********************************************************************)
 
-;(* $Id: caml-types.el,v 1.29.6.2 2004/11/15 12:50:54 doligez Exp $ *)
+;(* $Id: caml-types.el,v 1.29.6.4 2005/08/05 12:00:16 doligez Exp $ *)
 
 ; An emacs-lisp complement to the "-dtypes" option of ocamlc and ocamlopt.
 
@@ -128,17 +128,14 @@ See `caml-types-location-re' for annotation file format.
          (type-file (concat (file-name-sans-extension (buffer-file-name))
                             ".annot")))
     (caml-types-preprocess type-file)
-    (unless caml-types-buffer 
-      (setq caml-types-buffer (get-buffer-create caml-types-buffer-name)))
+    (setq caml-types-buffer (get-buffer-create caml-types-buffer-name))
     (let* ((targ-loc (vector target-file target-line target-bol target-cnum))
            (node (caml-types-find-location targ-loc ()
                                            caml-types-annotation-tree)))
       (cond
        ((null node)
-        (delete-overlay caml-types-expr-ovl)
-        (message "Point is not within a typechecked expression or pattern.")
-        ; (with-current-buffer type-buf (narrow-to-region 1 1))
-        )
+         (delete-overlay caml-types-expr-ovl)
+         (message "Point is not within a typechecked expression or pattern."))
        (t
         (let ((left (caml-types-get-pos target-buf (elt node 0)))
               (right (caml-types-get-pos target-buf (elt node 1)))
@@ -426,9 +423,7 @@ The function uses two overlays.
         (progn
           (caml-types-preprocess type-file)
           (setq target-tree caml-types-annotation-tree)
-          (unless caml-types-buffer 
-            (setq caml-types-buffer
-                  (get-buffer-create caml-types-buffer-name)))
+          (setq caml-types-buffer (get-buffer-create caml-types-buffer-name))
           ;; (message "Drag the mouse to explore types")
           (unwind-protect
               (caml-track-mouse
@@ -569,4 +564,10 @@ The function uses two overlays.
                     (min (point-max) (+ end 1)) target-buf)
     (cons start end)))
 
+(defun caml-types-version ()
+  "internal version number of caml-types.el"
+  (interactive)
+  (message "2")
+)
+
 (provide 'caml-types)
diff --git a/lex/CVS/Entries b/lex/CVS/Entries
deleted file mode 100644 (file)
index f7604e6..0000000
+++ /dev/null
@@ -1,25 +0,0 @@
-/.cvsignore/1.5/Mon Apr 22 10:06:01 2002//Tocaml3083
-/.depend/1.13.4.2/Tue Feb 22 14:33:36 2005//Tocaml3083
-/Makefile/1.17/Fri Nov  1 15:31:11 2002//Tocaml3083
-/Makefile.nt/1.9/Mon Jan  6 14:57:22 2003//Tocaml3083
-/common.ml/1.7/Fri Aug 29 17:33:44 2003//Tocaml3083
-/common.mli/1.4/Fri Aug 29 17:33:44 2003//Tocaml3083
-/compact.ml/1.7/Mon Oct 28 16:46:49 2002//Tocaml3083
-/compact.mli/1.4/Mon Oct 28 16:46:49 2002//Tocaml3083
-/cset.ml/1.3/Thu Apr 29 11:12:49 2004//Tocaml3083
-/cset.mli/1.3/Thu Apr 29 11:12:49 2004//Tocaml3083
-/lexer.mli/1.6/Wed Apr 21 23:26:05 2004//Tocaml3083
-/lexer.mll/1.21/Thu Apr 29 11:12:49 2004//Tocaml3083
-/lexgen.ml/1.17/Tue Mar 23 16:57:24 2004//Tocaml3083
-/lexgen.mli/1.5/Mon Oct 28 16:46:49 2002//Tocaml3083
-/main.ml/1.21.2.1/Thu Jul 22 11:00:35 2004//Tocaml3083
-/output.ml/1.25/Thu Feb 12 17:29:04 2004//Tocaml3083
-/output.mli/1.8/Mon Dec  9 10:44:46 2002//Tocaml3083
-/outputbis.ml/1.5/Sat Jul 26 21:06:21 2003//Tocaml3083
-/outputbis.mli/1.3/Mon Dec  9 10:44:46 2002//Tocaml3083
-/parser.mly/1.20/Thu Apr 29 11:12:49 2004//Tocaml3083
-/syntax.ml/1.8/Mon Dec  9 10:44:46 2002//Tocaml3083
-/syntax.mli/1.8/Mon Dec  9 10:44:46 2002//Tocaml3083
-/table.ml/1.1/Mon Oct 28 16:46:50 2002//Tocaml3083
-/table.mli/1.1/Mon Oct 28 16:46:50 2002//Tocaml3083
-D
diff --git a/lex/CVS/Repository b/lex/CVS/Repository
deleted file mode 100644 (file)
index 86f12e8..0000000
+++ /dev/null
@@ -1 +0,0 @@
-csl/lex
diff --git a/lex/CVS/Root b/lex/CVS/Root
deleted file mode 100644 (file)
index c83f52f..0000000
+++ /dev/null
@@ -1 +0,0 @@
-:ext:yquem.inria.fr:/net/yquem/devel/caml/repository
diff --git a/lex/CVS/Tag b/lex/CVS/Tag
deleted file mode 100644 (file)
index deaa3ee..0000000
+++ /dev/null
@@ -1 +0,0 @@
-Nocaml3083
diff --git a/man/CVS/Entries b/man/CVS/Entries
deleted file mode 100644 (file)
index 02e50c7..0000000
+++ /dev/null
@@ -1,15 +0,0 @@
-/Makefile/1.3/Wed Apr 24 09:09:35 2002//Tocaml3083
-/ocaml.help/1.2/Mon Nov 15 16:51:04 1999//Tocaml3083
-/ocaml.m/1.6/Fri Feb  8 10:16:10 2002//Tocaml3083
-/ocamlc.m/1.6.6.2/Thu Jun 24 14:53:42 2004//Tocaml3083
-/ocamlcp.m/1.2/Fri May 10 13:27:19 1996//Tocaml3083
-/ocamldebug.m/1.1/Tue Mar  6 09:59:18 2001//Tocaml3083
-/ocamldep.m/1.3/Fri Jul  6 17:08:10 2001//Tocaml3083
-/ocamldoc.m/1.1.6.2/Fri Jul  9 10:43:11 2004//Tocaml3083
-/ocamllex.m/1.3/Thu Jul 24 08:57:02 2003//Tocaml3083
-/ocamlmktop.m/1.1/Thu Feb 25 14:25:54 1999//Tocaml3083
-/ocamlopt.m/1.7.6.1/Thu Jun 24 13:55:21 2004//Tocaml3083
-/ocamlprof.m/1.2.18.1/Fri Jul  2 09:37:17 2004//Tocaml3083
-/ocamlrun.m/1.4/Thu Apr 15 16:16:55 2004//Tocaml3083
-/ocamlyacc.m/1.2/Fri May 10 13:27:26 1996//Tocaml3083
-D
diff --git a/man/CVS/Repository b/man/CVS/Repository
deleted file mode 100644 (file)
index f3ea2e7..0000000
+++ /dev/null
@@ -1 +0,0 @@
-csl/man
diff --git a/man/CVS/Root b/man/CVS/Root
deleted file mode 100644 (file)
index c83f52f..0000000
+++ /dev/null
@@ -1 +0,0 @@
-:ext:yquem.inria.fr:/net/yquem/devel/caml/repository
diff --git a/man/CVS/Tag b/man/CVS/Tag
deleted file mode 100644 (file)
index deaa3ee..0000000
+++ /dev/null
@@ -1 +0,0 @@
-Nocaml3083
index fbffa7496363bf5bf39a57085bd163eeb60766e7..5dcc0a52bc767ce6a890dabbdd3fa65e8edff88b 100644 (file)
@@ -304,7 +304,7 @@ as the title for the generated documentation.
 .BI \-intro \ file
 Use content of
 .I file
-as ocamldoc text to use as introduction (HTML, \LaTeX and TeXinfo only).
+as ocamldoc text to use as introduction (HTML, LaTeX and TeXinfo only).
 For HTML, the file is used to create the whole "index.html" file.
 
 .TP
diff --git a/ocamldoc/CVS/Entries b/ocamldoc/CVS/Entries
deleted file mode 100644 (file)
index 76c9d26..0000000
+++ /dev/null
@@ -1,77 +0,0 @@
-/.cvsignore/1.3/Fri Nov 21 16:16:14 2003//Tocaml3083
-/.depend/1.24.4.2/Fri Feb 18 16:08:37 2005//Tocaml3083
-/Changes.txt/1.35.2.5/Mon Nov 22 16:25:38 2004//Tocaml3083
-/Makefile/1.55.4.1/Fri Feb 18 16:08:37 2005//Tocaml3083
-/Makefile.nt/1.25/Fri Apr 23 14:10:51 2004//Tocaml3083
-/ocamldoc.hva/1.2.8.1/Fri Jul  9 13:27:48 2004//Tocaml3083
-/ocamldoc.sty/1.3/Fri Oct 11 08:24:13 2002//Tocaml3083
-/odoc.ml/1.7.4.1/Fri Jul  9 10:42:09 2004//Tocaml3083
-/odoc_analyse.ml/1.8.6.1/Fri Aug  6 13:42:16 2004//Tocaml3083
-/odoc_analyse.mli/1.3.6.1/Fri Aug  6 13:42:16 2004//Tocaml3083
-/odoc_args.ml/1.15.6.3/Fri Feb 18 16:08:37 2005//Tocaml3083
-/odoc_args.mli/1.12.6.2/Fri Feb 18 16:08:37 2005//Tocaml3083
-/odoc_ast.ml/1.24/Sat Apr 17 12:36:14 2004//Tocaml3083
-/odoc_ast.mli/1.4/Mon Nov 24 10:39:29 2003//Tocaml3083
-/odoc_class.ml/1.5/Fri Mar 26 15:57:02 2004//Tocaml3083
-/odoc_comments.ml/1.4/Mon Nov 24 10:39:29 2003//Tocaml3083
-/odoc_comments.mli/1.3/Mon Nov 24 10:39:30 2003//Tocaml3083
-/odoc_comments_global.ml/1.2/Mon Nov 24 10:39:30 2003//Tocaml3083
-/odoc_comments_global.mli/1.2/Mon Nov 24 10:39:30 2003//Tocaml3083
-/odoc_config.ml/1.1/Wed Jan 28 13:36:20 2004//Tocaml3083
-/odoc_config.mli/1.1/Wed Jan 28 13:36:20 2004//Tocaml3083
-/odoc_control.ml/1.2/Mon Nov 24 10:39:30 2003//Tocaml3083
-/odoc_cross.ml/1.15/Sun May 23 10:41:49 2004//Tocaml3083
-/odoc_cross.mli/1.2/Mon Nov 24 10:39:30 2003//Tocaml3083
-/odoc_dag2html.ml/1.3/Mon Nov 24 10:39:30 2003//Tocaml3083
-/odoc_dag2html.mli/1.3/Mon Nov 24 10:39:31 2003//Tocaml3083
-/odoc_dep.ml/1.6/Fri Mar  5 14:57:50 2004//Tocaml3083
-/odoc_dot.ml/1.6/Mon Nov 24 10:39:31 2003//Tocaml3083
-/odoc_env.ml/1.7/Sat Jun 12 08:55:46 2004//Tocaml3083
-/odoc_env.mli/1.3/Mon Nov 24 10:39:31 2003//Tocaml3083
-/odoc_exception.ml/1.3/Mon Nov 24 10:39:31 2003//Tocaml3083
-/odoc_global.ml/1.3/Mon Nov 24 10:41:03 2003//Tocaml3083
-/odoc_global.mli/1.2/Mon Nov 24 10:41:03 2003//Tocaml3083
-/odoc_html.ml/1.52.4.2/Fri Aug  6 12:35:07 2004//Tocaml3083
-/odoc_info.ml/1.20.4.1/Fri Aug  6 12:35:07 2004//Tocaml3083
-/odoc_info.mli/1.36.4.3/Fri Feb 18 16:08:37 2005//Tocaml3083
-/odoc_inherit.ml/1.2/Mon Nov 24 10:41:04 2003//Tocaml3083
-/odoc_latex.ml/1.36.2.2/Fri Aug  6 12:35:07 2004//Tocaml3083
-/odoc_latex_style.ml/1.5/Fri Jun 11 14:25:50 2004//Tocaml3083
-/odoc_lexer.mll/1.4/Mon Nov 24 10:41:04 2003//Tocaml3083
-/odoc_man.ml/1.22.4.1/Fri Feb 18 16:08:37 2005//Tocaml3083
-/odoc_merge.ml/1.10/Sun Jan 18 14:26:14 2004//Tocaml3083
-/odoc_merge.mli/1.3/Mon Nov 24 10:41:05 2003//Tocaml3083
-/odoc_messages.ml/1.24.4.4/Fri Feb 18 16:08:37 2005//Tocaml3083
-/odoc_misc.ml/1.17.4.2/Fri Oct  1 09:43:24 2004//Tocaml3083
-/odoc_misc.mli/1.10.4.2/Fri Oct  1 09:43:24 2004//Tocaml3083
-/odoc_module.ml/1.9.4.1/Fri Jun 25 13:39:17 2004//Tocaml3083
-/odoc_name.ml/1.9/Fri Mar 26 09:09:50 2004//Tocaml3083
-/odoc_name.mli/1.4/Fri Mar 26 09:09:50 2004//Tocaml3083
-/odoc_ocamlhtml.mll/1.9/Sun Mar 14 13:52:01 2004//Tocaml3083
-/odoc_opt.ml/1.5/Tue Aug 13 14:09:23 2002//Tocaml3083
-/odoc_parameter.ml/1.8/Fri Apr  2 15:10:57 2004//Tocaml3083
-/odoc_parser.mly/1.3/Mon Nov 24 10:43:11 2003//Tocaml3083
-/odoc_print.ml/1.3/Tue May 18 13:28:00 2004//Tocaml3083
-/odoc_print.mli/1.2/Fri Mar 26 09:09:50 2004//Tocaml3083
-/odoc_scan.ml/1.3/Mon Nov 24 10:43:11 2003//Tocaml3083
-/odoc_search.ml/1.6/Sun May 23 10:41:50 2004//Tocaml3083
-/odoc_search.mli/1.4/Mon Nov 24 10:43:12 2003//Tocaml3083
-/odoc_see_lexer.mll/1.3/Mon Nov 24 10:43:12 2003//Tocaml3083
-/odoc_sig.ml/1.30.2.3/Fri Oct  1 09:43:24 2004//Tocaml3083
-/odoc_sig.mli/1.5/Mon Nov 24 10:43:12 2003//Tocaml3083
-/odoc_str.ml/1.9.4.2/Wed Nov  3 08:16:49 2004//Tocaml3083
-/odoc_str.mli/1.5.4.1/Fri Aug  6 12:35:07 2004//Tocaml3083
-/odoc_test.ml/1.1/Fri Feb 20 16:28:27 2004//Tocaml3083
-/odoc_texi.ml/1.17.4.1/Fri Jul  2 12:59:48 2004//Tocaml3083
-/odoc_text.ml/1.5/Sun May 23 10:41:50 2004//Tocaml3083
-/odoc_text.mli/1.3/Mon Nov 24 21:20:51 2003//Tocaml3083
-/odoc_text_lexer.mll/1.8/Sun May 23 10:41:50 2004//Tocaml3083
-/odoc_text_parser.mly/1.4/Sun May 23 10:41:50 2004//Tocaml3083
-/odoc_to_text.ml/1.14.4.2/Fri Aug  6 12:35:07 2004//Tocaml3083
-/odoc_type.ml/1.5/Mon Nov 24 10:44:07 2003//Tocaml3083
-/odoc_types.ml/1.7/Sun May 23 10:41:51 2004//Tocaml3083
-/odoc_types.mli/1.5/Sun May 23 10:41:51 2004//Tocaml3083
-/odoc_value.ml/1.5.6.1/Fri Jul  2 12:59:49 2004//Tocaml3083
-/remove_DEBUG/1.3/Thu Apr 15 16:18:52 2004//Tocaml3083
-/runocamldoc/1.6/Tue Jul 23 14:11:53 2002//Tocaml3083
-D
diff --git a/ocamldoc/CVS/Repository b/ocamldoc/CVS/Repository
deleted file mode 100644 (file)
index a250fea..0000000
+++ /dev/null
@@ -1 +0,0 @@
-csl/ocamldoc
diff --git a/ocamldoc/CVS/Root b/ocamldoc/CVS/Root
deleted file mode 100644 (file)
index c83f52f..0000000
+++ /dev/null
@@ -1 +0,0 @@
-:ext:yquem.inria.fr:/net/yquem/devel/caml/repository
diff --git a/ocamldoc/CVS/Tag b/ocamldoc/CVS/Tag
deleted file mode 100644 (file)
index deaa3ee..0000000
+++ /dev/null
@@ -1 +0,0 @@
-Nocaml3083
index ce6bf4e543aa9ee945ae996ea327486c090a4712..2863ce7aa0c13f84bde69f7b55529110bded1d0f 100644 (file)
@@ -3,6 +3,12 @@ TODO:
  - latex: types variant polymorphes dépassent de la page quand ils sont trop longs
  - utilisation nouvelles infos de Xavier: "début de rec", etc.
 
+=====
+Next release:
+ - some improvements in html display
+ - better error messages for misplaced variant constructors comments
+ - some fixes in man page generation (escaping characters)
+
 =====
 Release 3.08.2:
  - fix: error "Lexing: empty token" (PR#3173)
@@ -47,16 +53,16 @@ Release 3.08.0:
  - new module odoc_print, will work when Format.pp_print_flush is fixed
  - odoc_html: use buffers instead of string concatenation
  - odoc_man: use buffers instead of string concatenation
- - odoc_cross.ml: use hash tables modified on the fly to resolve 
+ - odoc_cross.ml: use hash tables modified on the fly to resolve
     (module | module type | exception) name aliases
  - odoc_html: replace some calls to Str. by specific functions on strings
  - odoc_cross.ml: use a Map to associate a complete name to
     the known elements with this name, instead of searching each time
     through the whole list of modules -> a gain of more than 90% in speed
     for cross-referencing (Odoc_cross.associate)
- - fix: Odoc_name.cut printed a '(' instead of a '.' 
+ - fix: Odoc_name.cut printed a '(' instead of a '.'
  - add: new option -customdir
- - add: new option -i (to add a path to the directory where 
+ - add: new option -i (to add a path to the directory where
      to look for custom generators)
  - add: add odoc_config.ml{,i}
  - add: keep_code in Odoc_info.Args interface
@@ -65,7 +71,7 @@ Release 3.08.0:
    only toplevel ones
  - fix: bug preventing to get the code in a .mli
  - fix: missing spaces after carriage return in types (Odoc_misc.string_of_type_expr)
- - fixes: some bugs in the text parser 
+ - fixes: some bugs in the text parser
      ( ]} meaning end of code and somehting else instead of end of precode)
  - add: in Odoc_info: text_of_string, text_string_of_text, info_of_string
  - fix: better output of titles in html (use more the style)
@@ -128,10 +134,10 @@ Pre-release 4 :
  - improved display of variant constructors, record fields and
    their comments in classic HTML
  - blank lines in comments become <p> in HTML instead of <br>
- - bug fix : there can be blanks between the last item 
+ - bug fix : there can be blanks between the last item
    and the ending } of a list
  - new option -latextitles
- - number of errors encountered is displayed 
+ - number of errors encountered is displayed
  - if at least one error occurs, exit code is not 0
  - more precise error messages
  - bug fix : \n and other blanks are accepted after, for example, {i
index 84e37ba4936077e860a947b556bf7039c4f4deee..339c8380f528579148202f8d1ebc1ab00aac6442 100644 (file)
@@ -9,7 +9,7 @@
 (*                                                                     *)
 (***********************************************************************)
 
-(* $Id: odoc_analyse.ml,v 1.8.6.1 2004/08/06 13:42:16 guesdon Exp $ *)
+(* $Id: odoc_analyse.ml,v 1.8.6.2 2005/06/23 14:47:52 guesdon Exp $ *)
 
 (** Analysis of source files. This module is strongly inspired from driver/main.ml :-) *)
 
@@ -150,8 +150,8 @@ module Sig_analyser = Odoc_sig.Analyser (Odoc_comments.Basic_info_retriever)
 (** Handle an error. This is a partial copy of the compiler
    driver/error.ml file. We do this because there are
    some differences between the possibly raised exceptions
-   in the bytecode (error.ml) and opt (opterros.ml) compilers 
-   and we don't want to take care of this. Besisdes, this 
+   in the bytecode (error.ml) and opt (opterros.ml) compilers
+   and we don't want to take care of this. Besisdes, this
    differences only concern code generation (i believe).*)
 let process_error exn =
   let report ppf = function
@@ -185,15 +185,15 @@ let process_error exn =
       Location.print ppf loc; Translclass.report_error ppf err
   | Warnings.Errors (n) ->
       fprintf ppf "@.Error: %d error-enabled warnings occurred." n
-  | x -> 
-      fprintf ppf "@]"; 
+  | x ->
+      fprintf ppf "@]";
       fprintf ppf "Compilation error. Use the OCaml compiler to get more details."
   in
   Format.fprintf Format.err_formatter "@[%a@]@." report exn
 
 (** Process the given file, according to its extension. Return the Module.t created, if any.*)
 let process_file ppf sourcefile =
-  if !Odoc_args.verbose then 
+  if !Odoc_args.verbose then
     (
      let f = match sourcefile with Odoc_args.Impl_file f | Odoc_args.Intf_file f -> f in
      print_string (Odoc_messages.analysing f) ;
@@ -209,11 +209,11 @@ let process_file ppf sourcefile =
              None
         | Some (parsetree, typedtree) ->
              let file_module = Ast_analyser.analyse_typed_tree file
-                !Location.input_name parsetree typedtree 
+                !Location.input_name parsetree typedtree
             in
              file_module.Odoc_module.m_top_deps <- Odoc_dep.impl_dependencies parsetree ;
 
-             if !Odoc_args.verbose then 
+             if !Odoc_args.verbose then
                (
                print_string Odoc_messages.ok;
                print_newline ()
@@ -221,7 +221,7 @@ let process_file ppf sourcefile =
              remove_preprocessed input_file;
              Some file_module
        with
-       | Sys_error s 
+       | Sys_error s
        | Failure s ->
            prerr_endline s ;
            incr Odoc_global.errors ;
@@ -236,12 +236,12 @@ let process_file ppf sourcefile =
        try
          let (ast, signat, input_file) = process_interface_file ppf file in
          let file_module = Sig_analyser.analyse_signature file
-            !Location.input_name ast signat 
+            !Location.input_name ast signat
         in
 
          file_module.Odoc_module.m_top_deps <- Odoc_dep.intf_dependencies ast ;
 
-         if !Odoc_args.verbose then 
+         if !Odoc_args.verbose then
            (
             print_string Odoc_messages.ok;
             print_newline ()
@@ -249,7 +249,7 @@ let process_file ppf sourcefile =
          remove_preprocessed input_file;
          Some file_module
        with
-       | Sys_error s 
+       | Sys_error s
        | Failure s ->
            prerr_endline s;
            incr Odoc_global.errors ;
@@ -260,107 +260,142 @@ let process_file ppf sourcefile =
            None
       )
 
-(** Remove the class elements after the stop special comment. *)
-let rec remove_class_elements_after_stop eles =
+(** Remove the class elements between the stop special comments. *)
+let rec remove_class_elements_between_stop keep eles =
   match eles with
     [] -> []
   | ele :: q ->
       match ele with
-        Odoc_class.Class_comment [ Odoc_types.Raw "/*" ] -> []
-      | Odoc_class.Class_attribute _ 
-      | Odoc_class.Class_method _ 
-      | Odoc_class.Class_comment _ -> ele :: (remove_class_elements_after_stop q)
-
-(** Remove the class elements after the stop special comment in a class kind. *)
-let rec remove_class_elements_after_stop_in_class_kind k =
+        Odoc_class.Class_comment [ Odoc_types.Raw "/*" ] ->
+         remove_class_elements_between_stop (not keep) q
+      | Odoc_class.Class_attribute _
+      | Odoc_class.Class_method _
+      | Odoc_class.Class_comment _ ->
+         if keep then
+           ele :: (remove_class_elements_between_stop keep q)
+         else
+           remove_class_elements_between_stop keep q
+
+(** Remove the class elements between the stop special comments in a class kind. *)
+let rec remove_class_elements_between_stop_in_class_kind k =
   match k with
     Odoc_class.Class_structure (inher, l) ->
-      Odoc_class.Class_structure (inher, remove_class_elements_after_stop l)
+      Odoc_class.Class_structure (inher, remove_class_elements_between_stop true l)
   | Odoc_class.Class_apply _ -> k
   | Odoc_class.Class_constr _ -> k
   | Odoc_class.Class_constraint (k1, ctk) ->
-      Odoc_class.Class_constraint (remove_class_elements_after_stop_in_class_kind k1,
-                        remove_class_elements_after_stop_in_class_type_kind ctk)
+      Odoc_class.Class_constraint (remove_class_elements_between_stop_in_class_kind k1,
+                        remove_class_elements_between_stop_in_class_type_kind ctk)
 
-(** Remove the class elements after the stop special comment in a class type kind. *)
-and remove_class_elements_after_stop_in_class_type_kind tk =
+(** Remove the class elements beetween the stop special comments in a class type kind. *)
+and remove_class_elements_between_stop_in_class_type_kind tk =
   match tk with
     Odoc_class.Class_signature (inher, l) ->
-      Odoc_class.Class_signature (inher, remove_class_elements_after_stop l)
+      Odoc_class.Class_signature (inher, remove_class_elements_between_stop true l)
   | Odoc_class.Class_type _ -> tk
 
 
-(** Remove the module elements after the stop special comment. *)
-let rec remove_module_elements_after_stop eles =
-  let f = remove_module_elements_after_stop in
+(** Remove the module elements between the stop special comments. *)
+let rec remove_module_elements_between_stop keep eles =
+  let f = remove_module_elements_between_stop in
   match eles with
     [] -> []
   | ele :: q ->
       match ele with
-        Odoc_module.Element_module_comment [ Odoc_types.Raw "/*" ] -> []
+        Odoc_module.Element_module_comment [ Odoc_types.Raw "/*" ] ->
+         f (not keep) q
       | Odoc_module.Element_module_comment _ ->
-          ele :: (f q)
+          if keep then
+           ele :: (f keep q)
+         else
+           f keep q
       | Odoc_module.Element_module m ->
-          m.Odoc_module.m_kind <- remove_module_elements_after_stop_in_module_kind m.Odoc_module.m_kind ;
-          (Odoc_module.Element_module m) :: (f q)
+         if keep then
+            (
+            m.Odoc_module.m_kind <- remove_module_elements_between_stop_in_module_kind m.Odoc_module.m_kind ;
+             (Odoc_module.Element_module m) :: (f keep q)
+           )
+         else
+           f keep q
       | Odoc_module.Element_module_type mt ->
-          mt.Odoc_module.mt_kind <- Odoc_misc.apply_opt 
-              remove_module_elements_after_stop_in_module_type_kind mt.Odoc_module.mt_kind ;
-          (Odoc_module.Element_module_type mt) :: (f q)
+         if keep then
+           (
+             mt.Odoc_module.mt_kind <- Odoc_misc.apply_opt
+                remove_module_elements_between_stop_in_module_type_kind mt.Odoc_module.mt_kind ;
+             (Odoc_module.Element_module_type mt) :: (f keep q)
+           )
+         else
+           f keep q
       | Odoc_module.Element_included_module _ ->
-          ele :: (f q)
+         if keep then
+            ele :: (f keep q)
+         else
+           f keep q
       | Odoc_module.Element_class c ->
-          c.Odoc_class.cl_kind <- remove_class_elements_after_stop_in_class_kind c.Odoc_class.cl_kind ;
-          (Odoc_module.Element_class c) :: (f q)
+         if keep then
+           (
+             c.Odoc_class.cl_kind <- remove_class_elements_between_stop_in_class_kind c.Odoc_class.cl_kind ;
+             (Odoc_module.Element_class c) :: (f keep q)
+           )
+         else
+           f keep q
       | Odoc_module.Element_class_type ct ->
-          ct.Odoc_class.clt_kind <- remove_class_elements_after_stop_in_class_type_kind ct.Odoc_class.clt_kind ;
-          (Odoc_module.Element_class_type ct) :: (f q)
+          if keep then
+           (
+            ct.Odoc_class.clt_kind <- remove_class_elements_between_stop_in_class_type_kind ct.Odoc_class.clt_kind ;
+             (Odoc_module.Element_class_type ct) :: (f keep q)
+           )
+         else
+           f keep q
       | Odoc_module.Element_value _
       | Odoc_module.Element_exception _
       | Odoc_module.Element_type _ ->
-          ele :: (f q)
+         if keep then
+            ele :: (f keep q)
+         else
+           f keep q
 
 
-(** Remove the module elements after the stop special comment, in the given module kind. *)
-and remove_module_elements_after_stop_in_module_kind k =
+(** Remove the module elements between the stop special comments, in the given module kind. *)
+and remove_module_elements_between_stop_in_module_kind k =
   match k with
-  | Odoc_module.Module_struct l -> Odoc_module.Module_struct (remove_module_elements_after_stop l)
+  | Odoc_module.Module_struct l -> Odoc_module.Module_struct (remove_module_elements_between_stop true l)
   | Odoc_module.Module_alias _ -> k
   | Odoc_module.Module_functor (params, k2)  ->
-      Odoc_module.Module_functor (params, remove_module_elements_after_stop_in_module_kind k2)
+      Odoc_module.Module_functor (params, remove_module_elements_between_stop_in_module_kind k2)
   | Odoc_module.Module_apply (k1, k2) ->
-      Odoc_module.Module_apply (remove_module_elements_after_stop_in_module_kind k1, 
-                    remove_module_elements_after_stop_in_module_kind k2)
+      Odoc_module.Module_apply (remove_module_elements_between_stop_in_module_kind k1,
+                    remove_module_elements_between_stop_in_module_kind k2)
   | Odoc_module.Module_with (mtkind, s) ->
-      Odoc_module.Module_with (remove_module_elements_after_stop_in_module_type_kind mtkind, s)
+      Odoc_module.Module_with (remove_module_elements_between_stop_in_module_type_kind mtkind, s)
   | Odoc_module.Module_constraint (k2, mtkind) ->
-      Odoc_module.Module_constraint (remove_module_elements_after_stop_in_module_kind k2, 
-                         remove_module_elements_after_stop_in_module_type_kind mtkind)
+      Odoc_module.Module_constraint (remove_module_elements_between_stop_in_module_kind k2,
+                         remove_module_elements_between_stop_in_module_type_kind mtkind)
 
-(** Remove the module elements after the stop special comment, in the given module type kind. *)
-and remove_module_elements_after_stop_in_module_type_kind tk =
+(** Remove the module elements between the stop special comment, in the given module type kind. *)
+and remove_module_elements_between_stop_in_module_type_kind tk =
   match tk with
-  | Odoc_module.Module_type_struct l -> Odoc_module.Module_type_struct (remove_module_elements_after_stop l)
+  | Odoc_module.Module_type_struct l -> Odoc_module.Module_type_struct (remove_module_elements_between_stop true l)
   | Odoc_module.Module_type_functor (params, tk2) ->
-      Odoc_module.Module_type_functor (params, remove_module_elements_after_stop_in_module_type_kind tk2)
+      Odoc_module.Module_type_functor (params, remove_module_elements_between_stop_in_module_type_kind tk2)
   | Odoc_module.Module_type_alias _ -> tk
   | Odoc_module.Module_type_with (tk2, s) ->
-      Odoc_module.Module_type_with (remove_module_elements_after_stop_in_module_type_kind tk2, s)
+      Odoc_module.Module_type_with (remove_module_elements_between_stop_in_module_type_kind tk2, s)
 
 
-(** Remove elements after the stop special comment. *)
-let remove_elements_after_stop module_list =
+(** Remove elements between the stop special comment. *)
+let remove_elements_between_stop module_list =
   List.map
-    (fun m -> 
-      m.Odoc_module.m_kind <- remove_module_elements_after_stop_in_module_kind m.Odoc_module.m_kind; 
+    (fun m ->
+      m.Odoc_module.m_kind <- remove_module_elements_between_stop_in_module_kind m.Odoc_module.m_kind;
       m
     )
     module_list
 
 (** This function builds the modules from the given list of source files. *)
 let analyse_files ?(init=[]) files =
-  let modules_pre = 
-    init @ 
+  let modules_pre =
+    init @
     (List.fold_left
        (fun acc -> fun file ->
          try
@@ -379,12 +414,12 @@ let analyse_files ?(init=[]) files =
        files
     )
   in
-  (* Remove elements after the stop special comments, if needed. *)
-  let modules = 
+  (* Remove elements between the stop special comments, if needed. *)
+  let modules =
     if !Odoc_args.no_stop then
       modules_pre
     else
-      remove_elements_after_stop modules_pre 
+      remove_elements_between_stop modules_pre
   in
 
 
@@ -399,7 +434,7 @@ let analyse_files ?(init=[]) files =
      print_string Odoc_messages.ok;
      print_newline ();
     );
-  let modules_list = 
+  let modules_list =
     (List.fold_left
        (fun acc -> fun m -> acc @ (Odoc_module.module_all_submodules ~trans: false m))
        merged_modules
@@ -446,4 +481,4 @@ let load_modules file =
       raise (Failure s)
 
 
-(* eof $Id: odoc_analyse.ml,v 1.8.6.1 2004/08/06 13:42:16 guesdon Exp $ *)
+(* eof $Id: odoc_analyse.ml,v 1.8.6.2 2005/06/23 14:47:52 guesdon Exp $ *)
index 135a6dff5bbd3b08cad44d5c5d1d1f0edf405b19..43e75db7c3b0873251f6bbe301e41b8b0e7c8dac 100644 (file)
@@ -9,18 +9,18 @@
 (*                                                                     *)
 (***********************************************************************)
 
-(* $Id: odoc_html.ml,v 1.52.4.2 2004/08/06 12:35:07 guesdon Exp $ *)
+(* $Id: odoc_html.ml,v 1.52.4.3 2005/07/07 13:40:29 guesdon Exp $ *)
 
 (** Generation of html documentation. *)
 
 let print_DEBUG s = print_string s ; print_newline ()
 
-open Odoc_info 
+open Odoc_info
 open Parameter
 open Value
 open Type
 open Exception
-open Class 
+open Class
 open Module
 
 
@@ -61,9 +61,9 @@ module Naming =
     let target pref simple_name = pref^simple_name
 
     (** Return the complete link target (file#target) for the given prefix string and complete name.*)
-    let complete_target pref complete_name = 
+    let complete_target pref complete_name =
       let simple_name = Name.simple complete_name in
-      let module_name = 
+      let module_name =
         let s = Name.father complete_name in
         if s = "" then simple_name else s
       in
@@ -81,7 +81,7 @@ module Naming =
 
     (** Return the complete link target for the given exception. *)
     let complete_exception_target e = complete_target mark_exception e.ex_name
-    
+
     (** Return the link target for the given value. *)
     let value_target v = target mark_value (Name.simple v.val_name)
 
@@ -118,7 +118,7 @@ module Naming =
     let complete_value_target v = complete_target mark_value v.val_name
 
     (** Return the complete filename for the code of the given value. *)
-    let file_code_value_complete_target v = 
+    let file_code_value_complete_target v =
       let f = code_prefix^mark_value^(subst_infix_symbols v.val_name)^".html" in
       f
 
@@ -129,7 +129,7 @@ module Naming =
     let complete_attribute_target a = complete_target mark_attribute a.att_value.val_name
 
     (** Return the complete filename for the code of the given attribute. *)
-    let file_code_attribute_complete_target a = 
+    let file_code_attribute_complete_target a =
       let f = code_prefix^mark_attribute^a.att_value.val_name^".html" in
       f
 
@@ -140,7 +140,7 @@ module Naming =
     let complete_method_target m = complete_target mark_method m.met_value.val_name
 
     (** Return the complete filename for the code of the given method. *)
-    let file_code_method_complete_target m = 
+    let file_code_method_complete_target m =
       let f = code_prefix^mark_method^m.met_value.val_name^".html" in
       f
 
@@ -150,21 +150,21 @@ module Naming =
     (** Return the complete link target for the given section label. *)
     let complete_label_target l = complete_target "" l
 
-    (** Return the complete filename for the code of the type of the 
+    (** Return the complete filename for the code of the type of the
        given module or module type name. *)
-    let file_type_module_complete_target name = 
+    let file_type_module_complete_target name =
       let f = type_prefix^name^".html" in
       f
 
-    (** Return the complete filename for the code of the 
+    (** Return the complete filename for the code of the
        given module name. *)
-    let file_code_module_complete_target name = 
+    let file_code_module_complete_target name =
       let f = code_prefix^name^".html" in
       f
 
-    (** Return the complete filename for the code of the type of the 
+    (** Return the complete filename for the code of the type of the
        given class or class type name. *)
-    let file_type_class_complete_target name = 
+    let file_type_class_complete_target name =
       let f = type_prefix^name^".html" in
       f
   end
@@ -175,7 +175,7 @@ module StringSet = Set.Make (struct type t = string let compare = compare end)
 class ocaml_code =
   object(self)
     method html_of_code b ?(with_pre=true) code =
-      Odoc_ocamlhtml.html_of_code b ~with_pre: with_pre code 
+      Odoc_ocamlhtml.html_of_code b ~with_pre: with_pre code
   end
 
 let new_buf () = Buffer.create 1024
@@ -187,7 +187,7 @@ let bs = Buffer.add_string
 class virtual text =
   object (self)
     (** We want to display colorized code. *)
-    inherit ocaml_code 
+    inherit ocaml_code
 
     (** Escape the strings which would clash with html syntax, and
        make some replacements (double newlines replaced by <br>). *)
@@ -210,7 +210,7 @@ class virtual text =
       let s2 = self#keep_alpha_num s in
       s2
 
-    (** Create a label for the associated title. 
+    (** Create a label for the associated title.
        Return the label specified by the user or a label created
        from the title level and the first sentence of the title. *)
     method create_title_label (n,label_opt,t) =
@@ -219,7 +219,7 @@ class virtual text =
       | None -> Printf.sprintf "%d_%s" n (self#label_of_text t)
 
     (** Print the html code corresponding to the [text] parameter. *)
-    method html_of_text b t = 
+    method html_of_text b t =
       List.iter (self#html_of_text_element b) t
 
     (** Print the html code for the [text_element] in parameter. *)
@@ -231,7 +231,7 @@ class virtual text =
       | Odoc_info.CodePre s -> self#html_of_CodePre b s
       | Odoc_info.Verbatim s -> self#html_of_Verbatim b s
       | Odoc_info.Bold t -> self#html_of_Bold b t
-      | Odoc_info.Italic t -> self#html_of_Italic b t 
+      | Odoc_info.Italic t -> self#html_of_Italic b t
       | Odoc_info.Emphasize t -> self#html_of_Emphasize b t
       | Odoc_info.Center t -> self#html_of_Center b t
       | Odoc_info.Left t -> self#html_of_Left b t
@@ -258,16 +258,42 @@ class virtual text =
        (
         bs b "<code class=\"";
         bs b Odoc_ocamlhtml.code_class ;
-        bs b "\">"; 
+        bs b "\">";
         bs b (self#escape s);
         bs b "</code>"
        )
 
-    method html_of_CodePre b s =
+    method html_of_CodePre =
+       let remove_useless_newlines s =
+         let len = String.length s in
+         let rec iter_first n =
+           if n >= len then
+             None
+           else
+             match s.[n] with
+             | '\n' -> iter_first (n+1)
+             | _ -> Some n
+         in
+         match iter_first 0 with
+           None -> ""
+         | Some first ->
+             let rec iter_last n =
+               if n <= first then
+                 None
+               else
+                 match s.[n] with
+                   '\t'  -> iter_last (n-1)
+                 | _ -> Some n
+             in
+             match iter_last (len-1) with
+               None -> String.sub s first 1
+             | Some last -> String.sub s first ((last-first)+1)
+       in
+       fun b s ->
       if !Args.colorize_code then
        (
          bs b "<pre></pre>";
-        self#html_of_code b s;
+        self#html_of_code b (remove_useless_newlines s);
         bs b "<pre></pre>"
        )
       else
@@ -275,56 +301,56 @@ class virtual text =
         bs b "<pre><code class=\"";
         bs b Odoc_ocamlhtml.code_class;
         bs b "\">" ;
-        bs b (self#escape s);
+        bs b (self#escape (remove_useless_newlines s));
         bs b "</code></pre>"
        )
 
-    method html_of_Verbatim b s = 
+    method html_of_Verbatim b s =
       bs b "<pre>";
       bs b (self#escape s);
       bs b "</pre>"
 
-    method html_of_Bold b t = 
+    method html_of_Bold b t =
       bs b "<b>";
       self#html_of_text b t;
       bs b "</b>"
 
-    method html_of_Italic b t = 
+    method html_of_Italic b t =
       bs b "<i>" ;
       self#html_of_text b t;
       bs b "</i>"
 
-    method html_of_Emphasize b t = 
+    method html_of_Emphasize b t =
       bs b "<em>" ;
       self#html_of_text b t ;
       bs b "</em>"
 
-    method html_of_Center b t = 
+    method html_of_Center b t =
       bs b "<center>";
       self#html_of_text b t;
       bs b "</center>"
 
-    method html_of_Left b t = 
+    method html_of_Left b t =
       bs b "<div align=left>";
       self#html_of_text b t;
       bs b "</div>"
 
-    method html_of_Right b t = 
+    method html_of_Right b t =
       bs b "<div align=right>";
       self#html_of_text b t;
       bs b "</div>"
 
-    method html_of_List b tl = 
+    method html_of_List b tl =
       bs b "<ul>\n";
-      List.iter 
+      List.iter
        (fun t -> bs b "<li>"; self#html_of_text b t; bs b "</li>\n")
        tl;
       bs b "</ul>\n"
 
     method html_of_Enum b tl =
       bs b "<OL>\n";
-      List.iter 
-       (fun t -> bs b "<li>"; self#html_of_text b t; bs b"</li>\n") 
+      List.iter
+       (fun t -> bs b "<li>"; self#html_of_text b t; bs b"</li>\n")
        tl;
       bs b "</OL>\n"
 
@@ -340,7 +366,7 @@ class virtual text =
       bs b "<a name=\"";
       bs b (Naming.label_target label1);
       bs b "\"></a>\n";
-      let (tag_o, tag_c) = 
+      let (tag_o, tag_c) =
        if n > 6 then
          (Printf.sprintf "div class=\"h%d\"" n, "div")
        else
@@ -366,13 +392,13 @@ class virtual text =
 
     method html_of_Ref b name ref_opt =
       match ref_opt with
-        None -> 
+        None ->
           self#html_of_text_element b (Odoc_info.Code name)
       | Some kind ->
          let h name = Odoc_info.Code (Odoc_info.use_hidden_modules name) in
-          let (target, text) = 
+          let (target, text) =
             match kind with
-              Odoc_info.RK_module 
+              Odoc_info.RK_module
             | Odoc_info.RK_module_type
             | Odoc_info.RK_class
             | Odoc_info.RK_class_type ->
@@ -407,8 +433,8 @@ class virtual text =
          bs b "<tr><td>";
          (
           try
-            let m = 
-              List.find (fun m -> m.m_name = name) self#list_modules 
+            let m =
+              List.find (fun m -> m.m_name = name) self#list_modules
             in
             let (html, _) = Naming.html_files m.m_name in
             bp b "<a href=\"%s\">%s</a></td>" html m.m_name;
@@ -465,7 +491,7 @@ class virtual text =
 class virtual info =
   object (self)
     (** The list of pairs [(tag, f)] where [f] is a function taking
-       the [text] associated to [tag] and returning html code. 
+       the [text] associated to [tag] and returning html code.
        Add a pair here to handle a tag.*)
     val mutable tag_functions = ([] : (string * (Odoc_info.text -> string)) list)
 
@@ -485,21 +511,21 @@ class virtual info =
     method html_of_version_opt b v_opt =
       match v_opt with
         None -> ()
-      | Some v -> 
+      | Some v ->
           bp b "<b>%s:</b> %s<br>\n" Odoc_messages.version v
 
     (** Print html code for the given optional since information.*)
     method html_of_since_opt b s_opt =
       match s_opt with
         None -> ()
-      | Some s -> 
+      | Some s ->
          bp b "<b>%s</b> %s<br>\n" Odoc_messages.since s
 
     (** Print html code for the given list of raised exceptions.*)
     method html_of_raised_exceptions b l =
       match l with
         [] -> ()
-      | (s, t) :: [] -> 
+      | (s, t) :: [] ->
          bp b "<b>%s</b> <code>%s</code> "
            Odoc_messages.raises
            s;
@@ -508,7 +534,7 @@ class virtual info =
       | _ ->
           bp b "<b>%s</b><ul>" Odoc_messages.raises;
          List.iter
-            (fun (ex, desc) -> 
+            (fun (ex, desc) ->
              bp b "<li><code>%s</code> " ex ;
              self#html_of_text b desc;
              bs b "</li>\n"
@@ -518,7 +544,7 @@ class virtual info =
 
     (** Print html code for the given "see also" reference. *)
     method html_of_see b (see_ref, t)  =
-      let t_ref = 
+      let t_ref =
         match see_ref with
           Odoc_info.See_url s -> [ Odoc_info.Link (s, t) ]
         | Odoc_info.See_file s -> (Odoc_info.Code s) :: (Odoc_info.Raw " ") :: t
@@ -530,14 +556,14 @@ class virtual info =
     method html_of_sees b l =
       match l with
         [] -> ()
-      | see :: [] -> 
+      | see :: [] ->
          bp b "<b>%s</b> " Odoc_messages.see_also;
          self#html_of_see b see;
          bs b "<br>\n"
       | _ ->
           bp b "<b>%s</b><ul>" Odoc_messages.see_also;
           List.iter
-            (fun see -> 
+            (fun see ->
              bs b "<li>" ;
              self#html_of_see b see;
              bs b "</li>\n"
@@ -549,10 +575,10 @@ class virtual info =
     method html_of_return_opt b return_opt =
       match return_opt with
         None -> ()
-      | Some s -> 
+      | Some s ->
          bp b "<b>%s</b> " Odoc_messages.returns;
          self#html_of_text b s;
-         bs b "<br>\n" 
+         bs b "<br>\n"
 
     (** Print html code for the given list of custom tagged texts. *)
     method html_of_custom b l =
@@ -567,7 +593,7 @@ class virtual info =
         )
         l
 
-    (** Print html code for a description, except for the [i_params] field. 
+    (** Print html code for a description, except for the [i_params] field.
        @param indent can be specified not to use the style of info comments;
        default is [true].
     *)
@@ -581,12 +607,12 @@ class virtual info =
           (
           match info.M.i_deprecated with
             None -> ()
-           | Some d -> 
+           | Some d ->
                bs b "<span class=\"warning\">";
               bs b Odoc_messages.deprecated ;
               bs b "</span>" ;
               self#html_of_text b d;
-               bs b "<br>\n" 
+               bs b "<br>\n"
           );
           (
           match info.M.i_desc with
@@ -603,7 +629,7 @@ class virtual info =
           self#html_of_custom b info.M.i_custom;
           if indent then bs b "</div>\n"
 
-    (** Print html code for the first sentence of a description. 
+    (** Print html code for the first sentence of a description.
        The titles and lists in this first sentence has been removed.*)
     method html_of_info_first_sentence b info_opt =
       match info_opt with
@@ -617,7 +643,7 @@ class virtual info =
           match info.M.i_desc with
              None -> ()
            | Some d when d = [Odoc_info.Raw ""] -> ()
-           | Some d -> 
+           | Some d ->
               self#html_of_text b
                  (Odoc_info.text_no_title_no_list
                     (Odoc_info.first_sentence_of_text d));
@@ -666,7 +692,7 @@ class html =
         "a:hover {color : Red; text-decoration : none; background-color: #5FFF88}" ;
         "a:active {color : Red; text-decoration : underline; }" ;
         ".keyword { font-weight : bold ; color : Red }" ;
-        ".keywordsign { color : #C04600 }" ; 
+        ".keywordsign { color : #C04600 }" ;
         ".superscript { font-size : 4 }" ;
         ".subscript { font-size : 4 }" ;
         ".comment { color : Green }" ;
@@ -675,6 +701,7 @@ class html =
         ".string { color : Maroon }" ;
         ".warning { color : Red ; font-weight : bold }" ;
         ".info { margin-left : 3em; margin-right : 3em }" ;
+        ".param_info { margin-top: 4px; margin-left : 3em; margin-right : 3em }" ;
         ".code { color : #465F91 ; }" ;
         "h1 { font-size : 20pt ; text-align: center; }" ;
 
@@ -723,29 +750,29 @@ class html =
        ".paramstable { border-style : hidden ; padding: 5pt 5pt}" ;
         "body { background-color : White }" ;
         "tr { background-color : White }" ;
-       "td.typefieldcomment { background-color : #FFFFFF }" ;
+       "td.typefieldcomment { background-color : #FFFFFF ; font-size: smaller ;}" ;
        "pre { margin-bottom: 4px }" ;
 
        "div.sig_block {margin-left: 2em}" ;
-      ] 
-      
+      ]
+
     (** The style file for all pages. *)
     val mutable style_file = "style.css"
 
     (** The code to import the style. Initialized in [init_style]. *)
     val mutable style = ""
 
-    (** The known types names. 
+    (** The known types names.
        Used to know if we must create a link to a type
        when printing a type. *)
     val mutable known_types_names = StringSet.empty
 
-    (** The known class and class type names. 
-       Used to know if we must create a link to a class 
+    (** The known class and class type names.
+       Used to know if we must create a link to a class
        or class type or not when printing a type. *)
     val mutable known_classes_names = StringSet.empty
 
-    (** The known modules and module types names. 
+    (** The known modules and module types names.
        Used to know if we must create a link to a type or not
        when printing a module type. *)
     val mutable known_modules_names = StringSet.empty
@@ -806,7 +833,7 @@ class html =
     (** Init the style. *)
     method init_style =
       (match !Args.css_style with
-        None -> 
+        None ->
           let default_style = String.concat "\n" default_style_options in
           (
            try
@@ -827,7 +854,7 @@ class html =
                incr Odoc_info.errors ;
           )
       | Some f ->
-          style_file <- f 
+          style_file <- f
       );
       style <- "<link rel=\"stylesheet\" href=\""^style_file^"\" type=\"text/css\">\n"
 
@@ -835,7 +862,7 @@ class html =
     method title = match !Args.title with None -> "" | Some t -> self#escape t
 
     (** Get the title given by the user completed with the given subtitle. *)
-    method inner_title s = 
+    method inner_title s =
       (match self#title with "" -> "" | t -> t^" : ")^
       (self#escape s)
 
@@ -844,11 +871,11 @@ class html =
 
     (** A function to build the header of pages. *)
     method prepare_header module_list =
-      let f b ?(nav=None) ?(comments=[]) t  = 
+      let f b ?(nav=None) ?(comments=[]) t  =
         let link_if_not_empty l m url =
           match l with
             [] -> ()
-          | _ -> 
+          | _ ->
              bp b "<link title=\"%s\" rel=Appendix href=\"%s\">\n" m url
         in
         bs b "<head>\n";
@@ -862,13 +889,13 @@ class html =
          | Some (pre_opt, post_opt, name) ->
              (match pre_opt with
                None -> ()
-             | Some name -> 
+             | Some name ->
                  bp b "<link rel=\"previous\" href=\"%s\">\n"
                   (fst (Naming.html_files name));
              );
              (match post_opt with
                None -> ()
-             | Some name -> 
+             | Some name ->
                  bp b "<link rel=\"next\" href=\"%s\">\n"
                   (fst (Naming.html_files name));
              );
@@ -904,12 +931,12 @@ class html =
        subsections for the titles found in the given comments.*)
     method html_sections_links b comments =
       let titles = List.flatten (List.map Odoc_info.get_titles_in_text comments) in
-      let levels = 
+      let levels =
         let rec iter acc l =
           match l with
             [] -> acc
           | (n,_,_) :: q ->
-              if List.mem n acc 
+              if List.mem n acc
               then iter acc q
               else iter (n::acc) q
         in
@@ -931,7 +958,7 @@ class html =
       let subsection_titles = titles_per_level subsection_level in
       let print_lines s_rel titles =
         List.iter
-          (fun (n,lopt,t) -> 
+          (fun (n,lopt,t) ->
             let s = Odoc_info.string_of_text t in
             let label = self#create_title_label (n,lopt,t) in
             bp b "<link title=\"%s\" rel=\"%s\" href=\"#%s\">\n" s s_rel label
@@ -939,11 +966,11 @@ class html =
           titles
       in
       print_lines "Section" section_titles ;
-      print_lines "Subsection" subsection_titles 
+      print_lines "Subsection" subsection_titles
 
 
-    (** Html code for navigation bar. 
-       @param pre optional name for optional previous module/class 
+    (** Html code for navigation bar.
+       @param pre optional name for optional previous module/class
        @param post optional name for optional next module/class
        @param name name of current module/class *)
     method print_navbar b pre post name =
@@ -951,7 +978,7 @@ class html =
       (
        match pre with
          None -> ()
-       | Some name -> 
+       | Some name ->
            bp b "<a href=\"%s\">%s</a>\n"
             (fst (Naming.html_files name))
             Odoc_messages.previous
@@ -964,7 +991,7 @@ class html =
       (
        match post with
          None -> ()
-       | Some name -> 
+       | Some name ->
            bp b "<a href=\"%s\">%s</a>\n"
             (fst (Naming.html_files name))
             Odoc_messages.next
@@ -972,7 +999,7 @@ class html =
       bs b "</div>\n"
 
     (** Return html code with the given string in the keyword style.*)
-    method keyword s = 
+    method keyword s =
       "<span class=\"keyword\">"^s^"</span>"
 
     (** Return html code with the given string in the constructor style. *)
@@ -991,19 +1018,19 @@ class html =
        Buffer.output_buffer chanout b;
         close_out chanout
       with
-        Sys_error s -> 
+        Sys_error s ->
           incr Odoc_info.errors ;
           prerr_endline s
 
-    (** Take a string and return the string where fully qualified 
-       type (or class or class type) idents 
+    (** Take a string and return the string where fully qualified
+       type (or class or class type) idents
        have been replaced by links to the type referenced by the ident.*)
     method create_fully_qualified_idents_links m_name s =
-      let f str_t = 
+      let f str_t =
         let match_s = Str.matched_string str_t in
         let rel = Name.get_relative m_name match_s in
-        let s_final = Odoc_info.apply_if_equal 
-            Odoc_info.use_hidden_modules 
+        let s_final = Odoc_info.apply_if_equal
+            Odoc_info.use_hidden_modules
             match_s
             rel
         in
@@ -1025,14 +1052,14 @@ class html =
       in
       s2
 
-    (** Take a string and return the string where fully qualified module idents 
+    (** Take a string and return the string where fully qualified module idents
        have been replaced by links to the module referenced by the ident.*)
     method create_fully_qualified_module_idents_links m_name s =
-      let f str_t = 
+      let f str_t =
         let match_s = Str.matched_string str_t in
        let rel = Name.get_relative m_name match_s in
-       let s_final = Odoc_info.apply_if_equal 
-            Odoc_info.use_hidden_modules 
+       let s_final = Odoc_info.apply_if_equal
+            Odoc_info.use_hidden_modules
             match_s
             rel
         in
@@ -1107,7 +1134,7 @@ class html =
          self#html_of_text b [Code "sig"];
          (
           match modu with
-            None -> 
+            None ->
               bs b "<div class=\"sig_block\">";
               List.iter (self#html_of_module_element b father) eles;
               bs b "</div>"
@@ -1126,7 +1153,7 @@ class html =
          self#html_of_module_kind b father ?modu k;
          bs b "</div>"
       | Module_apply (k1, k2) ->
-         (* TODO: l'application n'est pas correcte dans un .mli. 
+         (* TODO: l'application n'est pas correcte dans un .mli.
             Que faire ? -> afficher le module_type du typedtree  *)
          self#html_of_module_kind b father k1;
          self#html_of_text b [Code "("];
@@ -1202,7 +1229,7 @@ class html =
       | Module_type_alias a ->
          bs b "<code class=\"type\">";
          bs b (self#create_fully_qualified_module_idents_links father a.mta_name);
-         bs b "</code>"          
+         bs b "</code>"
       | Module_type_with (k, s) ->
          self#html_of_module_type_kind b father ?modu ?mt k;
          bs b "<code class=\"type\"> ";
@@ -1232,9 +1259,9 @@ class html =
       (* html mark *)
       bp b "<a name=\"%s\"></a>" (Naming.value_target v);
       (
-       match v.val_code with 
+       match v.val_code with
          None -> bs b (Name.simple v.val_name)
-       | Some c -> 
+       | Some c ->
            let file = Naming.file_code_value_complete_target v in
            self#output_code v.val_name (Filename.concat !Args.target_dir file) c;
            bp b "<a href=\"%s\">%s</a>" file (Name.simple v.val_name)
@@ -1257,26 +1284,26 @@ class html =
       bs b (self#keyword "exception");
       bs b " ";
       (* html mark *)
-      bp b "<a name=\"%s\"></a>%s" 
+      bp b "<a name=\"%s\"></a>%s"
        (Naming.exception_target e)
        (Name.simple e.ex_name);
       (
        match e.ex_args with
          [] -> ()
-       | _ -> 
+       | _ ->
            bs b (" "^(self#keyword "of")^" ");
-           self#html_of_type_expr_list 
+           self#html_of_type_expr_list
             ~par: false b (Name.father e.ex_name) " * " e.ex_args
       );
       (
        match e.ex_alias with
          None -> ()
-       | Some ea -> 
+       | Some ea ->
           bs b " = ";
            (
             match ea.ea_ex with
               None -> bs b ea.ea_name
-            | Some e -> 
+            | Some e ->
                bp b "<a href=\"%s\">%s</a>" (Naming.complete_exception_target e) e.ex_name
            )
       );
@@ -1287,11 +1314,11 @@ class html =
     method html_of_type b t =
       Odoc_info.reset_type_names ();
       let father = Name.father t.ty_name in
-      bs b 
-       (match t.ty_manifest, t.ty_kind with 
-         None, Type_abstract -> "<pre>" 
-       | None, Type_variant _ 
-       | None, Type_record _ -> "<br><code>" 
+      bs b
+       (match t.ty_manifest, t.ty_kind with
+         None, Type_abstract -> "<pre>"
+       | None, Type_variant _
+       | None, Type_record _ -> "<br><code>"
        | Some _, Type_abstract -> "<pre>"
        | Some _, Type_variant _
        | Some _, Type_record _ -> "<pre>"
@@ -1303,9 +1330,9 @@ class html =
       (match t.ty_parameters with [] -> () | _ -> bs b " ");
       bs b ((Name.simple t.ty_name)^" ");
       (
-       match t.ty_manifest with 
+       match t.ty_manifest with
         None -> ()
-       | Some typ -> 
+       | Some typ ->
           bs b "= ";
           self#html_of_type_expr b father typ;
           bs b " "
@@ -1315,10 +1342,10 @@ class html =
       | Type_variant (l, priv) ->
           bs b "= ";
          if priv then bs b "private" ;
-         bs b 
+         bs b
            (
-            match t.ty_manifest with 
-              None -> "</code>" 
+            match t.ty_manifest with
+              None -> "</code>"
             | Some _ -> "</pre>"
            );
           bs b "<table class=\"typetable\">\n";
@@ -1332,7 +1359,7 @@ class html =
             (
             match constr.vc_args with
                [] -> ()
-             | l -> 
+             | l ->
                 bs b (" " ^ (self#keyword "of") ^ " ");
                 self#html_of_type_expr_list ~par: false b father " * " l;
             );
@@ -1346,9 +1373,8 @@ class html =
                 bs b "(*";
                 bs b "</code></td>";
                 bs b "<td class=\"typefieldcomment\" align=\"left\" valign=\"top\" >";
-                bs b "<code>" ;
                 self#html_of_text b t;
-                bs b "</code></td>";
+                bs b "</td>";
                 bs b "<td class=\"typefieldcomment\" align=\"left\" valign=\"bottom\" >";
                 bs b "<code>";
                 bs b "*)";
@@ -1365,8 +1391,8 @@ class html =
          bs b "{";
          bs b
            (
-            match t.ty_manifest with 
-              None -> "</code>" 
+            match t.ty_manifest with
+              None -> "</code>"
             | Some _ -> "</pre>"
            );
           bs b "<table class=\"typetable\">\n" ;
@@ -1388,9 +1414,7 @@ class html =
                  bs b "(*";
                  bs b "</code></td>";
                  bs b "<td class=\"typefieldcomment\" align=\"left\" valign=\"top\" >";
-                 bs b "<code>";
                 self#html_of_text b t;
-                bs b "</code>";
                  bs b "</td><td class=\"typefieldcomment\" align=\"left\" valign=\"bottom\" >";
                  bs b "<code>*)</code></td>";
            );
@@ -1412,15 +1436,15 @@ class html =
       (* html mark *)
       bp b "<a name=\"%s\"></a>" (Naming.attribute_target a);
       (
-       if a.att_mutable then 
+       if a.att_mutable then
         bs b ((self#keyword Odoc_messages.mutab)^ " ")
        else
         ()
       );
       (
-       match a.att_value.val_code with 
+       match a.att_value.val_code with
          None -> bs b (Name.simple a.att_value.val_name)
-       | Some c -> 
+       | Some c ->
            let file = Naming.file_code_attribute_complete_target a in
            self#output_code a.att_value.val_name (Filename.concat !Args.target_dir file) c;
            bp b "<a href=\"%s\">%s</a>" file (Name.simple a.att_value.val_name);
@@ -1440,9 +1464,9 @@ class html =
       if m.met_private then bs b ((self#keyword "private")^" ");
       if m.met_virtual then bs b ((self#keyword "virtual")^" ");
       (
-       match m.met_value.val_code with 
+       match m.met_value.val_code with
          None -> bs b  (Name.simple m.met_value.val_name)
-       | Some c -> 
+       | Some c ->
            let file = Naming.file_code_method_complete_target m in
            self#output_code m.met_value.val_name (Filename.concat !Args.target_dir file) c;
            bp b "<a href=\"%s\">%s</a>" file (Name.simple m.met_value.val_name);
@@ -1453,10 +1477,10 @@ class html =
       self#html_of_info b m.met_value.val_info;
       (
        if !Args.with_parameter_list then
-         self#html_of_parameter_list b 
+         self#html_of_parameter_list b
           module_name m.met_value.val_parameters
        else
-         self#html_of_described_parameter_list b 
+         self#html_of_described_parameter_list b
           module_name m.met_value.val_parameters
       )
 
@@ -1475,13 +1499,13 @@ class html =
       | l ->
           (*  A list of names, we display those with a description. *)
           let l2 = List.filter
-             (fun n -> (Parameter.desc_by_name p n) <> None) 
-             l 
+             (fun n -> (Parameter.desc_by_name p n) <> None)
+             l
          in
          let print_one n =
            match Parameter.desc_by_name p n with
               None -> ()
-            | Some t -> 
+            | Some t ->
                bs b "<code>";
                bs b n;
                bs b "</code> : ";
@@ -1494,7 +1518,7 @@ class html =
       match l with
         [] -> ()
       | _ ->
-          bs b "<div class=\"info\">";
+          bs b "<div class=\"param_info\">";
           bs b "<table border=\"0\" cellpadding=\"3\" width=\"100%\">\n";
           bs b "<tr>\n<td align=\"left\" valign=\"top\" width=\"1%\">";
          bs b "<b>";
@@ -1503,7 +1527,7 @@ class html =
           bs b "<td>\n<table class=\"paramstable\">\n";
          let print_one p =
             bs b "<tr>\n<td align=\"center\" valign=\"top\" width=\"15%\" class=\"code\">\n";
-            bs b 
+            bs b
              (
               match Parameter.complete_name p with
                 "" -> "?"
@@ -1522,25 +1546,21 @@ class html =
     (** Print html code for the parameters which have a name and description. *)
     method html_of_described_parameter_list b m_name l =
       (* get the params which have a name, and at least one name described. *)
-      let l2 = List.filter 
-          (fun p -> 
-            List.exists 
+      let l2 = List.filter
+          (fun p ->
+            List.exists
               (fun n -> (Parameter.desc_by_name p n) <> None)
               (Parameter.names p))
           l
       in
       let f p =
-        bs b "<div class=\"info\"><code class=\"code\">";
+        bs b "<div class=\"param_info\"><code class=\"code\">";
        bs b (Parameter.complete_name p);
        bs b "</code> : " ;
         self#html_of_parameter_description b p;
        bs b "</div>\n"
       in
-      match l2 with
-        [] -> ()
-      | _ -> 
-         bs b "<br>";
-         List.iter f l2
+      List.iter f l2
 
     (** Print html code for a list of module parameters. *)
     method html_of_module_parameter_list b m_name l =
@@ -1567,7 +1587,7 @@ class html =
               (
               match desc_opt with
                  None -> ()
-               | Some t -> 
+               | Some t ->
                   bs b "<br>";
                   self#html_of_text b t;
                   bs b "\n</tr>\n" ;
@@ -1593,10 +1613,10 @@ class html =
       bs b "</pre>";
       if info then
         (
-        if complete then 
+        if complete then
           self#html_of_info ~indent: false
-        else 
-          self#html_of_info_first_sentence 
+        else
+          self#html_of_info_first_sentence
        ) b m.m_info
       else
         ()
@@ -1615,14 +1635,14 @@ class html =
       );
       (match mt.mt_kind with
         None -> ()
-      | Some k -> 
+      | Some k ->
          bs b " = ";
          self#html_of_module_type_kind b father ~mt k
       );
       bs b "</pre>";
       if info then
         (
-        if complete then 
+        if complete then
           self#html_of_info ~indent: false
         else
           self#html_of_info_first_sentence
@@ -1639,9 +1659,9 @@ class html =
          None ->
            bs b im.im_name
        | Some mmt ->
-           let (file, name) = 
+           let (file, name) =
              match mmt with
-               Mod m -> 
+               Mod m ->
                  let (html_file, _) = Naming.html_files m.m_name in
                  (html_file, m.m_name)
              | Modtype mt ->
@@ -1664,7 +1684,7 @@ class html =
 
     method html_of_class_kind b father ?cl kind =
       match kind with
-        Class_structure (inh, eles) -> 
+        Class_structure (inh, eles) ->
          self#html_of_text b [Code "object"];
          (
           match cl with
@@ -1673,7 +1693,7 @@ class html =
               (
                match inh with
                  [] -> ()
-               | _ -> 
+               | _ ->
                    self#generate_inheritance_info b inh
               );
               List.iter (self#html_of_class_element b) eles;
@@ -1686,12 +1706,12 @@ class html =
       | Class_apply capp ->
          (* TODO: afficher le type final Ã  partir du typedtree *)
          self#html_of_text b [Raw "class application not handled yet"]
-            
+
       | Class_constr cco ->
          (
            match cco.cco_type_parameters with
              [] -> ()
-           | l -> 
+           | l ->
                self#html_of_class_type_param_expr_list b father l;
               bs b " "
          );
@@ -1708,11 +1728,11 @@ class html =
 
     method html_of_class_type_kind b father ?ct kind =
       match kind with
-        Class_type cta -> 
+        Class_type cta ->
           (
            match cta.cta_type_parameters with
              [] -> ()
-           | l -> 
+           | l ->
               self#html_of_class_type_param_expr_list b father l;
               bs b " "
           );
@@ -1720,7 +1740,7 @@ class html =
          bs b (self#create_fully_qualified_idents_links father cta.cta_name);
          bs b "</code>"
 
-      | Class_signature (inh, eles) -> 
+      | Class_signature (inh, eles) ->
          self#html_of_text b [Code "object"];
          (
           match ct with
@@ -1745,14 +1765,14 @@ class html =
       let (html_file, _) = Naming.html_files c.cl_name in
       bs b "<pre>";
       bs b ((self#keyword "class")^" ");
-      (* we add a html tag, the same as for a type so we can 
+      (* we add a html tag, the same as for a type so we can
          go directly here when the class name is used as a type name *)
       bp b "<a name=\"%s\"></a>"
-        (Naming.type_target 
+        (Naming.type_target
            { ty_name = c.cl_name ;
              ty_info = None ; ty_parameters = [] ;
-             ty_kind = Type_abstract ; ty_manifest = None ; 
-             ty_loc = Odoc_info.dummy_loc ; 
+             ty_kind = Type_abstract ; ty_manifest = None ;
+             ty_loc = Odoc_info.dummy_loc ;
             ty_code = None ;
           }
        );
@@ -1761,7 +1781,7 @@ class html =
       (
        match c.cl_type_parameters with
          [] -> ()
-       | l -> 
+       | l ->
            self#html_of_class_type_param_expr_list b father l;
           bs b " "
       );
@@ -1779,9 +1799,9 @@ class html =
       bs b "</pre>" ;
       print_DEBUG "html#html_of_class : info" ;
       (
-       if complete then 
+       if complete then
         self#html_of_info ~indent: false
-       else 
+       else
         self#html_of_info_first_sentence
       ) b c.cl_info
 
@@ -1792,14 +1812,14 @@ class html =
       let (html_file, _) = Naming.html_files ct.clt_name in
       bs b "<pre>";
       bs b ((self#keyword "class type")^" ");
-      (* we add a html tag, the same as for a type so we can 
+      (* we add a html tag, the same as for a type so we can
          go directly here when the class type name is used as a type name *)
       bp b "<a name=\"%s\"></a>"
-        (Naming.type_target 
+        (Naming.type_target
            { ty_name = ct.clt_name ;
              ty_info = None ; ty_parameters = [] ;
              ty_kind = Type_abstract ; ty_manifest = None ;
-             ty_loc = Odoc_info.dummy_loc ; 
+             ty_loc = Odoc_info.dummy_loc ;
             ty_code = None ;
           }
        );
@@ -1807,9 +1827,9 @@ class html =
       (
        match ct.clt_type_parameters with
         [] -> ()
-      | l -> 
+      | l ->
          self#html_of_class_type_param_expr_list b father l;
-         bs b " " 
+         bs b " "
       );
 
       if with_link then
@@ -1821,9 +1841,9 @@ class html =
       self#html_of_class_type_kind b father ~ct ct.clt_kind;
       bs b "</pre>";
       (
-       if complete then 
+       if complete then
         self#html_of_info ~indent: false
-       else 
+       else
         self#html_of_info_first_sentence
       ) b ct.clt_info
 
@@ -1843,7 +1863,7 @@ class html =
           "<table border=1>\n<tr><td>"^
           "<a href=\""^html_file^"\">"^name2^"</a>"^
           "</td></tr>\n</table>\n"
-        in      
+        in
         { n with Odoc_dag2html.valu = new_v }
       in
       let a = Array.map f dag.Odoc_dag2html.dag in
@@ -1860,7 +1880,7 @@ class html =
       (* Add some style if there is no style for the first part of the text. *)
       let text2 =
         match text with
-        | (Odoc_info.Raw s) :: q -> 
+        | (Odoc_info.Raw s) :: q ->
             (Odoc_info.Title (2, None, [Odoc_info.Raw s])) :: q
         | _ -> text
       in
@@ -1891,13 +1911,13 @@ class html =
       let text = [
         Odoc_info.Bold [Odoc_info.Raw Odoc_messages.inherits] ;
         Odoc_info.List (List.map f inher_l)
-      ] 
+      ]
       in
-      self#html_of_text b text 
+      self#html_of_text b text
 
     (** Generate html code for the inherited classes of the given class. *)
     method generate_class_inheritance_info b cl =
-      let rec iter_kind k = 
+      let rec iter_kind k =
         match k with
           Class_structure ([], _) ->
             ()
@@ -1926,7 +1946,7 @@ class html =
         'a.
         'a list ->
           ('a -> Odoc_info.Name.t) ->
-            ('a -> Odoc_info.info option) -> 
+            ('a -> Odoc_info.info option) ->
               ('a -> string) -> string -> string -> unit =
     fun elements name info target title simple_file ->
       try
@@ -1937,8 +1957,8 @@ class html =
        bs b "<body>\n<center><h1>";
        bs b title;
        bs b "</h1></center>\n" ;
-        
-        let sorted_elements = List.sort 
+
+        let sorted_elements = List.sort
             (fun e1 e2 -> compare (Name.simple (name e1)) (Name.simple (name e2)))
             elements
         in
@@ -1947,7 +1967,7 @@ class html =
           let simple_name = Name.simple (name e) in
           let father_name = Name.father (name e) in
           bp b "<tr><td><a href=\"%s\">%s</a> " (target e) simple_name;
-          if simple_name <> father_name && father_name <> "" then 
+          if simple_name <> father_name && father_name <> "" then
             bp b "[<a href=\"%s\">%s</a>]" (fst (Naming.html_files father_name)) father_name;
           bs b "</td>\n<td>";
          self#html_of_info_first_sentence b (info e);
@@ -1957,7 +1977,7 @@ class html =
           match l with
             [] -> ()
           | e :: _ ->
-              let s = 
+              let s =
                 match (Char.uppercase (Name.simple (name e)).[0]) with
                   'A'..'Z' as c -> String.make 1 c
                 | _ -> ""
@@ -1984,7 +2004,7 @@ class html =
         let rec iter pre_opt = function
             [] -> ()
           | ele :: [] -> f_generate pre_opt None ele
-          | ele1 :: ele2 :: q -> 
+          | ele1 :: ele2 :: q ->
               f_generate pre_opt (Some ele2) ele1 ;
               iter (Some ele1) (ele2 :: q)
         in
@@ -2014,7 +2034,7 @@ class html =
         bs b "</h1></center>\n<br>\n";
         self#html_of_class b ~with_link: false cl;
         (* parameters *)
-        self#html_of_described_parameter_list b 
+        self#html_of_described_parameter_list b
          (Name.father cl.cl_name) cl.cl_parameters;
         (* class inheritance *)
        self#generate_class_inheritance_info b cl;
@@ -2028,7 +2048,7 @@ class html =
         close_out chanout;
 
         (* generate the file with the complete class type *)
-        self#output_class_type 
+        self#output_class_type
           cl.cl_name
           (Filename.concat !Args.target_dir type_file)
           cl.cl_type
@@ -2073,7 +2093,7 @@ class html =
         close_out chanout;
 
         (* generate the file with the complete class type *)
-        self#output_class_type 
+        self#output_class_type
           clt.clt_name
           (Filename.concat !Args.target_dir type_file)
           clt.clt_type
@@ -2081,7 +2101,7 @@ class html =
         Sys_error s ->
           raise (Failure s)
 
-    (** Generate the html file for the given module type. 
+    (** Generate the html file for the given module type.
        @raise Failure if an error occurs.*)
     method generate_for_module_type pre post mt =
       try
@@ -2107,9 +2127,9 @@ class html =
         );
         bs b "</h1></center>\n<br>\n" ;
         self#html_of_modtype b ~with_link: false mt;
-           
+
         (* parameters for functors *)
-        self#html_of_module_parameter_list b 
+        self#html_of_module_parameter_list b
          (Name.father mt.mt_name)
          (Module.module_type_parameters mt);
         (* a horizontal line *)
@@ -2136,17 +2156,17 @@ class html =
         (
          match mt.mt_type with
            None -> ()
-         | Some mty -> 
-            self#output_module_type 
+         | Some mty ->
+            self#output_module_type
                mt.mt_name
-               (Filename.concat !Args.target_dir type_file) 
+               (Filename.concat !Args.target_dir type_file)
                mty
         )
       with
         Sys_error s ->
           raise (Failure s)
 
-    (** Generate the html file for the given module. 
+    (** Generate the html file for the given module.
        @raise Failure if an error occurs.*)
     method generate_for_module pre post modu =
       try
@@ -2166,11 +2186,11 @@ class html =
        bs b "<body>\n" ;
         self#print_navbar b pre_name post_name modu.m_name ;
         bs b "<center><h1>";
-       bs b 
+       bs b
          (
-          if Module.module_is_functor modu then 
-            Odoc_messages.functo 
-          else 
+          if Module.module_is_functor modu then
+            Odoc_messages.functo
+          else
             Odoc_messages.modul
          );
        bp b " <a href=\"%s\">%s</a>" type_file modu.m_name;
@@ -2192,7 +2212,7 @@ class html =
         bs b "<hr width=\"100%\">\n";
 
         (* module elements *)
-        List.iter 
+        List.iter
           (self#html_of_module_element b (Name.father modu.m_name))
           (Module.module_elements modu);
 
@@ -2208,9 +2228,9 @@ class html =
         self#generate_elements  self#generate_for_class (Module.module_classes modu);
         (* generate html files for class types *)
         self#generate_elements  self#generate_for_class_type (Module.module_class_types modu);
-        
+
         (* generate the file with the complete module type *)
-        self#output_module_type 
+        self#output_module_type
           modu.m_name
           (Filename.concat !Args.target_dir type_file)
           modu.m_type;
@@ -2237,10 +2257,10 @@ class html =
         self#print_header b self#title;
         bs b "<body>\n";
         bs b "<center><h1>";
-       bs b title; 
+       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 !Odoc_info.Args.intro_file
        in
        (
         match info with
@@ -2259,9 +2279,9 @@ class html =
 
     (** Generate the values index in the file [index_values.html]. *)
     method generate_values_index module_list =
-      self#generate_elements_index 
+      self#generate_elements_index
         self#list_values
-        (fun v -> v.val_name) 
+        (fun v -> v.val_name)
         (fun v -> v.val_info)
         Naming.complete_value_target
         Odoc_messages.index_of_values
@@ -2269,9 +2289,9 @@ class html =
 
     (** Generate the exceptions index in the file [index_exceptions.html]. *)
     method generate_exceptions_index module_list =
-      self#generate_elements_index 
+      self#generate_elements_index
         self#list_exceptions
-        (fun e -> e.ex_name) 
+        (fun e -> e.ex_name)
         (fun e -> e.ex_info)
         Naming.complete_exception_target
         Odoc_messages.index_of_exceptions
@@ -2279,9 +2299,9 @@ class html =
 
     (** Generate the types index in the file [index_types.html]. *)
     method generate_types_index module_list =
-      self#generate_elements_index 
+      self#generate_elements_index
         self#list_types
-        (fun t -> t.ty_name) 
+        (fun t -> t.ty_name)
         (fun t -> t.ty_info)
         Naming.complete_type_target
         Odoc_messages.index_of_types
@@ -2289,9 +2309,9 @@ class html =
 
     (** Generate the attributes index in the file [index_attributes.html]. *)
     method generate_attributes_index module_list =
-      self#generate_elements_index 
+      self#generate_elements_index
         self#list_attributes
-        (fun a -> a.att_value.val_name) 
+        (fun a -> a.att_value.val_name)
         (fun a -> a.att_value.val_info)
         Naming.complete_attribute_target
         Odoc_messages.index_of_attributes
@@ -2299,9 +2319,9 @@ class html =
 
     (** Generate the methods index in the file [index_methods.html]. *)
     method generate_methods_index module_list =
-      self#generate_elements_index 
+      self#generate_elements_index
         self#list_methods
-        (fun m -> m.met_value.val_name) 
+        (fun m -> m.met_value.val_name)
         (fun m -> m.met_value.val_info)
         Naming.complete_method_target
         Odoc_messages.index_of_methods
@@ -2311,7 +2331,7 @@ class html =
     method generate_classes_index module_list =
       self#generate_elements_index
         self#list_classes
-        (fun c -> c.cl_name) 
+        (fun c -> c.cl_name)
         (fun c -> c.cl_info)
         (fun c -> fst (Naming.html_files c.cl_name))
         Odoc_messages.index_of_classes
@@ -2321,7 +2341,7 @@ class html =
     method generate_class_types_index module_list =
       self#generate_elements_index
         self#list_class_types
-        (fun ct -> ct.clt_name) 
+        (fun ct -> ct.clt_name)
         (fun ct -> ct.clt_info)
         (fun ct -> fst (Naming.html_files ct.clt_name))
         Odoc_messages.index_of_class_types
@@ -2331,7 +2351,7 @@ class html =
     method generate_modules_index module_list =
       self#generate_elements_index
         self#list_modules
-        (fun m -> m.m_name) 
+        (fun m -> m.m_name)
         (fun m -> m.m_info)
         (fun m -> fst (Naming.html_files m.m_name))
         Odoc_messages.index_of_modules
@@ -2342,7 +2362,7 @@ class html =
       let module_types = Odoc_info.Search.module_types module_list in
       self#generate_elements_index
         self#list_module_types
-        (fun mt -> mt.mt_name) 
+        (fun mt -> mt.mt_name)
         (fun mt -> mt.mt_info)
         (fun mt -> fst (Naming.html_files mt.mt_name))
         Odoc_messages.index_of_module_types
@@ -2363,44 +2383,44 @@ class html =
       list_class_types <- Odoc_info.Search.class_types module_list ;
       list_modules <- Odoc_info.Search.modules module_list ;
       list_module_types <- Odoc_info.Search.module_types module_list ;
-      
+
       (* prepare the page header *)
       self#prepare_header module_list ;
       (* Get the names of all known types. *)
       let types = Odoc_info.Search.types module_list in
-      known_types_names <- 
-       List.fold_left 
-         (fun acc t -> StringSet.add t.ty_name acc) 
+      known_types_names <-
+       List.fold_left
+         (fun acc t -> StringSet.add t.ty_name acc)
          known_types_names
          types ;
       (* Get the names of all class and class types. *)
       let classes = Odoc_info.Search.classes module_list in
       let class_types = Odoc_info.Search.class_types module_list in
-      known_classes_names <- 
+      known_classes_names <-
        List.fold_left
-         (fun acc c -> StringSet.add c.cl_name acc) 
-         known_classes_names 
+         (fun acc c -> StringSet.add c.cl_name acc)
+         known_classes_names
          classes ;
-      known_classes_names <-  
+      known_classes_names <-
        List.fold_left
-         (fun acc ct -> StringSet.add ct.clt_name acc) 
+         (fun acc ct -> StringSet.add ct.clt_name acc)
          known_classes_names
          class_types ;
       (* Get the names of all known modules and module types. *)
       let module_types = Odoc_info.Search.module_types module_list in
       let modules = Odoc_info.Search.modules module_list in
       known_modules_names <-
-       List.fold_left 
-         (fun acc m -> StringSet.add m.m_name acc) 
-         known_modules_names 
+       List.fold_left
+         (fun acc m -> StringSet.add m.m_name acc)
+         known_modules_names
          modules ;
       known_modules_names <-
        List.fold_left
-         (fun acc mt -> StringSet.add mt.mt_name acc) 
-         known_modules_names 
+         (fun acc mt -> StringSet.add mt.mt_name acc)
+         known_modules_names
          module_types ;
       (* generate html for each module *)
-      if not !Args.index_only then 
+      if not !Args.index_only then
         self#generate_elements self#generate_for_module module_list ;
 
       try
@@ -2420,8 +2440,8 @@ class html =
           incr Odoc_info.errors
 
     initializer
-      Odoc_ocamlhtml.html_of_comment := 
-        (fun s -> 
+      Odoc_ocamlhtml.html_of_comment :=
+        (fun s ->
          let b = new_buf () in
          self#html_of_text b (Odoc_text.Texter.text_of_string s);
          Buffer.contents b
@@ -2429,5 +2449,5 @@ class html =
   end
 
 
-                             
-(* eof $Id: odoc_html.ml,v 1.52.4.2 2004/08/06 12:35:07 guesdon Exp $ *)
+
+(* eof $Id: odoc_html.ml,v 1.52.4.3 2005/07/07 13:40:29 guesdon Exp $ *)
index 1936d43ff7cc0fa8b0141e07280032073960a464..d3e08c3c84b0d2f38d54201ca9ff9a1f31f36327 100644 (file)
@@ -9,7 +9,7 @@
 (*                                                                     *)
 (***********************************************************************)
 
-(* $Id: odoc_info.ml,v 1.20.4.1 2004/08/06 12:35:07 guesdon Exp $ *)
+(* $Id: odoc_info.ml,v 1.20.4.2 2005/07/07 14:34:18 guesdon Exp $ *)
 
 (** Interface for analysing documented OCaml source files and to the collected information. *)
 
@@ -29,10 +29,10 @@ and text_element = Odoc_types.text_element =
   | Raw of string
   | Code of string
   | CodePre of string
-  | Verbatim of string 
+  | Verbatim of string
   | Bold of text
   | Italic of text
-  | Emphasize of text 
+  | Emphasize of text
   | Center of text
   | Left of text
   | Right of text
@@ -74,13 +74,13 @@ type info = Odoc_types.info = {
     i_params : param list;
     i_raised_exceptions : raised_exception list;
     i_return_value : text option ;
-    i_custom : (string * text) list ; 
-  } 
+    i_custom : (string * text) list ;
+  }
 
 type location = Odoc_types.location = {
     loc_impl : (string * int) option ;
     loc_inter : (string * int) option ;
-  } 
+  }
 
 let dummy_loc = { loc_impl = None ; loc_inter = None }
 
@@ -142,7 +142,7 @@ let string_of_value v = Odoc_str.string_of_value v
 
 let string_of_attribute att = Odoc_str.string_of_attribute att
 
-let string_of_method m = Odoc_str.string_of_method m 
+let string_of_method m = Odoc_str.string_of_method m
 
 let first_sentence_of_text = Odoc_misc.first_sentence_of_text
 
@@ -164,11 +164,11 @@ let is_optional = Odoc_misc.is_optional
 
 let label_name = Odoc_misc.label_name
 
-let use_hidden_modules n = 
+let use_hidden_modules n =
   Odoc_name.hide_given_modules !Odoc_args.hidden_modules n
 
-let verbose s = 
-  if !Odoc_args.verbose then 
+let verbose s =
+  if !Odoc_args.verbose then
     (print_string s ; print_newline ())
   else
     ()
@@ -204,11 +204,11 @@ let info_string_of_info i =
   let b = Buffer.create 256 in
   let p = Printf.bprintf in
   (
-   match i.i_desc with 
+   match i.i_desc with
      None -> ()
    | Some t -> p b "%s" (escape_arobas (text_string_of_text t))
   );
-  List.iter 
+  List.iter
     (fun s -> p b "\n@author %s" (escape_arobas s))
     i.i_authors;
   (
@@ -237,10 +237,10 @@ let info_string_of_info i =
    | Some s -> p b "\n@since %s" (escape_arobas s)
   );
   (
-   match i.i_deprecated with 
+   match i.i_deprecated with
      None -> ()
-   | Some t -> 
-       p b "\n@deprecated %s" 
+   | Some t ->
+       p b "\n@deprecated %s"
         (escape_arobas (text_string_of_text t))
   );
   List.iter
@@ -258,18 +258,12 @@ let info_string_of_info i =
     )
     i.i_raised_exceptions;
   (
-   match i.i_return_value with 
+   match i.i_return_value with
      None -> ()
-   | Some t -> 
-       p b "\n@return %s" 
+   | Some t ->
+       p b "\n@return %s"
         (escape_arobas (text_string_of_text t))
   );
-  List.iter
-    (fun (s, t) ->
-      p b "\n@%s %s" s
-       (escape_arobas (text_string_of_text t))
-    )
-    i.i_raised_exceptions;
   List.iter
     (fun (s, t) ->
       p b "\n@%s %s" s
@@ -292,24 +286,24 @@ let info_of_string s =
       i_raised_exceptions = [] ;
       i_return_value = None ;
       i_custom = [] ;
-    } 
+    }
   in
   let s2 = Printf.sprintf "(** %s *)" s in
   let (_, i_opt) = Odoc_comments.Basic_info_retriever.first_special "-" s2 in
   match i_opt with
     None -> dummy
   | Some i -> i
-      
+
 let info_of_comment_file f =
   try
     let s = Odoc_misc.input_file_as_string f in
     info_of_string s
   with
-    Sys_error s -> 
+    Sys_error s ->
       failwith s
 
-module Search = 
-  struct 
+module Search =
+  struct
     type result_element = Odoc_search.result_element =
           Res_module of Module.t_module
         | Res_module_type of Module.t_module_type
index fd16f206989966d6b13e261ab783ecefa3d7460f..41d14e3400d9e40c34362c736e8659fdbda79fad 100644 (file)
@@ -9,7 +9,7 @@
 (*                                                                     *)
 (***********************************************************************)
 
-(* $Id: odoc_man.ml,v 1.22.4.1 2005/02/18 16:08:37 guesdon Exp $ *)
+(* $Id: odoc_man.ml,v 1.22.4.4 2005/07/07 09:12:05 guesdon Exp $ *)
 
 (** The man pages generator. *)
 open Odoc_info
@@ -197,7 +197,16 @@ class man =
       Str.global_replace re_slash "slash" s
 
     (** Escape special sequences of characters in a string. *)
-    method escape (s : string) = s
+    method escape (s : string) =
+      let len = String.length s in
+      let b = Buffer.create len in
+      for i = 0 to len - 1 do
+       match s.[i] with
+         '\\' -> Buffer.add_string b "\\(rs"
+       | '.' -> Buffer.add_string b "\\&."
+       | c -> Buffer.add_char b c
+      done;
+      Buffer.contents b
 
     (** Open a file for output. Add the target directory.*)
     method open_out file =
@@ -223,7 +232,7 @@ class man =
     (** Print the groff string for a text element. *)
     method man_of_text_element b te =
       match te with
-      | Odoc_info.Raw s -> bs b s
+      | Odoc_info.Raw s -> bs b (self#escape s)
       | Odoc_info.Code s ->
           bs b "\n.B ";
          bs b ((Str.global_replace (Str.regexp "\n") "\n.B " (self#escape s))^"\n")
index 3bfb83718953408808bcc25a52bdfbff80115b0e..59b56dd39b2a8c749659b3dc5d55e1a7d3b29218 100644 (file)
@@ -9,7 +9,7 @@
 (*                                                                     *)
 (***********************************************************************)
 
-(* $Id: odoc_messages.ml,v 1.24.4.4 2005/02/18 16:08:37 guesdon Exp $ *)
+(* $Id: odoc_messages.ml,v 1.24.4.6 2005/07/07 13:40:29 guesdon Exp $ *)
 
 (** The messages of the application. *)
 
@@ -77,7 +77,7 @@ let default_dot_colors =
 let dot_colors =
   "<c1,c2,...,cn>\n\t\tUse colors c1,c1,...,cn in the dot output\n"^
   "\t\t(default list is "^
-  (String.concat ",\n\t\t" (List.map (String.concat ", ") default_dot_colors))^")"
+  (String.concat ",\n\t\t" (List.map (String.concat ",") default_dot_colors))^")"
 
 let dot_reduce =
   "\tPerform a transitive reduction on the selected dependency graph\n"^
@@ -269,6 +269,8 @@ let class_type_not_found_in_typedtree ct = "Class type "^ct^" was not found in t
 let inherit_classexp_not_found_in_typedtree n = "Inheritance class expression number "^(string_of_int n)^" was not found in typed tree."
 let attribute_not_found_in_typedtree att = "Class attribute "^att^" was not found in typed tree."
 let method_not_found_in_typedtree met = "Class method "^met^" was not found in typed tree."
+let misplaced_comment file pos =
+  Printf.sprintf "Misplaced special comment in file %s, character %d." file pos
 
 let cross_module_not_found n = "Module "^n^" not found"
 let cross_module_type_not_found n = "Module type "^n^" not found"
index d02deae28c8bb19fa7174ce758f1c2c0906eac19..647ec819fc81b5d7aa1e17bb3f3bf998498d2b5c 100644 (file)
@@ -9,7 +9,7 @@
 (*                                                                     *)
 (***********************************************************************)
 
-(* $Id: odoc_sig.ml,v 1.30.2.3 2004/10/01 09:43:24 guesdon Exp $ *)
+(* $Id: odoc_sig.ml,v 1.30.2.4 2005/06/23 14:23:27 guesdon Exp $ *)
 
 (** Analysis of interface files. *)
 
@@ -191,8 +191,11 @@ module Analyser =
                   ([], []) ->
                     let pos = Str.search_forward (Str.regexp_string name) !file last_pos in
                     let pos' = pos + (String.length name) in
-                    let pos2 = Str.search_forward
-                       (Str.regexp ("|[ \n\t\r]*"^name2)) !file pos'
+                    let pos2 =
+                     try Str.search_forward
+                         (Str.regexp ("|[ \n\t\r]*"^name2)) !file pos'
+                     with Not_found ->
+                       failwith (Odoc_messages.misplaced_comment !file_name pos')
                    in
                     let s = get_string_of_file pos' pos2 in
                     let (_,comment_opt) =  My_ir.just_after_special !file_name  s in
@@ -202,16 +205,25 @@ module Analyser =
                     let pos = Str.search_forward (Str.regexp_string name) !file last_pos in
                     let pos' = pos + (String.length name) in
                     let pos2 = ct2.Parsetree.ptyp_loc.Location.loc_start.Lexing.pos_cnum in
-                    let pos2' = Str.search_backward (Str.regexp_string name2) !file pos2 in
+                    let pos2' =
+                     try Str.search_backward
+                         (Str.regexp ("|[ \n\t\r]*"^name2)) !file pos2
+                     with Not_found ->
+                       failwith (Odoc_messages.misplaced_comment !file_name pos')
+                   in
                     let s = get_string_of_file pos' pos2' in
                     let (_,comment_opt) =  My_ir.just_after_special !file_name  s in
                     f (acc @ [name, comment_opt]) pos2' ((name2, core_type_list2) :: q)
 
                 | ((ct :: _), []) ->
                     let pos = ct.Parsetree.ptyp_loc.Location.loc_end.Lexing.pos_cnum in
-                    let pos2 = Str.search_forward
-                       (Str.regexp ("|[ \n\t\r]*"^name2))
-                       !file pos
+                    let pos2 =
+                     try
+                       Str.search_forward
+                         (Str.regexp ("|[ \n\t\r]*"^name2))
+                         !file pos
+                     with Not_found ->
+                       failwith (Odoc_messages.misplaced_comment !file_name pos)
                    in
                     let s = get_string_of_file pos pos2 in
                     let (_,comment_opt) =  My_ir.just_after_special !file_name  s in
@@ -225,7 +237,12 @@ module Analyser =
                | ((ct:: _), (ct2 :: _)) ->
                    let pos = ct.Parsetree.ptyp_loc.Location.loc_end.Lexing.pos_cnum in
                     let pos2 = ct2.Parsetree.ptyp_loc.Location.loc_start.Lexing.pos_cnum in
-                    let pos2' = Str.search_backward (Str.regexp_string name2) !file pos2 in
+                    let pos2' =
+                     try Str.search_backward
+                         (Str.regexp ("|[ \n\t\r]*"^name2)) !file pos2
+                     with Not_found ->
+                       failwith (Odoc_messages.misplaced_comment !file_name pos)
+                   in
                     let s = get_string_of_file pos pos2' in
                     let (_,comment_opt) =  My_ir.just_after_special !file_name  s in
                     f (acc @ [name, comment_opt]) pos2' ((name2, core_type_list2) :: q)
@@ -1359,4 +1376,4 @@ module Analyser =
 
     end
 
-(* eof $Id: odoc_sig.ml,v 1.30.2.3 2004/10/01 09:43:24 guesdon Exp $ *)
+(* eof $Id: odoc_sig.ml,v 1.30.2.4 2005/06/23 14:23:27 guesdon Exp $ *)
index c47091360040446bfeeff2d39201788ef1cc45af..c6be2fc59530b35e22190580c73c73d3a1785f87 100644 (file)
@@ -9,9 +9,9 @@
 (*                                                                     *)
 (***********************************************************************)
 
-(* $Id: odoc_types.ml,v 1.7 2004/05/23 10:41:51 guesdon Exp $ *)
+(* $Id: odoc_types.ml,v 1.7.4.2 2005/07/07 14:24:48 guesdon Exp $ *)
 
-type ref_kind = 
+type ref_kind =
     RK_module
   | RK_module_type
   | RK_class
@@ -23,7 +23,7 @@ type ref_kind =
   | RK_method
   | RK_section of text
 
-and text_element = 
+and text_element =
   | Raw of string
   | Code of string
   | CodePre of string
@@ -49,7 +49,7 @@ and text_element =
 
 and text = text_element list
 
-type see_ref = 
+type see_ref =
     See_url of string
   | See_file of string
   | See_doc of string
@@ -67,11 +67,11 @@ type info = {
     i_sees : see list;
     i_since : string option;
     i_deprecated : text option;
-    i_params : param list; 
+    i_params : param list;
     i_raised_exceptions : raised_exception list;
     i_return_value : text option ;
     i_custom : (string * text) list ;
-  } 
+  }
 
 let dummy_info = {
   i_desc = None ;
@@ -84,12 +84,12 @@ let dummy_info = {
   i_raised_exceptions = [] ;
   i_return_value = None ;
   i_custom = [] ;
-} 
+}
 
 type location = {
     loc_impl : (string * int) option ;
     loc_inter : (string * int) option ;
-  } 
+  }
 
 let dummy_loc = { loc_impl = None ; loc_inter = None }
 
@@ -104,7 +104,7 @@ type merge_option =
   | Merge_raised_exception
   | Merge_return_value
   | Merge_custom
-  
+
 let all_merge_options = [
   Merge_description ;
   Merge_author ;
@@ -116,7 +116,7 @@ let all_merge_options = [
   Merge_raised_exception ;
   Merge_return_value ;
   Merge_custom ;
-] 
+]
 
 type magic = string
 
diff --git a/otherlibs/CVS/Entries b/otherlibs/CVS/Entries
deleted file mode 100644 (file)
index 1784810..0000000
+++ /dev/null
@@ -1 +0,0 @@
-D
diff --git a/otherlibs/CVS/Entries.Log b/otherlibs/CVS/Entries.Log
deleted file mode 100644 (file)
index 46a0c26..0000000
+++ /dev/null
@@ -1,19 +0,0 @@
-A D/bigarray////
-A D/db////
-A D/dbm////
-A D/dynlink////
-A D/dyntypes////
-A D/graph////
-A D/join////
-A D/labltk////
-A D/macosunix////
-A D/num////
-A D/str////
-A D/systhreads////
-A D/threads////
-A D/unix////
-A D/win32graph////
-A D/win32unix////
-R D/macosunix////
-R D/join////
-R D/dyntypes////
diff --git a/otherlibs/CVS/Repository b/otherlibs/CVS/Repository
deleted file mode 100644 (file)
index a8ac51f..0000000
+++ /dev/null
@@ -1 +0,0 @@
-csl/otherlibs
diff --git a/otherlibs/CVS/Root b/otherlibs/CVS/Root
deleted file mode 100644 (file)
index c83f52f..0000000
+++ /dev/null
@@ -1 +0,0 @@
-:ext:yquem.inria.fr:/net/yquem/devel/caml/repository
diff --git a/otherlibs/CVS/Tag b/otherlibs/CVS/Tag
deleted file mode 100644 (file)
index 8b28f3e..0000000
+++ /dev/null
@@ -1 +0,0 @@
-Tocaml3083
diff --git a/otherlibs/bigarray/CVS/Entries b/otherlibs/bigarray/CVS/Entries
deleted file mode 100644 (file)
index 48975e0..0000000
+++ /dev/null
@@ -1,11 +0,0 @@
-/.cvsignore/1.2/Thu Oct 11 12:04:37 2001//Tocaml3083
-/.depend/1.16.4.1/Tue Feb 22 14:33:36 2005//Tocaml3083
-/Makefile/1.18/Thu Jun 27 11:36:00 2002//Tocaml3083
-/Makefile.nt/1.10/Tue Jul  8 14:24:07 2003//Tocaml3083
-/bigarray.h/1.7/Tue Jul  8 14:24:07 2003//Tocaml3083
-/bigarray.ml/1.12/Sat May 25 08:34:05 2002//Tocaml3083
-/bigarray.mli/1.21/Sat May 25 08:34:05 2002//Tocaml3083
-/bigarray_stubs.c/1.19.4.1/Tue Feb 22 14:33:36 2005//Tocaml3083
-/mmap_unix.c/1.7/Fri Dec  7 13:39:50 2001//Tocaml3083
-/mmap_win32.c/1.4/Fri Jun  7 09:49:38 2002//Tocaml3083
-D
diff --git a/otherlibs/bigarray/CVS/Repository b/otherlibs/bigarray/CVS/Repository
deleted file mode 100644 (file)
index 0566dd1..0000000
+++ /dev/null
@@ -1 +0,0 @@
-csl/otherlibs/bigarray
diff --git a/otherlibs/bigarray/CVS/Root b/otherlibs/bigarray/CVS/Root
deleted file mode 100644 (file)
index c83f52f..0000000
+++ /dev/null
@@ -1 +0,0 @@
-:ext:yquem.inria.fr:/net/yquem/devel/caml/repository
diff --git a/otherlibs/bigarray/CVS/Tag b/otherlibs/bigarray/CVS/Tag
deleted file mode 100644 (file)
index deaa3ee..0000000
+++ /dev/null
@@ -1 +0,0 @@
-Nocaml3083
index 1882fdc766556f8b867b216d87e84b68fc5cf277..4df2515af0634a138e53c541431fbb05a0bc446d 100644 (file)
@@ -11,7 +11,7 @@
 (*                                                                     *)
 (***********************************************************************)
 
-(* $Id: bigarray.mli,v 1.21 2002/05/25 08:34:05 xleroy Exp $ *)
+(* $Id: bigarray.mli,v 1.21.6.1 2005/05/04 14:05:19 doligez Exp $ *)
 
 (** Large, multi-dimensional, numerical arrays.
 
@@ -420,7 +420,8 @@ module Genarray :
 
 (** {6 One-dimensional arrays} *)
 
-(** One-dimensional arrays. The [Array1] structure provides operations similar to those of
+(** One-dimensional arrays. The [Array1] structure provides operations
+   similar to those of
    {!Bigarray.Genarray}, but specialized to the case of one-dimensional arrays.
    (The [Array2] and [Array3] structures below provide operations
    specialized for two- and three-dimensional arrays.)
@@ -489,8 +490,9 @@ end
 
 (** {6 Two-dimensional arrays} *)
 
-(** Two-dimensional arrays. The [Array2] structure provides operations similar to those of
-   {!Bigarray.Genarray}, but specialized to the case of two-dimensional arrays. *)
+(** Two-dimensional arrays. The [Array2] structure provides operations
+   similar to those of {!Bigarray.Genarray}, but specialized to the
+   case of two-dimensional arrays. *)
 module Array2 :
   sig
   type ('a, 'b, 'c) t
diff --git a/otherlibs/db/CVS/Entries b/otherlibs/db/CVS/Entries
deleted file mode 100644 (file)
index e9ab91b..0000000
+++ /dev/null
@@ -1,2 +0,0 @@
-/.depend/1.1/Mon Feb 23 12:42:22 1998//Tocaml3083
-D
diff --git a/otherlibs/db/CVS/Repository b/otherlibs/db/CVS/Repository
deleted file mode 100644 (file)
index ba4c757..0000000
+++ /dev/null
@@ -1 +0,0 @@
-csl/otherlibs/db
diff --git a/otherlibs/db/CVS/Root b/otherlibs/db/CVS/Root
deleted file mode 100644 (file)
index c83f52f..0000000
+++ /dev/null
@@ -1 +0,0 @@
-:ext:yquem.inria.fr:/net/yquem/devel/caml/repository
diff --git a/otherlibs/db/CVS/Tag b/otherlibs/db/CVS/Tag
deleted file mode 100644 (file)
index deaa3ee..0000000
+++ /dev/null
@@ -1 +0,0 @@
-Nocaml3083
diff --git a/otherlibs/dbm/CVS/Entries b/otherlibs/dbm/CVS/Entries
deleted file mode 100644 (file)
index ebfb47e..0000000
+++ /dev/null
@@ -1,7 +0,0 @@
-/.cvsignore/1.1/Thu Oct 11 12:04:37 2001//Tocaml3083
-/.depend/1.6/Thu Jul  3 14:33:30 1997//Tocaml3083
-/Makefile/1.23/Thu Jun 27 11:36:01 2002//Tocaml3083
-/cldbm.c/1.8/Tue Jul  8 13:50:31 2003//Tocaml3083
-/dbm.ml/1.10/Fri Dec  7 13:39:51 2001//Tocaml3083
-/dbm.mli/1.15/Fri Dec  7 13:39:51 2001//Tocaml3083
-D
diff --git a/otherlibs/dbm/CVS/Repository b/otherlibs/dbm/CVS/Repository
deleted file mode 100644 (file)
index 0bc2766..0000000
+++ /dev/null
@@ -1 +0,0 @@
-csl/otherlibs/dbm
diff --git a/otherlibs/dbm/CVS/Root b/otherlibs/dbm/CVS/Root
deleted file mode 100644 (file)
index c83f52f..0000000
+++ /dev/null
@@ -1 +0,0 @@
-:ext:yquem.inria.fr:/net/yquem/devel/caml/repository
diff --git a/otherlibs/dbm/CVS/Tag b/otherlibs/dbm/CVS/Tag
deleted file mode 100644 (file)
index deaa3ee..0000000
+++ /dev/null
@@ -1 +0,0 @@
-Nocaml3083
diff --git a/otherlibs/dynlink/CVS/Entries b/otherlibs/dynlink/CVS/Entries
deleted file mode 100644 (file)
index 61563b8..0000000
+++ /dev/null
@@ -1,8 +0,0 @@
-/.cvsignore/1.1/Sat May  4 14:38:51 1996//Tocaml3083
-/.depend/1.6.4.1/Tue Feb 22 14:33:37 2005//Tocaml3083
-/Makefile/1.27/Sun Feb 22 15:07:51 2004//Tocaml3083
-/Makefile.nt/1.14/Mon Mar 24 15:31:30 2003//Tocaml3083
-/dynlink.ml/1.31/Mon May 26 13:46:36 2003//Tocaml3083
-/dynlink.mli/1.21/Sun Nov 17 16:42:11 2002//Tocaml3083
-/extract_crc.ml/1.10/Fri Apr  9 13:26:41 2004//Tocaml3083
-D
diff --git a/otherlibs/dynlink/CVS/Repository b/otherlibs/dynlink/CVS/Repository
deleted file mode 100644 (file)
index a9a28d4..0000000
+++ /dev/null
@@ -1 +0,0 @@
-csl/otherlibs/dynlink
diff --git a/otherlibs/dynlink/CVS/Root b/otherlibs/dynlink/CVS/Root
deleted file mode 100644 (file)
index c83f52f..0000000
+++ /dev/null
@@ -1 +0,0 @@
-:ext:yquem.inria.fr:/net/yquem/devel/caml/repository
diff --git a/otherlibs/dynlink/CVS/Tag b/otherlibs/dynlink/CVS/Tag
deleted file mode 100644 (file)
index deaa3ee..0000000
+++ /dev/null
@@ -1 +0,0 @@
-Nocaml3083
index 3d8fa25a4452955028bcc9261af972867d608c23..fd9811c31d3bcb1e8a80b7315dcdc0e695cdeb64 100644 (file)
@@ -1,82 +1,82 @@
-color.o: color.c libgraph.h /usr/X11R6/include/X11/Xlib.h \
-  /usr/X11R6/include/X11/X.h /usr/X11R6/include/X11/Xfuncproto.h \
-  /usr/X11R6/include/X11/Xosdefs.h /usr/X11R6/include/X11/Xutil.h \
+color.o: color.c libgraph.h \
+  \
+  \
   ../../byterun/mlvalues.h ../../byterun/compatibility.h \
   ../../byterun/config.h ../../config/m.h ../../config/s.h \
-  ../../byterun/misc.h /usr/X11R6/include/X11/Xatom.h
-draw.o: draw.c libgraph.h /usr/X11R6/include/X11/Xlib.h \
-  /usr/X11R6/include/X11/X.h /usr/X11R6/include/X11/Xfuncproto.h \
-  /usr/X11R6/include/X11/Xosdefs.h /usr/X11R6/include/X11/Xutil.h \
+  ../../byterun/misc.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
-dump_img.o: dump_img.c libgraph.h /usr/X11R6/include/X11/Xlib.h \
-  /usr/X11R6/include/X11/X.h /usr/X11R6/include/X11/Xfuncproto.h \
-  /usr/X11R6/include/X11/Xosdefs.h /usr/X11R6/include/X11/Xutil.h \
+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
-events.o: events.c libgraph.h /usr/X11R6/include/X11/Xlib.h \
-  /usr/X11R6/include/X11/X.h /usr/X11R6/include/X11/Xfuncproto.h \
-  /usr/X11R6/include/X11/Xosdefs.h /usr/X11R6/include/X11/Xutil.h \
+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
-fill.o: fill.c libgraph.h /usr/X11R6/include/X11/Xlib.h \
-  /usr/X11R6/include/X11/X.h /usr/X11R6/include/X11/Xfuncproto.h \
-  /usr/X11R6/include/X11/Xosdefs.h /usr/X11R6/include/X11/Xutil.h \
+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
-image.o: image.c libgraph.h /usr/X11R6/include/X11/Xlib.h \
-  /usr/X11R6/include/X11/X.h /usr/X11R6/include/X11/Xfuncproto.h \
-  /usr/X11R6/include/X11/Xosdefs.h /usr/X11R6/include/X11/Xutil.h \
+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
-make_img.o: make_img.c libgraph.h /usr/X11R6/include/X11/Xlib.h \
-  /usr/X11R6/include/X11/X.h /usr/X11R6/include/X11/Xfuncproto.h \
-  /usr/X11R6/include/X11/Xosdefs.h /usr/X11R6/include/X11/Xutil.h \
+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
-open.o: open.c libgraph.h /usr/X11R6/include/X11/Xlib.h \
-  /usr/X11R6/include/X11/X.h /usr/X11R6/include/X11/Xfuncproto.h \
-  /usr/X11R6/include/X11/Xosdefs.h /usr/X11R6/include/X11/Xutil.h \
+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
-point_col.o: point_col.c libgraph.h /usr/X11R6/include/X11/Xlib.h \
-  /usr/X11R6/include/X11/X.h /usr/X11R6/include/X11/Xfuncproto.h \
-  /usr/X11R6/include/X11/Xosdefs.h /usr/X11R6/include/X11/Xutil.h \
+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
-sound.o: sound.c libgraph.h /usr/X11R6/include/X11/Xlib.h \
-  /usr/X11R6/include/X11/X.h /usr/X11R6/include/X11/Xfuncproto.h \
-  /usr/X11R6/include/X11/Xosdefs.h /usr/X11R6/include/X11/Xutil.h \
+sound.o: sound.c libgraph.h \
+  \
+  \
   ../../byterun/mlvalues.h ../../byterun/compatibility.h \
   ../../byterun/config.h ../../config/m.h ../../config/s.h \
   ../../byterun/misc.h
-subwindow.o: subwindow.c libgraph.h /usr/X11R6/include/X11/Xlib.h \
-  /usr/X11R6/include/X11/X.h /usr/X11R6/include/X11/Xfuncproto.h \
-  /usr/X11R6/include/X11/Xosdefs.h /usr/X11R6/include/X11/Xutil.h \
+subwindow.o: subwindow.c libgraph.h \
+  \
+  \
   ../../byterun/mlvalues.h ../../byterun/compatibility.h \
   ../../byterun/config.h ../../config/m.h ../../config/s.h \
   ../../byterun/misc.h
-text.o: text.c libgraph.h /usr/X11R6/include/X11/Xlib.h \
-  /usr/X11R6/include/X11/X.h /usr/X11R6/include/X11/Xfuncproto.h \
-  /usr/X11R6/include/X11/Xosdefs.h /usr/X11R6/include/X11/Xutil.h \
+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
diff --git a/otherlibs/graph/CVS/Entries b/otherlibs/graph/CVS/Entries
deleted file mode 100644 (file)
index db8186b..0000000
+++ /dev/null
@@ -1,22 +0,0 @@
-/.cvsignore/1.3/Thu Oct 11 12:04:38 2001//Tocaml3083
-/.depend/1.19.4.3/Tue Feb 22 14:33:37 2005//Tocaml3083
-/Makefile/1.35/Tue Aug  5 13:39:33 2003//Tocaml3083
-/color.c/1.18/Mon May 17 17:10:00 2004//Tocaml3083
-/draw.c/1.19/Sun May 30 14:11:41 2004//Tocaml3083
-/dump_img.c/1.11/Wed Mar 24 15:02:04 2004//Tocaml3083
-/events.c/1.17/Sun May 30 10:25:08 2004//Tocaml3083
-/fill.c/1.14/Sun May 30 14:11:41 2004//Tocaml3083
-/graphics.ml/1.25/Wed Mar 24 15:02:06 2004//Tocaml3083
-/graphics.mli/1.36/Wed Mar 24 15:02:06 2004//Tocaml3083
-/graphicsX11.ml/1.3/Wed Mar 24 15:02:06 2004//Tocaml3083
-/graphicsX11.mli/1.4/Fri Dec  7 13:39:54 2001//Tocaml3083
-/image.c/1.13/Wed Mar 24 15:02:05 2004//Tocaml3083
-/image.h/1.8/Wed Mar 24 15:02:06 2004//Tocaml3083
-/libgraph.h/1.23/Sun May 30 10:25:08 2004//Tocaml3083
-/make_img.c/1.13/Wed Mar 24 15:02:05 2004//Tocaml3083
-/open.c/1.32.2.1/Wed Jan 12 15:32:18 2005//Tocaml3083
-/point_col.c/1.8/Wed Mar 24 15:02:05 2004//Tocaml3083
-/sound.c/1.9/Wed Mar 24 15:02:05 2004//Tocaml3083
-/subwindow.c/1.6/Wed Mar 24 15:02:05 2004//Tocaml3083
-/text.c/1.15/Wed Mar 24 15:02:06 2004//Tocaml3083
-D
diff --git a/otherlibs/graph/CVS/Repository b/otherlibs/graph/CVS/Repository
deleted file mode 100644 (file)
index 775d1e7..0000000
+++ /dev/null
@@ -1 +0,0 @@
-csl/otherlibs/graph
diff --git a/otherlibs/graph/CVS/Root b/otherlibs/graph/CVS/Root
deleted file mode 100644 (file)
index c83f52f..0000000
+++ /dev/null
@@ -1 +0,0 @@
-:ext:yquem.inria.fr:/net/yquem/devel/caml/repository
diff --git a/otherlibs/graph/CVS/Tag b/otherlibs/graph/CVS/Tag
deleted file mode 100644 (file)
index deaa3ee..0000000
+++ /dev/null
@@ -1 +0,0 @@
-Nocaml3083
index 24f6fbc5a91aab9d6bc03129a79ec9a46c2c8e02..ce1c8eabd8ce7436cad5ee0ce3a25b01648c7de6 100644 (file)
@@ -11,7 +11,7 @@
 #                                                                       #
 #########################################################################
 
-# $Id: Makefile,v 1.35 2003/08/05 13:39:33 xleroy Exp $
+# $Id: Makefile,v 1.35.4.1 2005/06/22 15:47:33 doligez Exp $
 
 # Makefile for the portable graphics library
 
@@ -69,7 +69,7 @@ installopt:
        $(CAMLOPT) -c $(COMPFLAGS) $<
 
 depend:
-       gcc -MM $(CFLAGS) *.c > .depend
+       gcc -MM $(CFLAGS) *.c | sed -e 's, /usr[^ ]*\.h,,g' > .depend
        ../../boot/ocamlrun ../../tools/ocamldep *.mli *.ml >> .depend
 
 include .depend
index d2da5bed8c073a6e7ed907e77ce019fa213d1f01..a1214fccfb3d2c76d86bd68167723cf6373d1201 100644 (file)
@@ -11,7 +11,7 @@
 /*                                                                     */
 /***********************************************************************/
 
-/* $Id: events.c,v 1.17 2004/05/30 10:25:08 xleroy Exp $ */
+/* $Id: events.c,v 1.17.2.1 2005/07/29 14:21:18 xleroy Exp $ */
 
 #include <signal.h>
 #include "libgraph.h"
@@ -230,6 +230,7 @@ static value caml_gr_wait_event_blocking(long mask)
       enter_blocking_section();
       select(FD_SETSIZE, &readfds, NULL, NULL, NULL);
       leave_blocking_section();
+      caml_gr_check_open(); /* in case another thread closed the display */
     }
   }
   caml_gr_ignore_sigio = False;
index d3c8ca66afc89f5f2a59651ed9b269eb1b470e92..cb491892a1a373887869afee664d74c92778764a 100644 (file)
@@ -11,7 +11,7 @@
 (*                                                                     *)
 (***********************************************************************)
 
-(* $Id: graphics.ml,v 1.25 2004/03/24 15:02:06 starynke Exp $ *)
+(* $Id: graphics.ml,v 1.25.2.2 2005/08/05 12:43:47 doligez Exp $ *)
 
 exception Graphic_failure of string
 
@@ -41,6 +41,7 @@ let (open_graph, close_graph) =
   | _ -> invalid_arg ("Graphics: unknown OS type: " ^ Sys.os_type)
 
 external set_window_title : string -> unit = "caml_gr_set_window_title"
+external resize_window : int -> int -> unit = "caml_gr_resize_window"
 external clear_graph : unit -> unit = "caml_gr_clear_graph"
 external size_x : unit -> int = "caml_gr_size_x"
 external size_y : unit -> int = "caml_gr_size_y"
@@ -94,7 +95,13 @@ let current_point () = current_x (), current_y ()
 external lineto : int -> int -> unit = "caml_gr_lineto"
 let rlineto x y = lineto (current_x () + x) (current_y () + y)
 let rmoveto x y = moveto (current_x () + x) (current_y () + y)
-external draw_rect : int -> int -> int -> int -> unit = "caml_gr_draw_rect"
+
+external raw_draw_rect : int -> int -> int -> int -> unit = "caml_gr_draw_rect"
+let draw_rect x y w h =
+  if w < 0 || h < 0 then raise (Invalid_argument "draw_rect")
+  else raw_draw_rect x y w h
+;;
+
 let draw_poly, draw_poly_line =
   let dodraw close_flag points =
     if Array.length points > 0 then begin
@@ -118,16 +125,37 @@ let draw_segments segs =
   done;
   moveto savex savey;
 ;;
-external draw_arc : int -> int -> int -> int -> int -> int -> unit
+
+external raw_draw_arc : int -> int -> int -> int -> int -> int -> unit
                = "caml_gr_draw_arc" "caml_gr_draw_arc_nat"
+let draw_arc x y rx ry a1 a2 =
+  if rx < 0 || ry < 0 then raise (Invalid_argument "draw_arc/ellipse/circle")
+  else raw_draw_arc x y rx ry a1 a2
+;;
+
 let draw_ellipse x y rx ry = draw_arc x y rx ry 0 360
 let draw_circle x y r = draw_arc x y r r 0 360
-external set_line_width : int -> unit = "caml_gr_set_line_width"
 
-external fill_rect : int -> int -> int -> int -> unit = "caml_gr_fill_rect"
+external raw_set_line_width : int -> unit = "caml_gr_set_line_width"
+let set_line_width w =
+  if w < 0 then raise (Invalid_argument "set_line_width")
+  else raw_set_line_width w
+;;
+
+external raw_fill_rect : int -> int -> int -> int -> unit = "caml_gr_fill_rect"
+let fill_rect x y w h =
+  if w < 0 || h < 0 then raise (Invalid_argument "fill_rect")
+  else raw_fill_rect x y w h
+;;
+
 external fill_poly : (int * int) array -> unit = "caml_gr_fill_poly"
-external fill_arc : int -> int -> int -> int -> int -> int -> unit
+external raw_fill_arc : int -> int -> int -> int -> int -> int -> unit
                = "caml_gr_fill_arc" "caml_gr_fill_arc_nat"
+let fill_arc x y rx ry a1 a2 =
+  if rx < 0 || ry < 0 then raise (Invalid_argument "fill_arc/ellipse/circle")
+  else raw_fill_arc x y rx ry a1 a2
+;;
+
 let fill_ellipse x y rx ry = fill_arc x y rx ry 0 360
 let fill_circle x y r = fill_arc x y r r 0 360
 
index b865c6f205afd8d16debff9361ae215e70626bd8..a2d4a1951c675e44ae272f4b484538c35f768305 100644 (file)
@@ -11,7 +11,7 @@
 (*                                                                     *)
 (***********************************************************************)
 
-(* $Id: graphics.mli,v 1.36 2004/03/24 15:02:06 starynke Exp $ *)
+(* $Id: graphics.mli,v 1.36.2.2 2005/08/05 12:43:47 doligez Exp $ *)
 
 (** Machine-independent graphics primitives. *)
 
@@ -35,6 +35,9 @@ val close_graph : unit -> unit
 val set_window_title : string -> unit
 (** Set the title of the graphics window. *)
 
+val resize_window : int -> int -> unit
+(** Resize and erase the graphics window. *)
+
 external clear_graph : unit -> unit = "caml_gr_clear_graph"
 (** Erase the graphics window. *)
 
@@ -128,10 +131,11 @@ val curveto : int * int -> int * int -> int * int -> unit
    the current point to point [d], with control points [b] and
    [c], and moves the current point to [d]. *)
 
-external draw_rect : int -> int -> int -> int -> unit = "caml_gr_draw_rect"
+val draw_rect : int -> int -> int -> int -> unit
 (** [draw_rect x y w h] draws the rectangle with lower left corner
    at [x,y], width [w] and height [h].
-   The current point is unchanged. *)
+   The current point is unchanged.
+   Raise [Invalid_argument] if [w] or [h] is negative. *)
 
 val draw_poly_line : (int * int) array -> unit
 (** [draw_poly_line points] draws the line that joins the
@@ -153,27 +157,29 @@ val draw_segments : (int * int * int * int) array -> unit
    the coordinates of the end points of the segment.
    The current point is unchanged. *)
 
-external draw_arc :
-  int -> int -> int -> int -> int -> int ->
-    unit = "caml_gr_draw_arc" "caml_gr_draw_arc_nat"
+val draw_arc : int -> int -> int -> int -> int -> int -> unit
 (** [draw_arc x y rx ry a1 a2] draws an elliptical arc with center
    [x,y], horizontal radius [rx], vertical radius [ry], from angle
-   [a1] to angle [a2] (in degrees). The current point is unchanged. *)
+   [a1] to angle [a2] (in degrees). The current point is unchanged.
+   Raise [Invalid_argument] if [rx] or [ry] is negative. *)
 
 val draw_ellipse : int -> int -> int -> int -> unit
 (** [draw_ellipse x y rx ry] draws an ellipse with center
    [x,y], horizontal radius [rx] and vertical radius [ry].
-   The current point is unchanged.  *)
+   The current point is unchanged.
+   Raise [Invalid_argument] if [rx] or [ry] is negative. *)
 
 val draw_circle : int -> int -> int -> unit
 (** [draw_circle x y r] draws a circle with center [x,y] and
-   radius [r]. The current point is unchanged. *)
+   radius [r]. The current point is unchanged.
+   Raise [Invalid_argument] if [r] is negative. *)
 
-external set_line_width : int -> unit = "caml_gr_set_line_width"
+val set_line_width : int -> unit
 (** Set the width of points and lines drawn with the functions above.
    Under X Windows, [set_line_width 0] selects a width of 1 pixel
    and a faster, but less precise drawing algorithm than the one
-   used when [set_line_width 1] is specified. *)
+   used when [set_line_width 1] is specified.
+   Raise [Invalid_argument] if the argument is negative. *)
 
 (** {6 Text drawing} *)
 
@@ -187,12 +193,12 @@ external draw_string : string -> unit = "caml_gr_draw_string"
 
 external set_font : string -> unit = "caml_gr_set_font"
 (** Set the font used for drawing text.
-   The interpretation of the arguments to [set_font] 
+   The interpretation of the argument to [set_font] 
    is implementation-dependent. *)
 
 val set_text_size : int -> unit
 (** Set the character size used for drawing text.
-   The interpretation of the arguments to [set_text_size] 
+   The interpretation of the argument to [set_text_size] 
    is implementation-dependent. *)
 
 external text_size : string -> int * int = "caml_gr_text_size"
@@ -202,17 +208,16 @@ external text_size : string -> int * int = "caml_gr_text_size"
 
 (** {6 Filling} *)
 
-external fill_rect : int -> int -> int -> int -> unit = "caml_gr_fill_rect"
+val fill_rect : int -> int -> int -> int -> unit
 (** [fill_rect x y w h] fills the rectangle with lower left corner
-   at [x,y], width [w] and height [h], with the current color. *)
+   at [x,y], width [w] and height [h], with the current color.
+   Raise [Invalid_argument] if [w] or [h] is negative. *)
 
 external fill_poly : (int * int) array -> unit = "caml_gr_fill_poly"
 (** Fill the given polygon with the current color. The array
    contains the coordinates of the vertices of the polygon. *)
 
-external fill_arc :
-  int -> int -> int -> int -> int -> int ->
-    unit = "caml_gr_fill_arc" "caml_gr_fill_arc_nat"
+val fill_arc : int -> int -> int -> int -> int -> int -> unit
 (** Fill an elliptical pie slice with the current color. The
    parameters are the same as for {!Graphics.draw_arc}. *)
 
@@ -333,21 +338,21 @@ val auto_synchronize : bool -> unit
    on screen, and in a memory area (the ``backing store'').
    The backing store image is used to re-paint the on-screen
    window when necessary.
-   
+
    To avoid flicker during animations, it is possible to turn
    off on-screen drawing, perform a number of drawing operations
    in the backing store only, then refresh the on-screen window
    explicitly.
-   
+
    [auto_synchronize false] turns on-screen drawing off.  All
    subsequent drawing commands are performed on the backing store
    only.
-   
+
    [auto_synchronize true] refreshes the on-screen window from
    the backing store (as per [synchronize]), then turns on-screen
    drawing back on.  All subsequent drawing commands are performed
    both on screen and in the backing store.
-   
+
    The default drawing mode corresponds to [auto_synchronize true]. *)
 
 external synchronize : unit -> unit = "caml_gr_synchronize"
index bf7acfc082d0b0da2d5aa52b073c65b7708fa7fa..04c7702ff5a5f1d3afab5c5c573d93884fdf08a2 100644 (file)
@@ -11,7 +11,7 @@
 /*                                                                     */
 /***********************************************************************/
 
-/* $Id: open.c,v 1.32.2.1 2005/01/12 15:32:18 doligez Exp $ */
+/* $Id: open.c,v 1.32.2.2 2005/05/26 09:15:22 doligez Exp $ */
 
 #include <string.h>
 #include <fcntl.h>
@@ -252,6 +252,31 @@ value caml_gr_set_window_title(value n)
   return Val_unit;
 }
 
+value caml_gr_resize_window (value vx, value vy)
+{
+  caml_gr_check_open ();
+
+  caml_gr_window.w = Int_val (vx);
+  caml_gr_window.h = Int_val (vy);
+  XResizeWindow (caml_gr_display, caml_gr_window.win, caml_gr_window.w,
+                 caml_gr_window.h);
+
+  XFreeGC(caml_gr_display, caml_gr_bstore.gc);
+  XFreePixmap(caml_gr_display, caml_gr_bstore.win);
+
+  caml_gr_bstore.w = caml_gr_window.w;
+  caml_gr_bstore.h = caml_gr_window.h;
+  caml_gr_bstore.win =
+    XCreatePixmap(caml_gr_display, caml_gr_window.win, caml_gr_bstore.w,
+                  caml_gr_bstore.h,
+                  XDefaultDepth(caml_gr_display, caml_gr_screen));
+  caml_gr_bstore.gc = XCreateGC(caml_gr_display, caml_gr_bstore.win, 0, NULL);
+  XSetBackground(caml_gr_display, caml_gr_bstore.gc, caml_gr_background);
+
+  caml_gr_clear_graph ();
+  return Val_unit;
+}
+
 value caml_gr_clear_graph(void)
 {
   caml_gr_check_open();
diff --git a/otherlibs/labltk/CVS/Entries b/otherlibs/labltk/CVS/Entries
deleted file mode 100644 (file)
index ca26315..0000000
+++ /dev/null
@@ -1,8 +0,0 @@
-/.cvsignore/1.2/Tue Jul  9 16:23:20 2002//Tocaml3083
-/Changes/1.2/Fri Apr 26 12:15:31 2002//Tocaml3083
-/Makefile/1.9/Fri Aug 29 14:08:20 2003//Tocaml3083
-/Makefile.nt/1.4/Fri Jun  7 09:49:38 2002//Tocaml3083
-/README/1.5/Tue Jul 23 14:11:54 2002//Tocaml3083
-/Widgets.src/1.22.4.1/Wed Feb  2 06:39:39 2005//Tocaml3083
-/labl.gif/1.5/Fri Apr 21 08:33:30 2000/-kb/Tocaml3083
-D
diff --git a/otherlibs/labltk/CVS/Entries.Log b/otherlibs/labltk/CVS/Entries.Log
deleted file mode 100644 (file)
index e0fc5d3..0000000
+++ /dev/null
@@ -1,14 +0,0 @@
-A D/browser////
-A D/builtin////
-A D/camltk////
-A D/compiler////
-A D/example////
-A D/examples_camltk////
-A D/examples_labltk////
-A D/frx////
-A D/jpf////
-A D/labltk////
-A D/lib////
-A D/support////
-A D/tkanim////
-R D/example////
diff --git a/otherlibs/labltk/CVS/Repository b/otherlibs/labltk/CVS/Repository
deleted file mode 100644 (file)
index ac322ba..0000000
+++ /dev/null
@@ -1 +0,0 @@
-csl/otherlibs/labltk
diff --git a/otherlibs/labltk/CVS/Root b/otherlibs/labltk/CVS/Root
deleted file mode 100644 (file)
index c83f52f..0000000
+++ /dev/null
@@ -1 +0,0 @@
-:ext:yquem.inria.fr:/net/yquem/devel/caml/repository
diff --git a/otherlibs/labltk/CVS/Tag b/otherlibs/labltk/CVS/Tag
deleted file mode 100644 (file)
index deaa3ee..0000000
+++ /dev/null
@@ -1 +0,0 @@
-Nocaml3083
diff --git a/otherlibs/labltk/browser/CVS/Entries b/otherlibs/labltk/browser/CVS/Entries
deleted file mode 100644 (file)
index 650a45e..0000000
+++ /dev/null
@@ -1,54 +0,0 @@
-/.cvsignore/1.3/Tue Feb  1 05:43:24 2000//Tocaml3083
-/.depend/1.3/Thu Nov 22 07:36:15 2001//Tocaml3083
-/Makefile/1.21/Mon Aug 12 05:31:21 2002//Tocaml3083
-/Makefile.nt/1.12/Thu Jul  4 10:23:16 2002//Tocaml3083
-/README/1.7/Thu Sep 27 08:24:50 2001//Tocaml3083
-/dummyUnix.mli/1.4/Mon Dec 29 22:15:01 2003//Tocaml3083
-/dummyWin.mli/1.2/Fri Dec  7 13:39:55 2001//Tocaml3083
-/editor.ml/1.40/Wed Apr  2 06:56:05 2003//Tocaml3083
-/editor.mli/1.5/Fri Dec  7 13:39:57 2001//Tocaml3083
-/fileselect.ml/1.20/Fri Aug  9 10:34:44 2002//Tocaml3083
-/fileselect.mli/1.7/Fri Apr 26 12:15:33 2002//Tocaml3083
-/help.ml/1.3/Thu Jul  4 10:25:29 2002//Tocaml3083
-/help.txt/1.2/Thu Jul  4 10:25:29 2002//Tocaml3083
-/jg_bind.ml/1.7/Fri Dec  7 13:39:57 2001//Tocaml3083
-/jg_bind.mli/1.5/Fri Dec  7 13:39:57 2001//Tocaml3083
-/jg_box.ml/1.8/Fri Dec  7 13:39:58 2001//Tocaml3083
-/jg_button.ml/1.8/Fri Dec  7 13:39:58 2001//Tocaml3083
-/jg_completion.ml/1.10/Fri Dec  7 13:39:58 2001//Tocaml3083
-/jg_completion.mli/1.6/Fri Dec  7 13:39:58 2001//Tocaml3083
-/jg_config.ml/1.10/Fri Dec  7 13:39:58 2001//Tocaml3083
-/jg_config.mli/1.5/Fri Dec  7 13:39:58 2001//Tocaml3083
-/jg_entry.ml/1.7/Fri Dec  7 13:39:58 2001//Tocaml3083
-/jg_memo.ml/1.8/Fri Dec  7 13:39:58 2001//Tocaml3083
-/jg_memo.mli/1.7/Fri Dec  7 13:39:59 2001//Tocaml3083
-/jg_menu.ml/1.8/Fri Dec  7 13:39:59 2001//Tocaml3083
-/jg_message.ml/1.18/Fri Jul 26 00:04:05 2002//Tocaml3083
-/jg_message.mli/1.10/Fri Jul 26 00:04:05 2002//Tocaml3083
-/jg_multibox.ml/1.11/Fri Dec  7 13:39:59 2001//Tocaml3083
-/jg_multibox.mli/1.6/Fri Dec  7 13:39:59 2001//Tocaml3083
-/jg_text.ml/1.11/Fri Aug  9 10:34:44 2002//Tocaml3083
-/jg_text.mli/1.7/Fri Dec  7 13:40:00 2001//Tocaml3083
-/jg_tk.ml/1.7/Fri Dec  7 13:40:00 2001//Tocaml3083
-/jg_toplevel.ml/1.8/Fri Dec  7 13:40:00 2001//Tocaml3083
-/lexical.ml/1.15/Fri Nov  1 17:06:45 2002//Tocaml3083
-/lexical.mli/1.6/Fri Dec  7 13:40:00 2001//Tocaml3083
-/list2.ml/1.9/Fri Dec  7 13:40:00 2001//Tocaml3083
-/main.ml/1.30/Fri May  2 13:20:58 2003//Tocaml3083
-/mytypes.mli/1.6/Wed Apr  2 06:56:05 2003//Tocaml3083
-/searchid.ml/1.22/Sat Jun 12 08:55:46 2004//Tocaml3083
-/searchid.mli/1.6/Thu Jul 25 22:51:47 2002//Tocaml3083
-/searchpos.ml/1.44.2.1/Tue Jun 29 01:50:19 2004//Tocaml3083
-/searchpos.mli/1.12/Wed Apr  2 06:56:05 2003//Tocaml3083
-/setpath.ml/1.16/Fri Apr 26 12:15:34 2002//Tocaml3083
-/setpath.mli/1.6/Fri Dec  7 13:40:02 2001//Tocaml3083
-/shell.ml/1.39/Tue Aug  6 03:03:09 2002//Tocaml3083
-/shell.mli/1.8/Thu Jul 25 22:51:47 2002//Tocaml3083
-/typecheck.ml/1.15/Wed Apr  2 06:56:06 2003//Tocaml3083
-/typecheck.mli/1.5/Fri Dec  7 13:40:02 2001//Tocaml3083
-/useunix.ml/1.13/Fri Aug  9 10:34:44 2002//Tocaml3083
-/useunix.mli/1.6/Fri Aug  9 10:34:44 2002//Tocaml3083
-/viewer.ml/1.31/Sat Jun 12 08:55:47 2004//Tocaml3083
-/viewer.mli/1.7/Thu Jul 11 13:49:51 2002//Tocaml3083
-/winmain.c/1.4/Thu Apr  1 13:09:21 2004//Tocaml3083
-D
diff --git a/otherlibs/labltk/browser/CVS/Repository b/otherlibs/labltk/browser/CVS/Repository
deleted file mode 100644 (file)
index 278e169..0000000
+++ /dev/null
@@ -1 +0,0 @@
-csl/otherlibs/labltk/browser
diff --git a/otherlibs/labltk/browser/CVS/Root b/otherlibs/labltk/browser/CVS/Root
deleted file mode 100644 (file)
index c83f52f..0000000
+++ /dev/null
@@ -1 +0,0 @@
-:ext:yquem.inria.fr:/net/yquem/devel/caml/repository
diff --git a/otherlibs/labltk/browser/CVS/Tag b/otherlibs/labltk/browser/CVS/Tag
deleted file mode 100644 (file)
index deaa3ee..0000000
+++ /dev/null
@@ -1 +0,0 @@
-Nocaml3083
index 607972363729b4468ae83aee80e71688d2af27cc..a305c3dd499b37af2f0131ca28cc7e9bd7e40253 100644 (file)
@@ -7,7 +7,7 @@ INCLUDES=$(OTHERSLIB) $(LABLTKLIB) $(OCAMLTOPLIB)
 CCFLAGS=-I../../../byterun $(TK_DEFS)
 
 ifeq ($(CCOMPTYPE),cc)
-WINDOWS_APP=
+WINDOWS_APP=-cclib "-Wl,--subsystem,windows"
 else
 WINDOWS_APP=-cclib "/link /subsystem:windows"
 endif
diff --git a/otherlibs/labltk/builtin/CVS/Entries b/otherlibs/labltk/builtin/CVS/Entries
deleted file mode 100644 (file)
index 1ef8ba3..0000000
+++ /dev/null
@@ -1,47 +0,0 @@
-/LICENSE/1.2/Fri Dec  7 13:40:03 2001//Tocaml3083
-/builtin_FilePattern.ml/1.2/Fri Apr 26 12:15:35 2002//Tocaml3083
-/builtin_GetBitmap.ml/1.6/Fri Apr 26 12:15:35 2002//Tocaml3083
-/builtin_GetCursor.ml/1.7/Tue Jul 23 14:11:54 2002//Tocaml3083
-/builtin_GetPixel.ml/1.6/Fri Apr 26 12:15:35 2002//Tocaml3083
-/builtin_ScrollValue.ml/1.7/Tue Jul 23 14:11:54 2002//Tocaml3083
-/builtin_bind.ml/1.12/Tue Jul 23 14:11:54 2002//Tocaml3083
-/builtin_bindtags.ml/1.7/Tue Jul 23 14:11:54 2002//Tocaml3083
-/builtin_font.ml/1.3/Tue Jul  8 08:51:13 2003//Tocaml3083
-/builtin_grab.ml/1.3/Tue Jul  8 08:51:13 2003//Tocaml3083
-/builtin_index.ml/1.7/Tue Jul 23 14:11:54 2002//Tocaml3083
-/builtin_palette.ml/1.6/Fri Apr 26 12:15:36 2002//Tocaml3083
-/builtin_text.ml/1.7/Tue Jul 23 14:11:54 2002//Tocaml3083
-/builtina_empty.ml/1.3/Tue Nov 30 14:59:26 1999//Tocaml3083
-/builtinf_GetPixel.ml/1.3/Fri Apr 26 12:15:37 2002//Tocaml3083
-/builtinf_bind.ml/1.8/Tue Jul 23 14:11:54 2002//Tocaml3083
-/builtini_GetBitmap.ml/1.6/Fri Apr 26 12:15:38 2002//Tocaml3083
-/builtini_GetCursor.ml/1.6/Tue Jul 23 14:11:54 2002//Tocaml3083
-/builtini_GetPixel.ml/1.8/Fri Oct 11 18:56:18 2002//Tocaml3083
-/builtini_ScrollValue.ml/1.6/Fri Oct 11 18:56:18 2002//Tocaml3083
-/builtini_bind.ml/1.13/Tue Jul 23 14:11:54 2002//Tocaml3083
-/builtini_bindtags.ml/1.5/Fri Apr 26 12:15:39 2002//Tocaml3083
-/builtini_font.ml/1.2/Fri Apr 26 12:15:39 2002//Tocaml3083
-/builtini_grab.ml/1.2/Tue Nov 30 14:59:27 1999//Tocaml3083
-/builtini_index.ml/1.12/Tue Jul 23 14:11:54 2002//Tocaml3083
-/builtini_palette.ml/1.6/Tue Jul 23 14:11:54 2002//Tocaml3083
-/builtini_text.ml/1.11/Fri Apr 26 12:15:40 2002//Tocaml3083
-/canvas_bind.ml/1.10/Tue Jul 23 14:11:54 2002//Tocaml3083
-/canvas_bind.mli/1.7/Fri Apr 26 12:15:40 2002//Tocaml3083
-/dialog.ml/1.11/Tue Jul 23 14:11:54 2002//Tocaml3083
-/dialog.mli/1.4/Fri Apr 26 12:15:40 2002//Tocaml3083
-/image.ml/1.2/Fri Apr 26 12:15:41 2002//Tocaml3083
-/image.mli/1.2/Fri Apr 26 12:15:41 2002//Tocaml3083
-/optionmenu.ml/1.10/Tue Jul 23 14:11:54 2002//Tocaml3083
-/optionmenu.mli/1.4/Fri Apr 26 12:15:41 2002//Tocaml3083
-/rawimg.ml/1.2/Fri Apr 26 12:15:41 2002//Tocaml3083
-/rawimg.mli/1.2/Fri Apr 26 12:15:41 2002//Tocaml3083
-/report.ml/1.2/Fri Apr 26 12:15:42 2002//Tocaml3083
-/selection_handle_set.ml/1.12/Tue Jul 23 14:11:55 2002//Tocaml3083
-/selection_handle_set.mli/1.5/Fri Apr 26 12:15:42 2002//Tocaml3083
-/selection_own_set.ml/1.8/Tue Jul 23 14:11:55 2002//Tocaml3083
-/selection_own_set.mli/1.4/Fri Apr 26 12:15:42 2002//Tocaml3083
-/text_tag_bind.ml/1.8/Tue Jul 23 14:11:55 2002//Tocaml3083
-/text_tag_bind.mli/1.5/Fri Apr 26 12:15:42 2002//Tocaml3083
-/winfo_contained.ml/1.5/Fri Apr 26 12:15:42 2002//Tocaml3083
-/winfo_contained.mli/1.4/Fri Apr 26 12:15:43 2002//Tocaml3083
-D
diff --git a/otherlibs/labltk/builtin/CVS/Repository b/otherlibs/labltk/builtin/CVS/Repository
deleted file mode 100644 (file)
index 2f5f1a2..0000000
+++ /dev/null
@@ -1 +0,0 @@
-csl/otherlibs/labltk/builtin
diff --git a/otherlibs/labltk/builtin/CVS/Root b/otherlibs/labltk/builtin/CVS/Root
deleted file mode 100644 (file)
index c83f52f..0000000
+++ /dev/null
@@ -1 +0,0 @@
-:ext:yquem.inria.fr:/net/yquem/devel/caml/repository
diff --git a/otherlibs/labltk/builtin/CVS/Tag b/otherlibs/labltk/builtin/CVS/Tag
deleted file mode 100644 (file)
index deaa3ee..0000000
+++ /dev/null
@@ -1 +0,0 @@
-Nocaml3083
diff --git a/otherlibs/labltk/camltk/CVS/Entries b/otherlibs/labltk/camltk/CVS/Entries
deleted file mode 100644 (file)
index ef04a09..0000000
+++ /dev/null
@@ -1,7 +0,0 @@
-/.cvsignore/1.2/Fri Apr 26 12:15:43 2002//Tocaml3083
-/Makefile/1.5/Fri Aug 29 14:08:21 2003//Tocaml3083
-/Makefile.gen/1.4.6.1/Mon Jul 12 09:38:05 2004//Tocaml3083
-/Makefile.gen.nt/1.4/Fri Jun  7 13:31:21 2002//Tocaml3083
-/Makefile.nt/1.3/Fri Jun  7 09:49:39 2002//Tocaml3083
-/modules/1.1/Fri Apr 26 13:58:15 2002//Tocaml3083
-D
diff --git a/otherlibs/labltk/camltk/CVS/Repository b/otherlibs/labltk/camltk/CVS/Repository
deleted file mode 100644 (file)
index 6ce4361..0000000
+++ /dev/null
@@ -1 +0,0 @@
-csl/otherlibs/labltk/camltk
diff --git a/otherlibs/labltk/camltk/CVS/Root b/otherlibs/labltk/camltk/CVS/Root
deleted file mode 100644 (file)
index c83f52f..0000000
+++ /dev/null
@@ -1 +0,0 @@
-:ext:yquem.inria.fr:/net/yquem/devel/caml/repository
diff --git a/otherlibs/labltk/camltk/CVS/Tag b/otherlibs/labltk/camltk/CVS/Tag
deleted file mode 100644 (file)
index deaa3ee..0000000
+++ /dev/null
@@ -1 +0,0 @@
-Nocaml3083
diff --git a/otherlibs/labltk/compiler/CVS/Entries b/otherlibs/labltk/compiler/CVS/Entries
deleted file mode 100644 (file)
index ce3ef33..0000000
+++ /dev/null
@@ -1,22 +0,0 @@
-/.cvsignore/1.2/Fri Apr 26 12:15:45 2002//Tocaml3083
-/.depend/1.3/Fri Apr 26 12:15:45 2002//Tocaml3083
-/Makefile/1.7/Fri Apr 26 12:15:45 2002//Tocaml3083
-/Makefile.nt/1.5/Fri Jun  7 09:49:39 2002//Tocaml3083
-/code.mli/1.2/Fri Apr 26 12:15:45 2002//Tocaml3083
-/compile.ml/1.31/Tue Jul  8 08:50:24 2003//Tocaml3083
-/copyright/1.2/Fri Apr 26 12:15:46 2002//Tocaml3083
-/flags.ml/1.2/Fri Apr 26 12:15:46 2002//Tocaml3083
-/intf.ml/1.20/Tue Jul 23 14:11:55 2002//Tocaml3083
-/lexer.mll/1.14/Tue Jul 23 14:11:55 2002//Tocaml3083
-/maincompile.ml/1.19/Wed Oct 30 23:31:26 2002//Tocaml3083
-/parser.mly/1.9/Thu Mar 27 15:04:44 2003//Tocaml3083
-/pp.ml/1.2/Fri Apr 26 12:15:47 2002//Tocaml3083
-/ppexec.ml/1.3/Tue Jul 23 14:11:55 2002//Tocaml3083
-/pplex.mli/1.2/Fri Apr 26 12:15:47 2002//Tocaml3083
-/pplex.mll/1.3/Tue Jul 23 14:11:55 2002//Tocaml3083
-/ppparse.ml/1.3/Tue Jul 23 14:11:55 2002//Tocaml3083
-/ppyac.mly/1.2/Fri Apr 26 12:15:48 2002//Tocaml3083
-/printer.ml/1.6/Fri Apr 26 12:15:48 2002//Tocaml3083
-/tables.ml/1.20/Fri Apr 26 12:15:48 2002//Tocaml3083
-/tsort.ml/1.12/Fri Apr 26 12:15:48 2002//Tocaml3083
-D
diff --git a/otherlibs/labltk/compiler/CVS/Repository b/otherlibs/labltk/compiler/CVS/Repository
deleted file mode 100644 (file)
index 6a96048..0000000
+++ /dev/null
@@ -1 +0,0 @@
-csl/otherlibs/labltk/compiler
diff --git a/otherlibs/labltk/compiler/CVS/Root b/otherlibs/labltk/compiler/CVS/Root
deleted file mode 100644 (file)
index c83f52f..0000000
+++ /dev/null
@@ -1 +0,0 @@
-:ext:yquem.inria.fr:/net/yquem/devel/caml/repository
diff --git a/otherlibs/labltk/compiler/CVS/Tag b/otherlibs/labltk/compiler/CVS/Tag
deleted file mode 100644 (file)
index deaa3ee..0000000
+++ /dev/null
@@ -1 +0,0 @@
-Nocaml3083
diff --git a/otherlibs/labltk/examples_camltk/CVS/Entries b/otherlibs/labltk/examples_camltk/CVS/Entries
deleted file mode 100644 (file)
index 9381183..0000000
+++ /dev/null
@@ -1,16 +0,0 @@
-/.cvsignore/1.2/Fri Apr 26 12:15:49 2002//Tocaml3083
-/Makefile/1.2/Fri Apr 26 12:15:49 2002//Tocaml3083
-/Makefile.nt/1.3/Tue Jun 11 08:30:19 2002//Tocaml3083
-/addition.ml/1.3/Tue Jul 23 14:11:56 2002//Tocaml3083
-/eyes.ml/1.2/Fri Apr 26 12:15:51 2002//Tocaml3083
-/fileinput.ml/1.3/Tue Jul 23 14:11:56 2002//Tocaml3083
-/fileopen.ml/1.2/Fri Apr 26 12:15:51 2002//Tocaml3083
-/helloworld.ml/1.2/Fri Apr 26 12:15:51 2002//Tocaml3083
-/jptest.ml/1.2/Fri Apr 26 12:15:51 2002//Tocaml3083
-/mytext.ml/1.2/Fri Apr 26 12:15:52 2002//Tocaml3083
-/socketinput.ml/1.2/Fri Apr 26 12:15:52 2002//Tocaml3083
-/taddition.ml/1.3/Tue Jul 23 14:11:56 2002//Tocaml3083
-/tetris.ml/1.3/Tue Jul 23 14:11:56 2002//Tocaml3083
-/text.ml/1.2/Fri Apr 26 12:15:53 2002//Tocaml3083
-/winskel.ml/1.2/Fri Apr 26 12:15:53 2002//Tocaml3083
-D
diff --git a/otherlibs/labltk/examples_camltk/CVS/Entries.Log b/otherlibs/labltk/examples_camltk/CVS/Entries.Log
deleted file mode 100644 (file)
index 375967b..0000000
+++ /dev/null
@@ -1 +0,0 @@
-A D/images////
diff --git a/otherlibs/labltk/examples_camltk/CVS/Repository b/otherlibs/labltk/examples_camltk/CVS/Repository
deleted file mode 100644 (file)
index 88a5619..0000000
+++ /dev/null
@@ -1 +0,0 @@
-csl/otherlibs/labltk/examples_camltk
diff --git a/otherlibs/labltk/examples_camltk/CVS/Root b/otherlibs/labltk/examples_camltk/CVS/Root
deleted file mode 100644 (file)
index c83f52f..0000000
+++ /dev/null
@@ -1 +0,0 @@
-:ext:yquem.inria.fr:/net/yquem/devel/caml/repository
diff --git a/otherlibs/labltk/examples_camltk/CVS/Tag b/otherlibs/labltk/examples_camltk/CVS/Tag
deleted file mode 100644 (file)
index deaa3ee..0000000
+++ /dev/null
@@ -1 +0,0 @@
-Nocaml3083
diff --git a/otherlibs/labltk/examples_camltk/images/CVS/Entries b/otherlibs/labltk/examples_camltk/images/CVS/Entries
deleted file mode 100644 (file)
index 81cf181..0000000
+++ /dev/null
@@ -1,4 +0,0 @@
-/CamlBook.gif/1.2/Fri Apr 26 12:15:54 2002//Tocaml3083
-/Lambda2.back.gif/1.2/Fri Apr 26 12:15:54 2002//Tocaml3083
-/dojoji.back.gif/1.2/Fri Apr 26 12:15:55 2002//Tocaml3083
-D
diff --git a/otherlibs/labltk/examples_camltk/images/CVS/Repository b/otherlibs/labltk/examples_camltk/images/CVS/Repository
deleted file mode 100644 (file)
index 201ff9d..0000000
+++ /dev/null
@@ -1 +0,0 @@
-csl/otherlibs/labltk/examples_camltk/images
diff --git a/otherlibs/labltk/examples_camltk/images/CVS/Root b/otherlibs/labltk/examples_camltk/images/CVS/Root
deleted file mode 100644 (file)
index c83f52f..0000000
+++ /dev/null
@@ -1 +0,0 @@
-:ext:yquem.inria.fr:/net/yquem/devel/caml/repository
diff --git a/otherlibs/labltk/examples_camltk/images/CVS/Tag b/otherlibs/labltk/examples_camltk/images/CVS/Tag
deleted file mode 100644 (file)
index deaa3ee..0000000
+++ /dev/null
@@ -1 +0,0 @@
-Nocaml3083
diff --git a/otherlibs/labltk/examples_labltk/CVS/Entries b/otherlibs/labltk/examples_labltk/CVS/Entries
deleted file mode 100644 (file)
index 33eacb9..0000000
+++ /dev/null
@@ -1,15 +0,0 @@
-/.cvsignore/1.3/Thu Dec 19 13:38:26 2002//Tocaml3083
-/Lambda2.back.gif/1.2/Fri Apr 26 12:15:56 2002//Tocaml3083
-/Makefile/1.3/Thu Dec 19 13:38:29 2002//Tocaml3083
-/Makefile.nt/1.3/Tue Jun 11 08:30:19 2002//Tocaml3083
-/README/1.2/Fri Apr 26 12:15:57 2002//Tocaml3083
-/calc.ml/1.3/Fri Oct 11 18:56:18 2002//Tocaml3083
-/clock.ml/1.2/Fri Apr 26 12:15:58 2002//Tocaml3083
-/demo.ml/1.2/Fri Apr 26 12:15:58 2002//Tocaml3083
-/eyes.ml/1.2/Fri Apr 26 12:15:58 2002//Tocaml3083
-/hello.ml/1.2/Fri Apr 26 12:15:58 2002//Tocaml3083
-/hello.tcl/1.3/Thu Aug 21 13:51:29 2003//Tocaml3083
-/lang.ml/1.3/Tue Jul 23 14:11:56 2002//Tocaml3083
-/taquin.ml/1.2/Fri Apr 26 12:15:59 2002//Tocaml3083
-/tetris.ml/1.4/Sat Jun 12 03:20:00 2004//Tocaml3083
-D
diff --git a/otherlibs/labltk/examples_labltk/CVS/Repository b/otherlibs/labltk/examples_labltk/CVS/Repository
deleted file mode 100644 (file)
index a6c392b..0000000
+++ /dev/null
@@ -1 +0,0 @@
-csl/otherlibs/labltk/examples_labltk
diff --git a/otherlibs/labltk/examples_labltk/CVS/Root b/otherlibs/labltk/examples_labltk/CVS/Root
deleted file mode 100644 (file)
index c83f52f..0000000
+++ /dev/null
@@ -1 +0,0 @@
-:ext:yquem.inria.fr:/net/yquem/devel/caml/repository
diff --git a/otherlibs/labltk/examples_labltk/CVS/Tag b/otherlibs/labltk/examples_labltk/CVS/Tag
deleted file mode 100644 (file)
index deaa3ee..0000000
+++ /dev/null
@@ -1 +0,0 @@
-Nocaml3083
diff --git a/otherlibs/labltk/frx/CVS/Entries b/otherlibs/labltk/frx/CVS/Entries
deleted file mode 100644 (file)
index 2ad1fcb..0000000
+++ /dev/null
@@ -1,46 +0,0 @@
-/.depend/1.2/Fri Apr 26 12:16:00 2002//Tocaml3083
-/Makefile/1.2/Fri Apr 26 12:16:00 2002//Tocaml3083
-/Makefile.nt/1.3/Fri Jun  7 09:49:39 2002//Tocaml3083
-/README/1.2/Fri Apr 26 12:16:01 2002//Tocaml3083
-/frx_after.ml/1.3/Tue Jul 23 14:11:56 2002//Tocaml3083
-/frx_after.mli/1.2/Fri Apr 26 12:16:01 2002//Tocaml3083
-/frx_color.ml/1.2/Fri Apr 26 12:16:01 2002//Tocaml3083
-/frx_color.mli/1.2/Fri Apr 26 12:16:01 2002//Tocaml3083
-/frx_ctext.ml/1.3/Tue Jul 23 14:11:56 2002//Tocaml3083
-/frx_ctext.mli/1.2/Fri Apr 26 12:16:02 2002//Tocaml3083
-/frx_dialog.ml/1.3/Tue Jul 23 14:11:56 2002//Tocaml3083
-/frx_dialog.mli/1.2/Fri Apr 26 12:16:02 2002//Tocaml3083
-/frx_entry.ml/1.2/Fri Apr 26 12:16:02 2002//Tocaml3083
-/frx_entry.mli/1.2/Fri Apr 26 12:16:02 2002//Tocaml3083
-/frx_fileinput.ml/1.2/Fri Apr 26 12:16:03 2002//Tocaml3083
-/frx_fillbox.ml/1.3/Tue Jul 23 14:11:56 2002//Tocaml3083
-/frx_fillbox.mli/1.2/Fri Apr 26 12:16:03 2002//Tocaml3083
-/frx_fit.ml/1.3/Tue Jul 23 14:11:56 2002//Tocaml3083
-/frx_fit.mli/1.2/Fri Apr 26 12:16:03 2002//Tocaml3083
-/frx_focus.ml/1.2/Fri Apr 26 12:16:04 2002//Tocaml3083
-/frx_focus.mli/1.2/Fri Apr 26 12:16:04 2002//Tocaml3083
-/frx_font.ml/1.3/Tue Jul 23 14:11:56 2002//Tocaml3083
-/frx_font.mli/1.2/Fri Apr 26 12:16:04 2002//Tocaml3083
-/frx_group.ml/1.2/Fri Apr 26 12:16:04 2002//Tocaml3083
-/frx_lbutton.ml/1.2/Fri Apr 26 12:16:05 2002//Tocaml3083
-/frx_lbutton.mli/1.2/Fri Apr 26 12:16:05 2002//Tocaml3083
-/frx_listbox.ml/1.3/Tue Jul 23 14:11:56 2002//Tocaml3083
-/frx_listbox.mli/1.2/Fri Apr 26 12:16:05 2002//Tocaml3083
-/frx_mem.ml/1.3/Tue Jul 23 14:11:58 2002//Tocaml3083
-/frx_mem.mli/1.2/Fri Apr 26 12:16:06 2002//Tocaml3083
-/frx_misc.ml/1.3/Tue Jul 23 14:11:58 2002//Tocaml3083
-/frx_misc.mli/1.2/Fri Apr 26 12:16:06 2002//Tocaml3083
-/frx_req.ml/1.3/Tue Jul 23 14:11:58 2002//Tocaml3083
-/frx_req.mli/1.2/Fri Apr 26 12:16:07 2002//Tocaml3083
-/frx_rpc.ml/1.3/Tue Jul 23 14:11:58 2002//Tocaml3083
-/frx_rpc.mli/1.2/Fri Apr 26 12:16:08 2002//Tocaml3083
-/frx_selection.ml/1.2/Fri Apr 26 12:16:09 2002//Tocaml3083
-/frx_selection.mli/1.2/Fri Apr 26 12:16:09 2002//Tocaml3083
-/frx_synth.ml/1.3/Tue Jul 23 14:11:58 2002//Tocaml3083
-/frx_synth.mli/1.2/Fri Apr 26 12:16:09 2002//Tocaml3083
-/frx_text.ml/1.3/Tue Jul 23 14:11:58 2002//Tocaml3083
-/frx_text.mli/1.2/Fri Apr 26 12:16:10 2002//Tocaml3083
-/frx_toplevel.mli/1.2/Fri Apr 26 12:16:10 2002//Tocaml3083
-/frx_widget.ml/1.2/Fri Apr 26 12:16:10 2002//Tocaml3083
-/frx_widget.mli/1.2/Fri Apr 26 12:16:10 2002//Tocaml3083
-D
diff --git a/otherlibs/labltk/frx/CVS/Repository b/otherlibs/labltk/frx/CVS/Repository
deleted file mode 100644 (file)
index 5e895af..0000000
+++ /dev/null
@@ -1 +0,0 @@
-csl/otherlibs/labltk/frx
diff --git a/otherlibs/labltk/frx/CVS/Root b/otherlibs/labltk/frx/CVS/Root
deleted file mode 100644 (file)
index c83f52f..0000000
+++ /dev/null
@@ -1 +0,0 @@
-:ext:yquem.inria.fr:/net/yquem/devel/caml/repository
diff --git a/otherlibs/labltk/frx/CVS/Tag b/otherlibs/labltk/frx/CVS/Tag
deleted file mode 100644 (file)
index deaa3ee..0000000
+++ /dev/null
@@ -1 +0,0 @@
-Nocaml3083
diff --git a/otherlibs/labltk/jpf/CVS/Entries b/otherlibs/labltk/jpf/CVS/Entries
deleted file mode 100644 (file)
index 8a271e5..0000000
+++ /dev/null
@@ -1,13 +0,0 @@
-/Makefile/1.10/Fri Apr 26 12:16:11 2002//Tocaml3083
-/Makefile.nt/1.6/Fri Jun  7 09:49:39 2002//Tocaml3083
-/README/1.2/Fri Apr 26 12:16:11 2002//Tocaml3083
-/balloon.ml/1.15/Fri Apr 26 12:16:12 2002//Tocaml3083
-/balloon.mli/1.7/Fri Apr 26 12:16:12 2002//Tocaml3083
-/balloontest.ml/1.8/Fri Apr 26 12:16:12 2002//Tocaml3083
-/fileselect.ml/1.19/Fri Apr 26 12:16:12 2002//Tocaml3083
-/fileselect.mli/1.7/Fri Apr 26 12:16:12 2002//Tocaml3083
-/jpf_font.ml/1.3/Tue Jul 23 14:11:59 2002//Tocaml3083
-/jpf_font.mli/1.2/Fri Apr 26 12:16:13 2002//Tocaml3083
-/shell.ml/1.3/Tue Jul 23 14:11:59 2002//Tocaml3083
-/shell.mli/1.2/Fri Apr 26 12:16:13 2002//Tocaml3083
-D
diff --git a/otherlibs/labltk/jpf/CVS/Repository b/otherlibs/labltk/jpf/CVS/Repository
deleted file mode 100644 (file)
index 0632985..0000000
+++ /dev/null
@@ -1 +0,0 @@
-csl/otherlibs/labltk/jpf
diff --git a/otherlibs/labltk/jpf/CVS/Root b/otherlibs/labltk/jpf/CVS/Root
deleted file mode 100644 (file)
index c83f52f..0000000
+++ /dev/null
@@ -1 +0,0 @@
-:ext:yquem.inria.fr:/net/yquem/devel/caml/repository
diff --git a/otherlibs/labltk/jpf/CVS/Tag b/otherlibs/labltk/jpf/CVS/Tag
deleted file mode 100644 (file)
index deaa3ee..0000000
+++ /dev/null
@@ -1 +0,0 @@
-Nocaml3083
diff --git a/otherlibs/labltk/labltk/CVS/Entries b/otherlibs/labltk/labltk/CVS/Entries
deleted file mode 100644 (file)
index 2bb165c..0000000
+++ /dev/null
@@ -1,7 +0,0 @@
-/.cvsignore/1.2/Fri Apr 26 12:16:13 2002//Tocaml3083
-/Makefile/1.5/Fri Aug 29 14:08:21 2003//Tocaml3083
-/Makefile.gen/1.4.6.1/Mon Jul 12 09:38:05 2004//Tocaml3083
-/Makefile.gen.nt/1.4/Fri Jun  7 13:31:21 2002//Tocaml3083
-/Makefile.nt/1.3/Fri Jun  7 09:49:39 2002//Tocaml3083
-/modules/1.1/Fri Apr 26 13:58:17 2002//Tocaml3083
-D
diff --git a/otherlibs/labltk/labltk/CVS/Repository b/otherlibs/labltk/labltk/CVS/Repository
deleted file mode 100644 (file)
index 1ac0884..0000000
+++ /dev/null
@@ -1 +0,0 @@
-csl/otherlibs/labltk/labltk
diff --git a/otherlibs/labltk/labltk/CVS/Root b/otherlibs/labltk/labltk/CVS/Root
deleted file mode 100644 (file)
index c83f52f..0000000
+++ /dev/null
@@ -1 +0,0 @@
-:ext:yquem.inria.fr:/net/yquem/devel/caml/repository
diff --git a/otherlibs/labltk/labltk/CVS/Tag b/otherlibs/labltk/labltk/CVS/Tag
deleted file mode 100644 (file)
index deaa3ee..0000000
+++ /dev/null
@@ -1 +0,0 @@
-Nocaml3083
diff --git a/otherlibs/labltk/lib/CVS/Entries b/otherlibs/labltk/lib/CVS/Entries
deleted file mode 100644 (file)
index 5ab3c1d..0000000
+++ /dev/null
@@ -1,4 +0,0 @@
-/.cvsignore/1.8/Wed Jul 10 12:57:50 2002//Tocaml3083
-/Makefile/1.32/Wed Apr  2 02:35:19 2003//Tocaml3083
-/Makefile.nt/1.11/Fri Jul 12 15:31:40 2002//Tocaml3083
-D
diff --git a/otherlibs/labltk/lib/CVS/Repository b/otherlibs/labltk/lib/CVS/Repository
deleted file mode 100644 (file)
index 7e68a09..0000000
+++ /dev/null
@@ -1 +0,0 @@
-csl/otherlibs/labltk/lib
diff --git a/otherlibs/labltk/lib/CVS/Root b/otherlibs/labltk/lib/CVS/Root
deleted file mode 100644 (file)
index c83f52f..0000000
+++ /dev/null
@@ -1 +0,0 @@
-:ext:yquem.inria.fr:/net/yquem/devel/caml/repository
diff --git a/otherlibs/labltk/lib/CVS/Tag b/otherlibs/labltk/lib/CVS/Tag
deleted file mode 100644 (file)
index deaa3ee..0000000
+++ /dev/null
@@ -1 +0,0 @@
-Nocaml3083
diff --git a/otherlibs/labltk/support/CVS/Entries b/otherlibs/labltk/support/CVS/Entries
deleted file mode 100644 (file)
index a4d55e4..0000000
+++ /dev/null
@@ -1,37 +0,0 @@
-/.depend/1.4/Fri Apr 26 12:16:15 2002//Tocaml3083
-/Makefile/1.15/Thu Jun 27 11:36:01 2002//Tocaml3083
-/Makefile.common/1.21.6.1/Mon Jul 12 09:38:05 2004//Tocaml3083
-/Makefile.common.nt/1.9/Wed Jul  3 09:45:44 2002//Tocaml3083
-/Makefile.nt/1.10/Thu Jul 10 09:18:02 2003//Tocaml3083
-/camltk.h/1.11/Thu Jul 10 09:18:02 2003//Tocaml3083
-/camltkwrap.ml/1.2/Fri Apr 26 12:16:16 2002//Tocaml3083
-/camltkwrap.mli/1.3/Tue Jul 23 14:11:59 2002//Tocaml3083
-/cltkCaml.c/1.8/Fri Apr 26 12:16:17 2002//Tocaml3083
-/cltkDMain.c/1.6/Fri Dec  7 13:40:08 2001//Tocaml3083
-/cltkEval.c/1.14/Mon May 17 17:10:00 2004//Tocaml3083
-/cltkEvent.c/1.8/Fri Apr 26 12:16:17 2002//Tocaml3083
-/cltkFile.c/1.12/Fri Apr 26 12:16:17 2002//Tocaml3083
-/cltkImg.c/1.5/Mon May 17 17:10:00 2004//Tocaml3083
-/cltkMain.c/1.13/Tue Jul 23 14:11:59 2002//Tocaml3083
-/cltkMisc.c/1.10/Tue Jul 23 14:11:59 2002//Tocaml3083
-/cltkTimer.c/1.9/Fri Apr 26 12:16:19 2002//Tocaml3083
-/cltkUtf.c/1.2/Fri Apr 26 12:16:19 2002//Tocaml3083
-/cltkVar.c/1.9/Tue Jul 23 14:11:59 2002//Tocaml3083
-/cltkWait.c/1.9/Tue Jul 23 14:11:59 2002//Tocaml3083
-/fileevent.ml/1.12/Fri Apr 26 12:16:19 2002//Tocaml3083
-/fileevent.mli/1.7/Fri Apr 26 12:16:20 2002//Tocaml3083
-/protocol.ml/1.20/Tue Jul 23 14:11:59 2002//Tocaml3083
-/protocol.mli/1.11/Fri May  3 12:56:59 2002//Tocaml3083
-/rawwidget.ml/1.3/Tue Jul 23 14:11:59 2002//Tocaml3083
-/rawwidget.mli/1.2/Fri Apr 26 12:16:20 2002//Tocaml3083
-/slave.ml/1.5/Fri Apr 26 12:16:21 2002//Tocaml3083
-/support.ml/1.9/Fri Apr 26 12:16:21 2002//Tocaml3083
-/support.mli/1.8/Fri Apr 26 12:16:21 2002//Tocaml3083
-/textvariable.ml/1.16/Tue Jul 23 14:11:59 2002//Tocaml3083
-/textvariable.mli/1.10/Fri Apr 26 12:16:21 2002//Tocaml3083
-/timer.ml/1.10/Thu Sep 12 10:12:26 2002//Tocaml3083
-/timer.mli/1.8/Fri Apr 26 12:16:21 2002//Tocaml3083
-/tkwait.ml/1.7/Fri Apr 26 12:16:21 2002//Tocaml3083
-/widget.ml/1.16/Fri Apr 26 12:16:22 2002//Tocaml3083
-/widget.mli/1.7/Fri Apr 26 12:16:22 2002//Tocaml3083
-D
diff --git a/otherlibs/labltk/support/CVS/Repository b/otherlibs/labltk/support/CVS/Repository
deleted file mode 100644 (file)
index da7a9d4..0000000
+++ /dev/null
@@ -1 +0,0 @@
-csl/otherlibs/labltk/support
diff --git a/otherlibs/labltk/support/CVS/Root b/otherlibs/labltk/support/CVS/Root
deleted file mode 100644 (file)
index c83f52f..0000000
+++ /dev/null
@@ -1 +0,0 @@
-:ext:yquem.inria.fr:/net/yquem/devel/caml/repository
diff --git a/otherlibs/labltk/support/CVS/Tag b/otherlibs/labltk/support/CVS/Tag
deleted file mode 100644 (file)
index deaa3ee..0000000
+++ /dev/null
@@ -1 +0,0 @@
-Nocaml3083
diff --git a/otherlibs/labltk/tkanim/CVS/Entries b/otherlibs/labltk/tkanim/CVS/Entries
deleted file mode 100644 (file)
index 08e9a08..0000000
+++ /dev/null
@@ -1,13 +0,0 @@
-/.cvsignore/1.1/Mon Apr 28 08:10:52 2003//Tocaml3083
-/.depend/1.2/Fri Apr 26 12:16:22 2002//Tocaml3083
-/Makefile/1.8/Sat May  8 16:04:39 2004//Tocaml3083
-/Makefile.nt/1.4/Thu Jun 27 11:36:01 2002//Tocaml3083
-/README/1.2/Fri Apr 26 12:16:23 2002//Tocaml3083
-/cltkaniminit.c/1.5/Thu Jul 10 09:18:02 2003//Tocaml3083
-/gifanimtest.ml/1.3/Tue Jul 23 14:12:00 2002//Tocaml3083
-/mmm.anim.gif/1.2/Fri Apr 26 12:16:24 2002//Tocaml3083
-/tkAnimGIF.c/1.6/Mon May 17 17:10:00 2004//Tocaml3083
-/tkAppInit.c/1.3/Tue Jul 23 14:12:00 2002//Tocaml3083
-/tkanim.ml/1.2/Fri Apr 26 12:16:25 2002//Tocaml3083
-/tkanim.mli/1.3/Tue Jul 23 14:12:00 2002//Tocaml3083
-D
diff --git a/otherlibs/labltk/tkanim/CVS/Repository b/otherlibs/labltk/tkanim/CVS/Repository
deleted file mode 100644 (file)
index 63216be..0000000
+++ /dev/null
@@ -1 +0,0 @@
-csl/otherlibs/labltk/tkanim
diff --git a/otherlibs/labltk/tkanim/CVS/Root b/otherlibs/labltk/tkanim/CVS/Root
deleted file mode 100644 (file)
index c83f52f..0000000
+++ /dev/null
@@ -1 +0,0 @@
-:ext:yquem.inria.fr:/net/yquem/devel/caml/repository
diff --git a/otherlibs/labltk/tkanim/CVS/Tag b/otherlibs/labltk/tkanim/CVS/Tag
deleted file mode 100644 (file)
index deaa3ee..0000000
+++ /dev/null
@@ -1 +0,0 @@
-Nocaml3083
diff --git a/otherlibs/num/CVS/Entries b/otherlibs/num/CVS/Entries
deleted file mode 100644 (file)
index 890ec10..0000000
+++ /dev/null
@@ -1,34 +0,0 @@
-/.cvsignore/1.5/Thu Oct 11 12:04:38 2001//Tocaml3083
-/.depend/1.13.4.1/Tue Feb 22 14:33:37 2005//Tocaml3083
-/.depend.nt/1.3/Tue Aug 28 14:47:24 2001//Tocaml3083
-/Makefile/1.30/Fri Oct 24 09:17:31 2003//Tocaml3083
-/Makefile.nt/1.17.4.1/Mon Nov 29 08:50:23 2004//Tocaml3083
-/README/1.5/Sun Oct 26 09:35:41 2003//Tocaml3083
-/arith_flags.ml/1.4/Fri Dec  7 13:40:14 2001//Tocaml3083
-/arith_flags.mli/1.5/Fri Dec  7 13:40:14 2001//Tocaml3083
-/arith_status.ml/1.4/Fri Dec  7 13:40:14 2001//Tocaml3083
-/arith_status.mli/1.6/Fri Dec  7 13:40:14 2001//Tocaml3083
-/big_int.ml/1.18.4.1/Thu Mar 10 14:53:02 2005//Tocaml3083
-/big_int.mli/1.10/Thu Mar 14 20:12:54 2002//Tocaml3083
-/bng.c/1.2.6.1/Wed Dec 22 16:17:44 2004//Tocaml3083
-/bng.h/1.2/Fri Nov  7 07:59:09 2003//Tocaml3083
-/bng_alpha.c/1.1/Fri Oct 24 09:17:32 2003//Tocaml3083
-/bng_amd64.c/1.1/Fri Oct 24 09:17:33 2003//Tocaml3083
-/bng_digit.c/1.1/Fri Oct 24 09:17:33 2003//Tocaml3083
-/bng_ia32.c/1.3/Sun Oct 26 09:51:11 2003//Tocaml3083
-/bng_mips.c/1.1/Fri Oct 24 09:17:33 2003//Tocaml3083
-/bng_ppc.c/1.2/Mon Oct 27 08:41:46 2003//Tocaml3083
-/bng_sparc.c/1.1/Fri Oct 24 09:17:34 2003//Tocaml3083
-/int_misc.ml/1.6/Mon May 27 12:06:49 2002//Tocaml3083
-/int_misc.mli/1.4/Fri Dec  7 13:40:15 2001//Tocaml3083
-/nat.h/1.6/Fri Oct 24 09:17:34 2003//Tocaml3083
-/nat.ml/1.14/Fri Nov 21 15:59:38 2003//Tocaml3083
-/nat.mli/1.11/Fri Nov  7 07:59:09 2003//Tocaml3083
-/nat_stubs.c/1.14.4.1/Wed Dec 22 16:17:44 2004//Tocaml3083
-/num.ml/1.6/Fri Dec  7 13:40:16 2001//Tocaml3083
-/num.mli/1.8/Fri Dec 28 23:15:23 2001//Tocaml3083
-/ratio.ml/1.6/Fri Dec  7 13:40:16 2001//Tocaml3083
-/ratio.mli/1.4/Fri Dec  7 13:40:16 2001//Tocaml3083
-/string_misc.ml/1.4/Fri Dec  7 13:40:16 2001//Tocaml3083
-/string_misc.mli/1.4/Fri Dec  7 13:40:17 2001//Tocaml3083
-D
diff --git a/otherlibs/num/CVS/Entries.Log b/otherlibs/num/CVS/Entries.Log
deleted file mode 100644 (file)
index 60e90cd..0000000
+++ /dev/null
@@ -1,2 +0,0 @@
-A D/bignum////
-A D/test////
diff --git a/otherlibs/num/CVS/Repository b/otherlibs/num/CVS/Repository
deleted file mode 100644 (file)
index 3c45a8c..0000000
+++ /dev/null
@@ -1 +0,0 @@
-csl/otherlibs/num
diff --git a/otherlibs/num/CVS/Root b/otherlibs/num/CVS/Root
deleted file mode 100644 (file)
index c83f52f..0000000
+++ /dev/null
@@ -1 +0,0 @@
-:ext:yquem.inria.fr:/net/yquem/devel/caml/repository
diff --git a/otherlibs/num/CVS/Tag b/otherlibs/num/CVS/Tag
deleted file mode 100644 (file)
index deaa3ee..0000000
+++ /dev/null
@@ -1 +0,0 @@
-Nocaml3083
index 843a3880effa1ca8637584bd011d26ee5aa1d7a1..fa8098c07f1be62688c17e142dc69635826db79b 100644 (file)
@@ -11,7 +11,7 @@
 (*                                                                     *)
 (***********************************************************************)
 
-(* $Id: big_int.ml,v 1.18.4.1 2005/03/10 14:53:02 doligez Exp $ *)
+(* $Id: big_int.ml,v 1.18.4.3 2005/07/19 13:21:08 xleroy Exp $ *)
 
 open Int_misc
 open Nat
@@ -210,10 +210,14 @@ let quomod_big_int bi1 bi2 =
   and size_bi2 = num_digits_big_int bi2 in
    match compare_nat (bi1.abs_value) 0 size_bi1 
                      (bi2.abs_value) 0 size_bi2 with
-      -1 -> (* 1/2 -> 0, reste 1, -1/2 -> -1, reste 1 *)
-             if bi1.sign = -1
-              then (big_int_of_int(-1), add_big_int bi2 bi1)
-              else (big_int_of_int 0, bi1)
+      -1 -> (* 1/2  -> 0, reste 1, -1/2  -> -1, reste 1 *)
+            (* 1/-2 -> 0, reste 1, -1/-2 -> 1, reste 1 *)
+             if bi1.sign >= 0 then
+               (big_int_of_int 0, bi1)
+             else if bi2.sign >= 0 then
+               (big_int_of_int(-1), add_big_int bi2 bi1)
+             else
+               (big_int_of_int 1, sub_big_int bi1 bi2)
     | 0 -> (big_int_of_int (bi1.sign * bi2.sign), zero_big_int)
     | _ -> let bi1_negatif = bi1.sign = -1 in 
            let size_q =
@@ -363,7 +367,8 @@ let big_int_of_string s =
   sys_big_int_of_string s 0 (String.length s)
 
 let power_base_nat base nat off len =
-  if is_zero_nat nat off len then nat_of_int 1 else
+  if base = 0 then nat_of_int 0 else
+  if is_zero_nat nat off len || base = 1 then nat_of_int 1 else
   let power_base = make_nat (succ length_of_digit) in
   let (pmax, pint) = make_power_base base power_base in
   let (n, rem) = 
@@ -422,26 +427,23 @@ let power_big_int_positive_int bi n =
          and res2 = make_nat res_len 
          and l = num_bits_int n - 2 in
          let p = ref (1 lsl l) in
-           blit_nat res 0 (bi.abs_value) 0 bi_len;
-           for i = l downto 0 do
-             let len = num_digits_nat res 0 res_len in
-             let len2 = min res_len (2 * len) in
-             let succ_len2 = succ len2 in
-               square_nat res2 0 len2 res 0 len;
-               (if n land !p > 0 
-                   then (set_to_zero_nat res 0 len;
-                         mult_nat res 0 succ_len2 
-                                   res2 0 len2 (bi.abs_value) 0 bi_len;
-                         set_to_zero_nat res2 0 len2)
-                   else blit_nat res 0 res2 0 len2;
-                   set_to_zero_nat res2 0 len2);
-               p := !p lsr 1
-           done;
-           {sign = if bi.sign >=  0
-                      then bi.sign 
-                      else if n land 1 = 0
-                              then 1 
-                              else -1;
+         blit_nat res 0 bi.abs_value 0 bi_len;
+         for i = l downto 0 do
+           let len = num_digits_nat res 0 res_len in
+           let len2 = min res_len (2 * len) in
+           set_to_zero_nat res2 0 len2;
+           square_nat res2 0 len2 res 0 len;
+           if n land !p > 0 then begin
+             let lenp = min res_len (len2 + bi_len) in
+             set_to_zero_nat res 0 lenp;
+             ignore(mult_nat res 0 lenp res2 0 len2 (bi.abs_value) 0 bi_len)
+           end else begin
+             blit_nat res 0 res2 0 len2
+           end;
+           p := !p lsr 1
+         done;
+         {sign = if bi.sign >=  0 then bi.sign 
+                 else if n land 1 = 0 then 1 else -1;
             abs_value = res} 
 
 let power_int_positive_big_int i bi = 
@@ -461,39 +463,21 @@ let power_big_int_positive_big_int bi1 bi2 =
   match sign_big_int bi2 with
     0 -> unit_big_int
   | -1 -> invalid_arg "power_big_int_positive_big_int"
-  | _ -> let nat = bi2.abs_value
-         and off = 0 
-         and len_bi2 = num_digits_big_int bi2 in
-         let bi1_len = num_digits_big_int bi1 in
-         let res_len = int_of_big_int (mult_int_big_int bi1_len bi2) in
-         let res = make_nat res_len 
-         and res2 = make_nat res_len 
-         and l = (len_bi2 * length_of_digit 
-                  - num_leading_zero_bits_in_digit nat (pred len_bi2)) - 2 in
-         let p = ref (1 lsl l) in
-           blit_nat res 0 (bi1.abs_value) 0 bi1_len;
-           for i = l downto 0 do
-             let nat = copy_nat bi2.abs_value 0 len_bi2 in
-             let len = num_digits_nat res 0 res_len in
-             let len2 = min res_len (2 * len) in
-             let succ_len2 = succ len2 in
-               square_nat res2 0 len2 res 0 len;
-               land_digit_nat nat 0 (nat_of_int !p) 0;
-               if is_zero_nat nat 0 len_bi2 
-                  then (blit_nat res 0 res2 0 len2;
-                        set_to_zero_nat res2 0 len2)
-                  else (set_to_zero_nat res 0 len;
-                        mult_nat res 0 succ_len2 
-                                 res2 0 len2 (bi1.abs_value) 0 bi1_len;
-                        set_to_zero_nat res2 0 len2);
-               p := !p lsr 1
-           done;
-           {sign = if bi1.sign >= 0
-                      then bi1.sign 
-                      else if is_digit_odd (bi2.abs_value) 0
-                              then -1 
-                              else 1;
-            abs_value = res} 
+  | _ -> try
+           power_big_int_positive_int bi1 (int_of_big_int bi2)
+         with Failure _ ->
+         try
+           power_int_positive_big_int (int_of_big_int bi1) bi2
+         with Failure _ ->
+           raise Out_of_memory
+           (* If neither bi1 nor bi2 is a small integer, bi1^bi2 is not
+              representable.  Indeed, on a 32-bit platform,
+              |bi1| >= 2 and |bi2| >= 2^30, hence bi1^bi2 has at least
+              2^30 bits = 2^27 bytes, greater than the max size of
+              allocated blocks.  On a 64-bit platform,
+              |bi1| >= 2 and |bi2| >= 2^62, hence bi1^bi2 has at least
+              2^62 bits = 2^59 bytes, greater than the max size of
+              allocated blocks. *)
 
 (* base_power_big_int compute bi*base^n *)
 let base_power_big_int base n bi =
diff --git a/otherlibs/num/bignum/CVS/Entries b/otherlibs/num/bignum/CVS/Entries
deleted file mode 100644 (file)
index ba7e268..0000000
+++ /dev/null
@@ -1,2 +0,0 @@
-/.cvsignore/1.1/Tue Dec 17 13:23:18 1996//Tocaml3083
-D
diff --git a/otherlibs/num/bignum/CVS/Entries.Log b/otherlibs/num/bignum/CVS/Entries.Log
deleted file mode 100644 (file)
index f38f88d..0000000
+++ /dev/null
@@ -1,8 +0,0 @@
-A D/c////
-A D/h////
-A D/o////
-A D/s////
-R D/s////
-R D/o////
-R D/h////
-R D/c////
diff --git a/otherlibs/num/bignum/CVS/Repository b/otherlibs/num/bignum/CVS/Repository
deleted file mode 100644 (file)
index 63a240a..0000000
+++ /dev/null
@@ -1 +0,0 @@
-csl/otherlibs/num/bignum
diff --git a/otherlibs/num/bignum/CVS/Root b/otherlibs/num/bignum/CVS/Root
deleted file mode 100644 (file)
index c83f52f..0000000
+++ /dev/null
@@ -1 +0,0 @@
-:ext:yquem.inria.fr:/net/yquem/devel/caml/repository
diff --git a/otherlibs/num/bignum/CVS/Tag b/otherlibs/num/bignum/CVS/Tag
deleted file mode 100644 (file)
index deaa3ee..0000000
+++ /dev/null
@@ -1 +0,0 @@
-Nocaml3083
index 03e5ae9d565231118f545985d219dfbaded6b12f..c6a7edd736d56d6524e1334aee49ce77b1eb0a95 100644 (file)
@@ -11,7 +11,7 @@
 /*                                                                     */
 /***********************************************************************/
 
-/* $Id: bng_ia32.c,v 1.3 2003/10/26 09:51:11 xleroy Exp $ */
+/* $Id: bng_ia32.c,v 1.3.6.1 2005/07/20 08:18:59 xleroy Exp $ */
 
 /* Code specific to the Intel IA32 (x86) architecture. */
 
@@ -121,8 +121,8 @@ static bngdigit bng_ia32_mult_add_digit
         "leal 4(%1), %1 \n\t"
         "decl %2 \n\t"
         "jnz 1b"
-        : "+&r" (a), "+&r" (b), "+&rm" (blen), "+&r" (out)
-        : "rm" (d)
+        : "+&r" (a), "+&r" (b), "+&r" (blen), "=m" (out)
+        : "m" (d)
         : "eax", "edx");
   }
   if (alen == 0) return out;
@@ -164,8 +164,8 @@ static bngdigit bng_ia32_mult_sub_digit
         "leal 4(%1), %1 \n\t"
         "decl %2 \n\t"
         "jnz 1b"
-        : "+&r" (a), "+&r" (b), "+&rm" (blen), "+&rm" (out), "=&r" (tmp)
-        : "rm" (d)
+        : "+&r" (a), "+&r" (b), "=m" (blen), "=m" (out), "=&r" (tmp)
+        : "m" (d)
         : "eax", "edx");
   }
   if (alen == 0) return out;
diff --git a/otherlibs/num/test/CVS/Entries b/otherlibs/num/test/CVS/Entries
deleted file mode 100644 (file)
index 3d64691..0000000
+++ /dev/null
@@ -1,12 +0,0 @@
-/.depend/1.1/Mon Nov  6 13:09:04 1995//Tocaml3083
-/Makefile/1.9/Fri Oct 24 09:17:46 2003//Tocaml3083
-/Makefile.nt/1.9/Thu Apr  1 13:10:12 2004//Tocaml3083
-/end_test.ml/1.2/Tue Dec  4 14:24:43 2001//Tocaml3083
-/test.ml/1.4/Tue Dec  4 14:24:43 2001//Tocaml3083
-/test_big_ints.ml/1.8/Thu Mar 14 20:12:54 2002//Tocaml3083
-/test_bng.c/1.2/Fri Nov  7 07:59:10 2003//Tocaml3083
-/test_io.ml/1.1/Thu Feb 10 14:04:59 2000//Tocaml3083
-/test_nats.ml/1.4/Mon May 27 12:06:28 2002//Tocaml3083
-/test_nums.ml/1.1/Mon Nov  6 10:34:19 1995//Tocaml3083
-/test_ratios.ml/1.2/Thu Dec 28 13:05:10 2000//Tocaml3083
-D
diff --git a/otherlibs/num/test/CVS/Repository b/otherlibs/num/test/CVS/Repository
deleted file mode 100644 (file)
index 6b210ab..0000000
+++ /dev/null
@@ -1 +0,0 @@
-csl/otherlibs/num/test
diff --git a/otherlibs/num/test/CVS/Root b/otherlibs/num/test/CVS/Root
deleted file mode 100644 (file)
index c83f52f..0000000
+++ /dev/null
@@ -1 +0,0 @@
-:ext:yquem.inria.fr:/net/yquem/devel/caml/repository
diff --git a/otherlibs/num/test/CVS/Tag b/otherlibs/num/test/CVS/Tag
deleted file mode 100644 (file)
index deaa3ee..0000000
+++ /dev/null
@@ -1 +0,0 @@
-Nocaml3083
index 61e9ae4df0c91c82cf2b65cef1b44d0def8e0c47..9d699bd045bc614943ffa8c0813e4ab8740e922a 100644 (file)
@@ -237,6 +237,27 @@ failwith_test 17
 Division_by_zero
 ;;
 
+let (quotient, modulo) = 
+      quomod_big_int (big_int_of_int 10) (big_int_of_int 20) in
+ test 18 eq_big_int (quotient, big_int_of_int 0) &&
+ test 19 eq_big_int (modulo, big_int_of_int 10);;
+
+let (quotient, modulo) = 
+      quomod_big_int (big_int_of_int (-10)) (big_int_of_int 20) in
+ test 20 eq_big_int (quotient, big_int_of_int (-1)) &&
+ test 21 eq_big_int (modulo, big_int_of_int 10);;
+
+let (quotient, modulo) = 
+      quomod_big_int (big_int_of_int 10) (big_int_of_int (-20)) in
+ test 22 eq_big_int (quotient, big_int_of_int 0) &&
+ test 23 eq_big_int (modulo, big_int_of_int 10);;
+
+let (quotient, modulo) = 
+      quomod_big_int (big_int_of_int (-10)) (big_int_of_int (-20)) in
+ test 24 eq_big_int (quotient, big_int_of_int 1) &&
+ test 25 eq_big_int (modulo, big_int_of_int 10);;
+
+
 testing_function "gcd_big_int";;
 
 test 1
@@ -437,6 +458,103 @@ eq_big_int
  (power_int_positive_big_int 3 (big_int_of_string "47"),
   big_int_of_string "26588814358957503287787");;
 
+test 4
+eq_big_int
+ (power_int_positive_big_int 1 (big_int_of_string "1000000000000000000000"),
+  big_int_of_int 1);;
+
+test 5
+eq_big_int
+ (power_int_positive_big_int (-1) (big_int_of_string "1000000000000000000000"),
+  big_int_of_int 1);;
+
+test 6
+eq_big_int
+ (power_int_positive_big_int (-1) (big_int_of_string "1000000000000000000001"),
+  big_int_of_int (-1));;
+
+test 7
+eq_big_int
+ (power_int_positive_big_int 0 (big_int_of_string "1000000000000000000000"),
+  big_int_of_int 0);;
+
+testing_function "power_big_int_positive_int";;
+
+test 1
+eq_big_int (power_big_int_positive_int (big_int_of_int 2) 10,
+            big_int_of_int 1024);;
+test 2
+eq_big_int
+ (power_big_int_positive_int (big_int_of_int 100) 20,
+  big_int_of_string "10000000000000000000000000000000000000000");;
+
+test 3
+eq_big_int
+ (power_big_int_positive_int (big_int_of_string "3") 47,
+  big_int_of_string "26588814358957503287787");;
+
+test 4
+eq_big_int
+ (power_big_int_positive_int (big_int_of_string "200000000000000") 34,
+  big_int_of_string
+"17179869184000000000000000000000000000000000000000000000000000000000\
+00000000000000000000000000000000000000000000000000000000000000000000\
+00000000000000000000000000000000000000000000000000000000000000000000\
+00000000000000000000000000000000000000000000000000000000000000000000\
+00000000000000000000000000000000000000000000000000000000000000000000\
+00000000000000000000000000000000000000000000000000000000000000000000\
+00000000000000000000000000000000000000000000000000000000000000000000\
+00000000000");;
+
+test 5
+eq_big_int
+ (power_big_int_positive_int (big_int_of_string "2197609328765") 243,
+  big_int_of_string
+"12415638672345366257764851943822299490113545698929764576040102857365\
+27920436565335427676982530274588056944387957287793378051852205028658\
+73008292720317554332284838709453634119919368441951233982592586680844\
+20765201140575612595182857026804842796931784944918059630667794516774\
+58498235838834599150657873894983300999081942159304585449505963892008\
+97855706440206825609657816209327492197604711437269361628626691080334\
+38432768885637928268354258860147333786379766583179851226375449161073\
+10396958979998161989562418169797611757651190037273397850239552735199\
+63719988832594486235837899145390948533078339399890545062510060406048\
+61331200657727576638170520036143007285549092686618686739320973444703\
+33342725604091818763255601206325426337211467746377586080108631634250\
+11232258578207762608797108802386708549785680783113606089879687396654\
+54004281165259352412815385041917713969718327109245777066079665194617\
+29230093411050053217775067781725651590160086483960457766025246936489\
+92234225900994076609973190516835778346886551506344097474301175288686\
+25662752919718480402972207084177612056491949911377568680526080633587\
+33230060757162252611388973328501680433819585006035301408574879645573\
+47126018243568976860515247053858204554293343161581801846081341003624\
+22906934772131205632200433218165757307182816260714026614324014553342\
+77303133877636489457498062819003614421295692889321460150481573909330\
+77301946991278225819671075907191359721824291923283322225480199446258\
+03302645587072103949599624444368321734975586414930425964782010567575\
+43333331963876294983400462908871215572514487548352925949663431718284\
+14589547315559936497408670231851521193150991888789948397029796279240\
+53117024758684807981605608837291399377902947471927467827290844733264\
+70881963357258978768427852958888430774360783419404195056122644913454\
+24537375432013012467418602205343636983874410969339344956536142566292\
+67710105053213729008973121773436382170956191942409859915563249876601\
+97309463059908818473774872128141896864070835259683384180928526600888\
+17480854811931632353621014638284918544379784608050029606475137979896\
+79160729736625134310450643341951675749112836007180865039256361941093\
+99844921135320096085772541537129637055451495234892640418746420370197\
+76655592198723057553855194566534999101921182723711243608938705766658\
+35660299983828999383637476407321955462859142012030390036241831962713\
+40429407146441598507165243069127531565881439971034178400174881243483\
+00001434950666035560134867554719667076133414445044258086968145695386\
+00575860256380332451841441394317283433596457253185221717167880159573\
+60478649571700878049257386910142909926740023800166057094445463624601\
+79490246367497489548435683835329410376623483996271147060314994344869\
+89606855219181727424853876740423210027967733989284801813769926906846\
+45570461348452758744643550541290031199432061998646306091218518879810\
+17848488755494879341886158379140088252013009193050706458824793551984\
+39285914868159111542391208521561221610797141925061986437418522494485\
+59871215531081904861310222368465288125816137210222223075106739997863\
+76953125");;
 
 testing_function "power_big_int_positive_big_int";;
 
@@ -456,6 +574,95 @@ eq_big_int
    (big_int_of_string "3") (big_int_of_string "47"),
   big_int_of_string "26588814358957503287787");;
 
+test 4
+eq_big_int
+ (power_big_int_positive_big_int
+     (big_int_of_string "200000000000000") (big_int_of_int 34),
+  big_int_of_string
+"17179869184000000000000000000000000000000000000000000000000000000000\
+00000000000000000000000000000000000000000000000000000000000000000000\
+00000000000000000000000000000000000000000000000000000000000000000000\
+00000000000000000000000000000000000000000000000000000000000000000000\
+00000000000000000000000000000000000000000000000000000000000000000000\
+00000000000000000000000000000000000000000000000000000000000000000000\
+00000000000000000000000000000000000000000000000000000000000000000000\
+00000000000");;
+
+test 5
+eq_big_int
+ (power_big_int_positive_big_int (big_int_of_string "2197609328765")
+                                 (big_int_of_string "243"),
+  big_int_of_string
+"12415638672345366257764851943822299490113545698929764576040102857365\
+27920436565335427676982530274588056944387957287793378051852205028658\
+73008292720317554332284838709453634119919368441951233982592586680844\
+20765201140575612595182857026804842796931784944918059630667794516774\
+58498235838834599150657873894983300999081942159304585449505963892008\
+97855706440206825609657816209327492197604711437269361628626691080334\
+38432768885637928268354258860147333786379766583179851226375449161073\
+10396958979998161989562418169797611757651190037273397850239552735199\
+63719988832594486235837899145390948533078339399890545062510060406048\
+61331200657727576638170520036143007285549092686618686739320973444703\
+33342725604091818763255601206325426337211467746377586080108631634250\
+11232258578207762608797108802386708549785680783113606089879687396654\
+54004281165259352412815385041917713969718327109245777066079665194617\
+29230093411050053217775067781725651590160086483960457766025246936489\
+92234225900994076609973190516835778346886551506344097474301175288686\
+25662752919718480402972207084177612056491949911377568680526080633587\
+33230060757162252611388973328501680433819585006035301408574879645573\
+47126018243568976860515247053858204554293343161581801846081341003624\
+22906934772131205632200433218165757307182816260714026614324014553342\
+77303133877636489457498062819003614421295692889321460150481573909330\
+77301946991278225819671075907191359721824291923283322225480199446258\
+03302645587072103949599624444368321734975586414930425964782010567575\
+43333331963876294983400462908871215572514487548352925949663431718284\
+14589547315559936497408670231851521193150991888789948397029796279240\
+53117024758684807981605608837291399377902947471927467827290844733264\
+70881963357258978768427852958888430774360783419404195056122644913454\
+24537375432013012467418602205343636983874410969339344956536142566292\
+67710105053213729008973121773436382170956191942409859915563249876601\
+97309463059908818473774872128141896864070835259683384180928526600888\
+17480854811931632353621014638284918544379784608050029606475137979896\
+79160729736625134310450643341951675749112836007180865039256361941093\
+99844921135320096085772541537129637055451495234892640418746420370197\
+76655592198723057553855194566534999101921182723711243608938705766658\
+35660299983828999383637476407321955462859142012030390036241831962713\
+40429407146441598507165243069127531565881439971034178400174881243483\
+00001434950666035560134867554719667076133414445044258086968145695386\
+00575860256380332451841441394317283433596457253185221717167880159573\
+60478649571700878049257386910142909926740023800166057094445463624601\
+79490246367497489548435683835329410376623483996271147060314994344869\
+89606855219181727424853876740423210027967733989284801813769926906846\
+45570461348452758744643550541290031199432061998646306091218518879810\
+17848488755494879341886158379140088252013009193050706458824793551984\
+39285914868159111542391208521561221610797141925061986437418522494485\
+59871215531081904861310222368465288125816137210222223075106739997863\
+76953125");;
+
+test 6
+eq_big_int
+ (power_big_int_positive_big_int (big_int_of_int 1)
+                                 (big_int_of_string "1000000000000000000000"),
+  big_int_of_int 1);;
+
+test 7
+eq_big_int
+ (power_big_int_positive_big_int (big_int_of_int (-1))
+                                 (big_int_of_string "1000000000000000000000"),
+  big_int_of_int 1);;
+
+test 8
+eq_big_int
+ (power_big_int_positive_big_int (big_int_of_int (-1))
+                                 (big_int_of_string "1000000000000000000001"),
+  big_int_of_int (-1));;
+
+test 9
+eq_big_int
+ (power_big_int_positive_big_int (big_int_of_int 0)
+                                 (big_int_of_string "1000000000000000000000"),
+  big_int_of_int 0);;
+
 testing_function "square_big_int";;
 
 test 1 eq_big_int
diff --git a/otherlibs/str/CVS/Entries b/otherlibs/str/CVS/Entries
deleted file mode 100644 (file)
index c20c5ea..0000000
+++ /dev/null
@@ -1,8 +0,0 @@
-/.cvsignore/1.3/Thu Oct 11 12:04:39 2001//Tocaml3083
-/.depend/1.12/Mon Dec 15 18:10:51 2003//Tocaml3083
-/Makefile/1.31/Mon Dec  9 14:05:18 2002//Tocaml3083
-/Makefile.nt/1.14/Mon Dec  9 14:05:18 2002//Tocaml3083
-/str.ml/1.19/Tue Feb 17 10:13:50 2004//Tocaml3083
-/str.mli/1.23.2.1/Thu Mar 10 16:03:11 2005//Tocaml3083
-/strstubs.c/1.26/Mon May 17 17:10:00 2004//Tocaml3083
-D
diff --git a/otherlibs/str/CVS/Entries.Log b/otherlibs/str/CVS/Entries.Log
deleted file mode 100644 (file)
index 700c873..0000000
+++ /dev/null
@@ -1,2 +0,0 @@
-A D/regex-0.12////
-R D/regex-0.12////
diff --git a/otherlibs/str/CVS/Repository b/otherlibs/str/CVS/Repository
deleted file mode 100644 (file)
index 2e913cc..0000000
+++ /dev/null
@@ -1 +0,0 @@
-csl/otherlibs/str
diff --git a/otherlibs/str/CVS/Root b/otherlibs/str/CVS/Root
deleted file mode 100644 (file)
index c83f52f..0000000
+++ /dev/null
@@ -1 +0,0 @@
-:ext:yquem.inria.fr:/net/yquem/devel/caml/repository
diff --git a/otherlibs/str/CVS/Tag b/otherlibs/str/CVS/Tag
deleted file mode 100644 (file)
index deaa3ee..0000000
+++ /dev/null
@@ -1 +0,0 @@
-Nocaml3083
diff --git a/otherlibs/systhreads/CVS/Entries b/otherlibs/systhreads/CVS/Entries
deleted file mode 100644 (file)
index c68e0ca..0000000
+++ /dev/null
@@ -1,18 +0,0 @@
-/.cvsignore/1.2/Thu Oct 11 12:04:39 2001//Tocaml3083
-/.depend/1.12.4.1/Tue Feb 22 14:33:37 2005//Tocaml3083
-/Makefile/1.35/Thu Aug 21 13:52:07 2003//Tocaml3083
-/Makefile.nt/1.29/Thu Jun 27 11:36:02 2002//Tocaml3083
-/condition.ml/1.6/Fri Dec  7 13:40:18 2001//Tocaml3083
-/condition.mli/1.6/Fri Dec  7 13:40:19 2001//Tocaml3083
-/event.ml/1.9/Fri Dec  7 13:40:19 2001//Tocaml3083
-/event.mli/1.9/Fri Dec  7 13:40:19 2001//Tocaml3083
-/mutex.ml/1.4/Fri Dec  7 13:40:19 2001//Tocaml3083
-/mutex.mli/1.6/Fri Dec  7 13:40:19 2001//Tocaml3083
-/posix.c/1.49.2.1/Thu Jul  1 09:32:38 2004//Tocaml3083
-/thread.mli/1.19/Fri Dec 28 23:14:48 2001//Tocaml3083
-/threadUnix.ml/1.8/Fri Dec  7 13:40:20 2001//Tocaml3083
-/threadUnix.mli/1.19/Wed Jun 26 09:48:00 2002//Tocaml3083
-/thread_posix.ml/1.9/Mon Jun 16 12:31:13 2003//Tocaml3083
-/thread_win32.ml/1.8/Fri Dec  7 13:40:20 2001//Tocaml3083
-/win32.c/1.38/Mon Dec 29 22:15:02 2003//Tocaml3083
-D
diff --git a/otherlibs/systhreads/CVS/Repository b/otherlibs/systhreads/CVS/Repository
deleted file mode 100644 (file)
index e60e93b..0000000
+++ /dev/null
@@ -1 +0,0 @@
-csl/otherlibs/systhreads
diff --git a/otherlibs/systhreads/CVS/Root b/otherlibs/systhreads/CVS/Root
deleted file mode 100644 (file)
index c83f52f..0000000
+++ /dev/null
@@ -1 +0,0 @@
-:ext:yquem.inria.fr:/net/yquem/devel/caml/repository
diff --git a/otherlibs/systhreads/CVS/Tag b/otherlibs/systhreads/CVS/Tag
deleted file mode 100644 (file)
index deaa3ee..0000000
+++ /dev/null
@@ -1 +0,0 @@
-Nocaml3083
diff --git a/otherlibs/threads/CVS/Entries b/otherlibs/threads/CVS/Entries
deleted file mode 100644 (file)
index c743e2b..0000000
+++ /dev/null
@@ -1,18 +0,0 @@
-/.cvsignore/1.1/Fri Jan 18 15:13:25 2002//Tocaml3083
-/.depend/1.17.4.1/Tue Feb 22 14:33:37 2005//Tocaml3083
-/Makefile/1.53/Thu Jul 17 08:38:28 2003//Tocaml3083
-/condition.ml/1.8/Fri Dec  7 13:40:21 2001//Tocaml3083
-/condition.mli/1.13/Fri Dec  7 13:40:21 2001//Tocaml3083
-/event.ml/1.14/Fri Dec  7 13:40:21 2001//Tocaml3083
-/event.mli/1.14/Fri Dec  7 13:40:21 2001//Tocaml3083
-/marshal.ml/1.9/Thu May 27 15:28:05 2004//Tocaml3083
-/mutex.ml/1.8/Fri Dec  7 13:40:22 2001//Tocaml3083
-/mutex.mli/1.11/Fri Dec  7 13:40:22 2001//Tocaml3083
-/pervasives.ml/1.48.4.1/Tue Jun 22 12:13:46 2004//Tocaml3083
-/scheduler.c/1.58/Mon Dec 29 22:15:02 2003//Tocaml3083
-/thread.ml/1.23/Thu Mar 20 16:23:04 2003//Tocaml3083
-/thread.mli/1.27.6.1/Wed Jun 30 09:32:40 2004//Tocaml3083
-/threadUnix.ml/1.18.6.1/Tue Jun 22 17:18:49 2004//Tocaml3083
-/threadUnix.mli/1.21.6.1/Tue Jun 22 17:18:49 2004//Tocaml3083
-/unix.ml/1.16.2.2/Sat Nov  6 10:14:58 2004//Tocaml3083
-D
diff --git a/otherlibs/threads/CVS/Repository b/otherlibs/threads/CVS/Repository
deleted file mode 100644 (file)
index f5537e0..0000000
+++ /dev/null
@@ -1 +0,0 @@
-csl/otherlibs/threads
diff --git a/otherlibs/threads/CVS/Root b/otherlibs/threads/CVS/Root
deleted file mode 100644 (file)
index c83f52f..0000000
+++ /dev/null
@@ -1 +0,0 @@
-:ext:yquem.inria.fr:/net/yquem/devel/caml/repository
diff --git a/otherlibs/threads/CVS/Tag b/otherlibs/threads/CVS/Tag
deleted file mode 100644 (file)
index deaa3ee..0000000
+++ /dev/null
@@ -1 +0,0 @@
-Nocaml3083
index ac2304064862c0e300f75909506123e9d6f2382b..abdfddccf34f65317cf80d4171926bd20dbb0861 100644 (file)
@@ -11,7 +11,7 @@
 /*                                                                     */
 /***********************************************************************/
 
-/* $Id: scheduler.c,v 1.58 2003/12/29 22:15:02 doligez Exp $ */
+/* $Id: scheduler.c,v 1.58.4.1 2005/06/21 12:27:36 doligez Exp $ */
 
 /* The thread scheduler */
 
@@ -64,7 +64,7 @@
 
 /* Configuration */
 
-/* Initial size of stack when a thread is created (4 Ko) */
+/* Initial size of stack when a thread is created (4kB) */
 #define Thread_stack_size (Stack_size / 4)
 
 /* Max computation time before rescheduling, in microseconds (50ms) */
@@ -174,7 +174,7 @@ value thread_initialize(value unit)       /* ML */
   curr_thread->trapsp = trapsp;
   curr_thread->backtrace_pos = Val_int(backtrace_pos);
   curr_thread->backtrace_buffer = backtrace_buffer;
-  curr_thread->backtrace_last_exn = backtrace_last_exn;
+  caml_initialize (&curr_thread->backtrace_last_exn, backtrace_last_exn);
   curr_thread->status = RUNNABLE;
   curr_thread->fd = Val_int(0);
   curr_thread->readfds = NO_FDS;
@@ -311,7 +311,7 @@ static value schedule_thread(void)
   curr_thread->trapsp = trapsp;
   curr_thread->backtrace_pos = Val_int(backtrace_pos);
   curr_thread->backtrace_buffer = backtrace_buffer;
-  curr_thread->backtrace_last_exn = backtrace_last_exn;
+  caml_modify (&curr_thread->backtrace_last_exn, backtrace_last_exn);
 
 try_again:
   /* Find if a thread is runnable.
diff --git a/otherlibs/unix/CVS/Entries b/otherlibs/unix/CVS/Entries
deleted file mode 100644 (file)
index fc06dc3..0000000
+++ /dev/null
@@ -1,103 +0,0 @@
-/.cvsignore/1.1/Thu Oct 11 12:04:40 2001//Tocaml3083
-/.depend/1.23.2.2/Tue Feb 22 14:33:37 2005//Tocaml3083
-/Makefile/1.38/Fri Apr  9 13:25:20 2004//Tocaml3083
-/accept.c/1.12.6.2/Wed Jan 12 15:08:56 2005//Tocaml3083
-/access.c/1.10.6.1/Tue Nov  2 16:21:25 2004//Tocaml3083
-/addrofstr.c/1.11/Fri Apr  9 13:25:20 2004//Tocaml3083
-/alarm.c/1.7.6.1/Mon Jan 17 18:10:36 2005//Tocaml3083
-/bind.c/1.9.6.1/Mon Aug 23 11:31:44 2004//Tocaml3083
-/chdir.c/1.8/Fri Dec  7 13:40:24 2001//Tocaml3083
-/chmod.c/1.9/Fri Dec  7 13:40:26 2001//Tocaml3083
-/chown.c/1.8/Fri Dec  7 13:40:26 2001//Tocaml3083
-/chroot.c/1.8/Fri Dec  7 13:40:26 2001//Tocaml3083
-/close.c/1.10/Fri Dec  7 13:40:26 2001//Tocaml3083
-/closedir.c/1.9/Sat Feb 14 10:21:22 2004//Tocaml3083
-/connect.c/1.11.6.1/Mon Aug 23 11:31:44 2004//Tocaml3083
-/cst2constr.c/1.7/Fri Dec  7 13:40:26 2001//Tocaml3083
-/cst2constr.h/1.7/Fri Apr  9 13:25:21 2004//Tocaml3083
-/cstringv.c/1.7/Fri Dec  7 13:40:27 2001//Tocaml3083
-/dup.c/1.8/Fri Dec  7 13:40:27 2001//Tocaml3083
-/dup2.c/1.9/Fri Dec  7 13:40:27 2001//Tocaml3083
-/envir.c/1.9.6.1/Mon Jan 17 18:10:36 2005//Tocaml3083
-/errmsg.c/1.12/Sun May 23 15:53:50 2004//Tocaml3083
-/execv.c/1.8/Fri Dec  7 13:40:27 2001//Tocaml3083
-/execve.c/1.8/Fri Dec  7 13:40:27 2001//Tocaml3083
-/execvp.c/1.8/Fri Dec  7 13:40:27 2001//Tocaml3083
-/exit.c/1.9/Fri Dec  7 13:40:28 2001//Tocaml3083
-/fchmod.c/1.9.6.1/Mon Aug 23 11:31:44 2004//Tocaml3083
-/fchown.c/1.8.6.1/Mon Aug 23 11:31:44 2004//Tocaml3083
-/fcntl.c/1.11.6.1/Mon Aug 23 11:31:44 2004//Tocaml3083
-/fork.c/1.8/Fri Dec  7 13:40:28 2001//Tocaml3083
-/ftruncate.c/1.9.6.1/Mon Aug 23 11:31:44 2004//Tocaml3083
-/getaddrinfo.c/1.1.4.2/Wed Jan 12 15:08:56 2005//Tocaml3083
-/getcwd.c/1.14.6.1/Mon Aug 23 11:31:44 2004//Tocaml3083
-/getegid.c/1.8.6.1/Mon Jan 17 18:10:36 2005//Tocaml3083
-/geteuid.c/1.8.6.1/Mon Jan 17 18:10:36 2005//Tocaml3083
-/getgid.c/1.8.6.1/Mon Jan 17 18:10:36 2005//Tocaml3083
-/getgr.c/1.12/Fri Dec  7 13:40:29 2001//Tocaml3083
-/getgroups.c/1.10.6.1/Mon Aug 23 11:31:44 2004//Tocaml3083
-/gethost.c/1.24.2.1/Mon Aug 23 11:31:44 2004//Tocaml3083
-/gethostname.c/1.10.6.1/Mon Aug 23 11:31:44 2004//Tocaml3083
-/getlogin.c/1.8.6.1/Mon Jan 17 18:10:36 2005//Tocaml3083
-/getnameinfo.c/1.1.4.1/Mon Aug 23 11:31:44 2004//Tocaml3083
-/getpeername.c/1.10.2.2/Wed Jan 12 15:08:56 2005//Tocaml3083
-/getpid.c/1.8.6.1/Mon Jan 17 18:10:36 2005//Tocaml3083
-/getppid.c/1.8.6.1/Mon Jan 17 18:10:36 2005//Tocaml3083
-/getproto.c/1.12.6.1/Mon Aug 23 11:31:44 2004//Tocaml3083
-/getpw.c/1.12/Fri Dec  7 13:40:30 2001//Tocaml3083
-/getserv.c/1.13.6.1/Mon Aug 23 11:31:44 2004//Tocaml3083
-/getsockname.c/1.9.6.2/Wed Jan 12 15:08:56 2005//Tocaml3083
-/gettimeofday.c/1.7.6.1/Mon Aug 23 11:31:44 2004//Tocaml3083
-/getuid.c/1.8.6.1/Mon Jan 17 18:10:36 2005//Tocaml3083
-/gmtime.c/1.16.6.1/Mon Aug 23 11:31:44 2004//Tocaml3083
-/itimer.c/1.13.4.1/Mon Aug 23 11:31:44 2004//Tocaml3083
-/kill.c/1.10/Fri Dec  7 13:40:31 2001//Tocaml3083
-/link.c/1.8/Fri Dec  7 13:40:31 2001//Tocaml3083
-/listen.c/1.10.6.1/Mon Aug 23 11:31:44 2004//Tocaml3083
-/lockf.c/1.13.2.1/Mon Aug 23 11:31:44 2004//Tocaml3083
-/lseek.c/1.10/Sat Mar  2 09:16:36 2002//Tocaml3083
-/mkdir.c/1.9/Fri Dec  7 13:40:31 2001//Tocaml3083
-/mkfifo.c/1.10.6.2/Mon Jan 17 18:10:36 2005//Tocaml3083
-/nice.c/1.10/Fri Dec  7 13:40:32 2001//Tocaml3083
-/open.c/1.11.6.1/Tue Nov  2 16:21:25 2004//Tocaml3083
-/opendir.c/1.9/Sat Feb 14 10:21:22 2004//Tocaml3083
-/pipe.c/1.9.6.1/Mon Jan 17 18:10:36 2005//Tocaml3083
-/putenv.c/1.8.6.1/Mon Aug 23 11:31:44 2004//Tocaml3083
-/read.c/1.13/Fri Dec  7 13:40:32 2001//Tocaml3083
-/readdir.c/1.12/Sat Feb 14 10:21:23 2004//Tocaml3083
-/readlink.c/1.10.6.1/Mon Aug 23 11:31:44 2004//Tocaml3083
-/rename.c/1.10/Fri Dec  7 13:40:33 2001//Tocaml3083
-/rewinddir.c/1.11.2.1/Mon Aug 23 11:31:44 2004//Tocaml3083
-/rmdir.c/1.9/Fri Dec  7 13:40:33 2001//Tocaml3083
-/select.c/1.21.6.1/Mon Aug 23 11:31:44 2004//Tocaml3083
-/sendrecv.c/1.18.6.4/Mon Jan 17 18:10:36 2005//Tocaml3083
-/setgid.c/1.8/Fri Dec  7 13:40:33 2001//Tocaml3083
-/setsid.c/1.5.6.1/Mon Aug 23 11:31:44 2004//Tocaml3083
-/setuid.c/1.8/Fri Dec  7 13:40:33 2001//Tocaml3083
-/shutdown.c/1.10.6.1/Mon Aug 23 11:31:44 2004//Tocaml3083
-/signals.c/1.9.6.1/Mon Aug 23 11:31:44 2004//Tocaml3083
-/sleep.c/1.9/Fri Dec  7 13:40:35 2001//Tocaml3083
-/socket.c/1.10.2.1/Mon Aug 23 11:31:44 2004//Tocaml3083
-/socketaddr.c/1.22.2.2/Mon Jan 17 18:10:36 2005//Tocaml3083
-/socketaddr.h/1.15.2.2/Mon Jan 17 18:10:36 2005//Tocaml3083
-/socketpair.c/1.11.6.1/Mon Aug 23 11:31:44 2004//Tocaml3083
-/sockopt.c/1.18.6.2/Mon Jan 17 18:10:36 2005//Tocaml3083
-/stat.c/1.15/Mon May  5 14:20:58 2003//Tocaml3083
-/strofaddr.c/1.9.2.1/Mon Aug 23 11:31:44 2004//Tocaml3083
-/symlink.c/1.8.6.1/Mon Aug 23 11:31:44 2004//Tocaml3083
-/termios.c/1.14.6.1/Mon Aug 23 11:31:44 2004//Tocaml3083
-/time.c/1.9.6.1/Mon Jan 17 18:10:36 2005//Tocaml3083
-/times.c/1.14.6.1/Mon Jan 17 18:10:36 2005//Tocaml3083
-/truncate.c/1.9.6.1/Mon Aug 23 11:31:44 2004//Tocaml3083
-/umask.c/1.9/Fri Dec  7 13:40:37 2001//Tocaml3083
-/unix.ml/1.60.2.3/Sat Nov  6 10:14:58 2004//Tocaml3083
-/unix.mli/1.79.2.4/Wed Dec 22 16:11:13 2004//Tocaml3083
-/unixLabels.ml/1.3/Fri Dec  7 13:40:38 2001//Tocaml3083
-/unixLabels.mli/1.12.2.2/Fri Jul  2 09:37:17 2004//Tocaml3083
-/unixsupport.c/1.17/Sat Mar  2 09:16:38 2002//Tocaml3083
-/unixsupport.h/1.7/Sat Feb 14 10:21:23 2004//Tocaml3083
-/unlink.c/1.8/Fri Dec  7 13:40:39 2001//Tocaml3083
-/utimes.c/1.9.6.1/Mon Aug 23 11:31:44 2004//Tocaml3083
-/wait.c/1.17.6.3/Mon Jan 17 18:10:36 2005//Tocaml3083
-/write.c/1.13.6.3/Thu Jul  8 08:40:47 2004//Tocaml3083
-D
diff --git a/otherlibs/unix/CVS/Repository b/otherlibs/unix/CVS/Repository
deleted file mode 100644 (file)
index 0df35a0..0000000
+++ /dev/null
@@ -1 +0,0 @@
-csl/otherlibs/unix
diff --git a/otherlibs/unix/CVS/Root b/otherlibs/unix/CVS/Root
deleted file mode 100644 (file)
index c83f52f..0000000
+++ /dev/null
@@ -1 +0,0 @@
-:ext:yquem.inria.fr:/net/yquem/devel/caml/repository
diff --git a/otherlibs/unix/CVS/Tag b/otherlibs/unix/CVS/Tag
deleted file mode 100644 (file)
index deaa3ee..0000000
+++ /dev/null
@@ -1 +0,0 @@
-Nocaml3083
index 637e64dd9b07ad8bf92b63e59ce12e2f3f0d66e0..67d7e615bea7ec1ca1604f36f6d3a120c00a12a7 100644 (file)
@@ -11,7 +11,7 @@
 /*                                                                     */
 /***********************************************************************/
 
-/* $Id: getaddrinfo.c,v 1.1.4.2 2005/01/12 15:08:56 doligez Exp $ */
+/* $Id: getaddrinfo.c,v 1.1.4.3 2005/04/17 08:53:02 xleroy Exp $ */
 
 #include <string.h>
 #include <mlvalues.h>
@@ -38,9 +38,12 @@ static value convert_addrinfo(struct addrinfo * a)
   CAMLparam0();
   CAMLlocal3(vres,vaddr,vcanonname);
   union sock_addr_union sa;
+  socklen_param_type len;
 
-  memcpy(&sa.s_gen, a->ai_addr, sizeof(struct sockaddr));
-  vaddr = alloc_sockaddr(&sa, sizeof(struct sockaddr), -1);
+  len = a->ai_addrlen;
+  if (len > sizeof(sa)) len = sizeof(sa);
+  memcpy(&sa.s_gen, a->ai_addr, len);
+  vaddr = alloc_sockaddr(&sa, len, -1);
   vcanonname = copy_string(a->ai_canonname == NULL ? "" : a->ai_canonname);
   vres = alloc_small(5, 0);
   Field(vres, 0) = cst_to_constr(a->ai_family, socket_domain_table, 3, 0);
diff --git a/otherlibs/win32graph/CVS/Entries b/otherlibs/win32graph/CVS/Entries
deleted file mode 100644 (file)
index af9ed85..0000000
+++ /dev/null
@@ -1,7 +0,0 @@
-/Makefile.nt/1.5.6.1/Mon Jun 21 15:31:58 2004//Tocaml3083
-/dib.c/1.3/Tue Jul 23 14:12:00 2002//Tocaml3083
-/draw.c/1.9.2.3/Thu Feb  3 16:40:12 2005//Tocaml3083
-/events.c/1.1.2.1/Mon Jun 21 15:31:58 2004//Tocaml3083
-/libgraph.h/1.8.2.1/Mon Jun 21 15:31:58 2004//Tocaml3083
-/open.c/1.8.2.2/Mon Jun 21 15:44:17 2004//Tocaml3083
-D
diff --git a/otherlibs/win32graph/CVS/Repository b/otherlibs/win32graph/CVS/Repository
deleted file mode 100644 (file)
index c7615d9..0000000
+++ /dev/null
@@ -1 +0,0 @@
-csl/otherlibs/win32graph
diff --git a/otherlibs/win32graph/CVS/Root b/otherlibs/win32graph/CVS/Root
deleted file mode 100644 (file)
index c83f52f..0000000
+++ /dev/null
@@ -1 +0,0 @@
-:ext:yquem.inria.fr:/net/yquem/devel/caml/repository
diff --git a/otherlibs/win32graph/CVS/Tag b/otherlibs/win32graph/CVS/Tag
deleted file mode 100644 (file)
index deaa3ee..0000000
+++ /dev/null
@@ -1 +0,0 @@
-Nocaml3083
index 5ec89247759fd2fc0dc0bafe4462e0f62d34a8e3..af6e98eab30ba1eb110c842bfdc11c547d89a27a 100644 (file)
@@ -10,7 +10,7 @@
 /*                                                                     */
 /***********************************************************************/
 
-/* $Id: open.c,v 1.8.2.2 2004/06/21 15:44:17 xleroy Exp $ */
+/* $Id: open.c,v 1.8.2.3 2005/05/26 09:15:22 doligez Exp $ */
 
 #include <fcntl.h>
 #include <signal.h>
@@ -301,6 +301,15 @@ CAMLprim value caml_gr_size_y(void)
         return Val_int(grwindow.height);
 }
 
+CAMLprim value caml_gr_resize_window (value vx, value vy)
+{
+  caml_gr_check_open ();
+
+  /* FIXME TODO implement this function... */
+
+  return Val_unit;
+}
+
 CAMLprim value caml_gr_synchronize(void)
 {
         gr_check_open();
@@ -353,4 +362,3 @@ void gr_check_open(void)
 {
   if (!gr_initialized) gr_fail("graphic screen not opened", NULL);
 }
-
diff --git a/otherlibs/win32unix/CVS/Entries b/otherlibs/win32unix/CVS/Entries
deleted file mode 100644 (file)
index d3ca5b3..0000000
+++ /dev/null
@@ -1,44 +0,0 @@
-/.cvsignore/1.2/Tue Apr  9 08:18:51 2002//Tocaml3083
-/.depend/1.5/Thu Sep 13 09:08:11 2001//Tocaml3083
-/Makefile.nt/1.32/Sun May 30 08:17:06 2004//Tocaml3083
-/accept.c/1.18.6.1/Wed Feb  2 15:40:14 2005//Tocaml3083
-/bind.c/1.10/Tue Apr 30 15:00:45 2002//Tocaml3083
-/channels.c/1.10/Mon Jan  6 14:52:57 2003//Tocaml3083
-/close.c/1.5/Tue Apr 30 15:00:46 2002//Tocaml3083
-/close_on.c/1.8/Fri Dec  7 13:40:43 2001//Tocaml3083
-/connect.c/1.11/Fri Jun  7 09:49:41 2002//Tocaml3083
-/createprocess.c/1.13/Fri Dec  7 13:40:43 2001//Tocaml3083
-/dup.c/1.6/Tue Apr 30 15:00:46 2002//Tocaml3083
-/dup2.c/1.7/Mon Jan  6 14:52:57 2003//Tocaml3083
-/errmsg.c/1.5/Wed Dec 31 00:00:14 2003//Tocaml3083
-/getpeername.c/1.9.6.1/Wed Feb  2 15:40:14 2005//Tocaml3083
-/getpid.c/1.4/Fri Dec  7 13:40:44 2001//Tocaml3083
-/getsockname.c/1.7.6.1/Wed Feb  2 15:40:14 2005//Tocaml3083
-/gettimeofday.c/1.6/Fri Dec  7 13:40:44 2001//Tocaml3083
-/link.c/1.3/Fri Dec  7 13:40:44 2001//Tocaml3083
-/listen.c/1.9/Tue Apr 30 15:00:46 2002//Tocaml3083
-/lockf.c/1.3/Tue Jul 23 14:12:01 2002//Tocaml3083
-/lseek.c/1.6/Fri Jun  7 09:49:41 2002//Tocaml3083
-/mkdir.c/1.5/Fri Dec  7 13:40:45 2001//Tocaml3083
-/nonblock.c/1.1/Mon Jan  6 16:44:21 2003//Tocaml3083
-/open.c/1.9/Fri Dec  7 13:40:45 2001//Tocaml3083
-/pipe.c/1.7/Fri Dec  7 13:40:45 2001//Tocaml3083
-/read.c/1.7/Tue Jul 23 14:12:01 2002//Tocaml3083
-/rename.c/1.2.8.1/Mon Jun 21 16:18:32 2004//Tocaml3083
-/select.c/1.10/Tue Jan  7 16:16:44 2003//Tocaml3083
-/sendrecv.c/1.16.6.1/Wed Feb  2 15:40:14 2005//Tocaml3083
-/shutdown.c/1.9/Tue Apr 30 15:00:47 2002//Tocaml3083
-/sleep.c/1.5/Fri Jun  7 09:49:41 2002//Tocaml3083
-/socket.c/1.12/Tue Apr 30 15:00:47 2002//Tocaml3083
-/socketaddr.h/1.7.2.1/Wed Feb  2 15:40:14 2005//Tocaml3083
-/sockopt.c/1.15/Tue Jul 23 14:12:01 2002//Tocaml3083
-/startup.c/1.9/Mon Jan  6 14:52:57 2003//Tocaml3083
-/stat.c/1.1/Wed Mar  6 16:55:20 2002//Tocaml3083
-/system.c/1.8/Fri Jun  7 09:49:41 2002//Tocaml3083
-/unix.ml/1.41.2.1/Tue Jun 22 17:18:50 2004//Tocaml3083
-/unixsupport.c/1.19/Thu Apr  1 13:12:36 2004//Tocaml3083
-/unixsupport.h/1.15/Mon Jan  6 14:52:57 2003//Tocaml3083
-/windir.c/1.13/Tue Jul 23 14:12:01 2002//Tocaml3083
-/winwait.c/1.14/Fri Jun  7 09:49:41 2002//Tocaml3083
-/write.c/1.7.6.2/Thu Jul  8 08:40:55 2004//Tocaml3083
-D
diff --git a/otherlibs/win32unix/CVS/Repository b/otherlibs/win32unix/CVS/Repository
deleted file mode 100644 (file)
index 5fc2f3d..0000000
+++ /dev/null
@@ -1 +0,0 @@
-csl/otherlibs/win32unix
diff --git a/otherlibs/win32unix/CVS/Root b/otherlibs/win32unix/CVS/Root
deleted file mode 100644 (file)
index c83f52f..0000000
+++ /dev/null
@@ -1 +0,0 @@
-:ext:yquem.inria.fr:/net/yquem/devel/caml/repository
diff --git a/otherlibs/win32unix/CVS/Tag b/otherlibs/win32unix/CVS/Tag
deleted file mode 100644 (file)
index deaa3ee..0000000
+++ /dev/null
@@ -1 +0,0 @@
-Nocaml3083
diff --git a/parsing/CVS/Entries b/parsing/CVS/Entries
deleted file mode 100644 (file)
index 669bba1..0000000
+++ /dev/null
@@ -1,19 +0,0 @@
-/.cvsignore/1.4/Fri Jun 23 15:08:43 2000//Tocaml3083
-/asttypes.mli/1.9/Fri Apr 25 12:27:30 2003//Tocaml3083
-/lexer.mli/1.14/Fri Nov 21 16:01:13 2003//Tocaml3083
-/lexer.mll/1.69/Fri Jan 16 15:24:02 2004//Tocaml3083
-/linenum.mli/1.2/Wed Nov 17 18:58:17 1999//Tocaml3083
-/linenum.mll/1.7/Wed Nov 17 18:58:17 1999//Tocaml3083
-/location.ml/1.44.6.1/Wed Jan 12 17:01:58 2005//Tocaml3083
-/location.mli/1.15.10.1/Wed Jan 12 17:01:58 2005//Tocaml3083
-/longident.ml/1.4/Sat Mar 25 18:55:44 2000//Tocaml3083
-/longident.mli/1.7/Sat Mar 25 18:55:44 2000//Tocaml3083
-/parse.ml/1.15/Fri Nov  1 17:06:46 2002//Tocaml3083
-/parse.mli/1.6/Wed Nov 17 18:58:19 1999//Tocaml3083
-/parser.mly/1.120/Wed May 19 12:15:19 2004//Tocaml3083
-/parsetree.mli/1.40/Tue Nov 25 08:46:45 2003//Tocaml3083
-/printast.ml/1.26/Tue Nov 25 08:46:45 2003//Tocaml3083
-/printast.mli/1.2/Mon Mar  6 22:11:39 2000//Tocaml3083
-/syntaxerr.ml/1.8/Thu Apr 18 08:50:43 2002//Tocaml3083
-/syntaxerr.mli/1.4/Mon Mar  6 22:11:40 2000//Tocaml3083
-D
diff --git a/parsing/CVS/Repository b/parsing/CVS/Repository
deleted file mode 100644 (file)
index 39db657..0000000
+++ /dev/null
@@ -1 +0,0 @@
-csl/parsing
diff --git a/parsing/CVS/Root b/parsing/CVS/Root
deleted file mode 100644 (file)
index c83f52f..0000000
+++ /dev/null
@@ -1 +0,0 @@
-:ext:yquem.inria.fr:/net/yquem/devel/caml/repository
diff --git a/parsing/CVS/Tag b/parsing/CVS/Tag
deleted file mode 100644 (file)
index deaa3ee..0000000
+++ /dev/null
@@ -1 +0,0 @@
-Nocaml3083
diff --git a/stdlib/CVS/Entries b/stdlib/CVS/Entries
deleted file mode 100644 (file)
index da6b8f8..0000000
+++ /dev/null
@@ -1,95 +0,0 @@
-/.cvsignore/1.9/Wed Nov 19 14:01:23 2003//Tocaml3083
-/.depend/1.56.6.2/Tue Feb 22 14:33:37 2005//Tocaml3083
-/Compflags/1.1.4.1/Thu Jul  8 07:43:13 2004//Tocaml3083
-/Makefile/1.81/Mon Jun 14 12:23:21 2004//Tocaml3083
-/Makefile.nt/1.35.2.1/Wed Feb  2 15:41:59 2005//Tocaml3083
-/StdlibModules/1.2/Wed Nov 26 10:57:14 2003//Tocaml3083
-/arg.ml/1.33.2.1/Fri Jul  2 09:01:16 2004//Tocaml3083
-/arg.mli/1.35/Fri Jun 11 23:45:46 2004//Tocaml3083
-/array.ml/1.23/Wed Dec 31 14:20:39 2003//Tocaml3083
-/array.mli/1.38/Wed Dec 31 14:20:39 2003//Tocaml3083
-/arrayLabels.ml/1.3/Fri Dec  7 13:40:49 2001//Tocaml3083
-/arrayLabels.mli/1.10/Wed Dec 31 14:20:39 2003//Tocaml3083
-/buffer.ml/1.17/Mon Jun 14 20:20:16 2004//Tocaml3083
-/buffer.mli/1.20/Sat Apr 17 13:36:03 2004//Tocaml3083
-/callback.ml/1.5/Wed Dec 31 14:20:39 2003//Tocaml3083
-/callback.mli/1.5/Fri Dec  7 13:40:50 2001//Tocaml3083
-/camlinternalOO.ml/1.9/Wed May 26 11:10:51 2004//Tocaml3083
-/camlinternalOO.mli/1.6/Wed May 26 11:10:51 2004//Tocaml3083
-/char.ml/1.12/Tue Dec 16 18:09:43 2003//Tocaml3083
-/char.mli/1.16/Wed Jun 26 09:13:58 2002//Tocaml3083
-/complex.ml/1.5/Thu Apr 18 07:27:42 2002//Tocaml3083
-/complex.mli/1.3/Thu Apr 18 07:27:42 2002//Tocaml3083
-/digest.ml/1.10/Wed Dec 31 14:20:39 2003//Tocaml3083
-/digest.mli/1.16/Wed Dec 31 14:20:39 2003//Tocaml3083
-/filename.ml/1.34.2.1/Mon Jan 31 17:01:02 2005//Tocaml3083
-/filename.mli/1.31.2.1/Mon Jan 31 17:01:02 2005//Tocaml3083
-/format.ml/1.55.4.2/Mon Jul 12 23:03:16 2004//Tocaml3083
-/format.mli/1.66.2.2/Mon Jul 12 23:03:16 2004//Tocaml3083
-/gc.ml/1.20/Mon Jun 14 13:27:36 2004//Tocaml3083
-/gc.mli/1.40/Mon Jun 14 13:27:36 2004//Tocaml3083
-/genlex.ml/1.9/Thu Apr 18 07:27:42 2002//Tocaml3083
-/genlex.mli/1.8/Fri Dec  7 13:40:51 2001//Tocaml3083
-/hashtbl.ml/1.26/Tue Mar 23 12:37:19 2004//Tocaml3083
-/hashtbl.mli/1.35.4.2/Thu Nov 25 13:30:34 2004//Tocaml3083
-/header.c/1.17/Fri Dec  7 13:40:52 2001//Tocaml3083
-/headernt.c/1.19/Tue Jul 23 14:12:01 2002//Tocaml3083
-/int32.ml/1.9/Thu Jan  1 16:42:40 2004//Tocaml3083
-/int32.mli/1.16/Thu Jan  1 16:42:40 2004//Tocaml3083
-/int64.ml/1.11/Thu Jan  1 16:42:40 2004//Tocaml3083
-/int64.mli/1.17/Thu Jan  1 16:42:40 2004//Tocaml3083
-/lazy.ml/1.11/Thu Jan  1 16:42:40 2004//Tocaml3083
-/lazy.mli/1.10/Tue Jul 30 13:02:56 2002//Tocaml3083
-/lexing.ml/1.23/Wed Dec 31 14:20:39 2003//Tocaml3083
-/lexing.mli/1.30/Wed Aug 13 15:31:36 2003//Tocaml3083
-/list.ml/1.31/Thu Jan  1 16:42:40 2004//Tocaml3083
-/list.mli/1.44/Fri Nov 21 16:06:08 2003//Tocaml3083
-/listLabels.ml/1.3/Fri Dec  7 13:40:54 2001//Tocaml3083
-/listLabels.mli/1.10/Fri Jul 25 21:40:06 2003//Tocaml3083
-/map.ml/1.15/Fri Apr 23 10:01:33 2004//Tocaml3083
-/map.mli/1.32/Fri Apr 23 10:01:33 2004//Tocaml3083
-/marshal.ml/1.8/Thu Jan  1 16:42:40 2004//Tocaml3083
-/marshal.mli/1.13/Thu Jan  1 16:42:40 2004//Tocaml3083
-/moreLabels.ml/1.2/Fri Dec  7 13:40:55 2001//Tocaml3083
-/moreLabels.mli/1.12/Fri Apr 23 10:01:34 2004//Tocaml3083
-/nativeint.ml/1.10/Thu Jan  1 16:42:40 2004//Tocaml3083
-/nativeint.mli/1.17/Thu Jan  1 16:42:40 2004//Tocaml3083
-/obj.ml/1.23/Thu Jan  1 16:42:40 2004//Tocaml3083
-/obj.mli/1.27/Thu Jan  1 16:42:40 2004//Tocaml3083
-/oo.ml/1.27/Wed May 26 11:10:52 2004//Tocaml3083
-/oo.mli/1.28/Wed May 26 11:10:52 2004//Tocaml3083
-/parsing.ml/1.18/Thu Jan  1 16:42:40 2004//Tocaml3083
-/parsing.mli/1.18/Wed Apr 14 15:37:30 2004//Tocaml3083
-/pervasives.ml/1.75.6.1/Tue Jun 22 12:13:46 2004//Tocaml3083
-/pervasives.mli/1.99.2.3/Mon Jan 31 12:47:53 2005//Tocaml3083
-/printexc.ml/1.18/Fri Jan 16 15:24:02 2004//Tocaml3083
-/printexc.mli/1.11/Fri Dec  7 13:40:57 2001//Tocaml3083
-/printf.ml/1.30/Fri Jan  2 19:23:29 2004//Tocaml3083
-/printf.mli/1.37/Sat Jul  5 11:13:23 2003//Tocaml3083
-/queue.ml/1.9/Tue Jul 23 14:12:01 2002//Tocaml3083
-/queue.mli/1.16/Thu Jun 27 08:48:26 2002//Tocaml3083
-/random.ml/1.22/Tue Dec 16 18:09:43 2003//Tocaml3083
-/random.mli/1.16/Tue Jun 24 09:50:23 2003//Tocaml3083
-/scanf.ml/1.49.2.2/Fri Jul  2 22:24:24 2004//Tocaml3083
-/scanf.mli/1.45.6.3/Thu Nov 25 13:30:34 2004//Tocaml3083
-/set.ml/1.18.4.1/Wed Nov  3 21:19:49 2004//Tocaml3083
-/set.mli/1.32/Fri Apr 23 10:01:54 2004//Tocaml3083
-/sharpbang/1.2/Mon Apr 27 15:14:31 1998//Tocaml3083
-/sort.ml/1.9/Wed Jan 14 17:20:56 2004//Tocaml3083
-/sort.mli/1.13/Fri Dec  7 13:40:58 2001//Tocaml3083
-/stack.ml/1.9/Thu Jun 27 08:48:26 2002//Tocaml3083
-/stack.mli/1.18/Thu Jun 27 08:48:26 2002//Tocaml3083
-/stdLabels.ml/1.3/Fri Dec  7 13:40:59 2001//Tocaml3083
-/stdLabels.mli/1.11.2.1/Tue Jun 22 14:23:24 2004//Tocaml3083
-/std_exit.ml/1.5/Fri Dec  7 13:40:59 2001//Tocaml3083
-/stream.ml/1.13/Fri Dec  7 13:40:59 2001//Tocaml3083
-/stream.mli/1.24/Fri Dec 28 23:12:48 2001//Tocaml3083
-/string.ml/1.25/Tue Dec 16 18:09:43 2003//Tocaml3083
-/string.mli/1.36.6.1/Wed Nov  3 21:17:18 2004//Tocaml3083
-/stringLabels.ml/1.4/Sat Jan  3 22:08:38 2004//Tocaml3083
-/stringLabels.mli/1.8.6.1/Tue Jun 22 14:23:25 2004//Tocaml3083
-/sys.ml/1.101.2.22/Wed Mar 16 12:05:33 2005//Tocaml3083
-/sys.mli/1.45/Tue May  4 11:51:13 2004//Tocaml3083
-/weak.ml/1.13/Thu Jan  1 16:42:41 2004//Tocaml3083
-/weak.mli/1.15/Mon Feb  2 14:43:12 2004//Tocaml3083
-D
diff --git a/stdlib/CVS/Repository b/stdlib/CVS/Repository
deleted file mode 100644 (file)
index 79ddc36..0000000
+++ /dev/null
@@ -1 +0,0 @@
-csl/stdlib
diff --git a/stdlib/CVS/Root b/stdlib/CVS/Root
deleted file mode 100644 (file)
index c83f52f..0000000
+++ /dev/null
@@ -1 +0,0 @@
-:ext:yquem.inria.fr:/net/yquem/devel/caml/repository
diff --git a/stdlib/CVS/Tag b/stdlib/CVS/Tag
deleted file mode 100644 (file)
index deaa3ee..0000000
+++ /dev/null
@@ -1 +0,0 @@
-Nocaml3083
index 2989c67c8549a5cc3d59671b96358bee4748a4db..5778976a2da384fdad4ac84e4791687ff6c8d2b0 100644 (file)
@@ -11,7 +11,7 @@
 (*                                                                     *)
 (***********************************************************************)
 
-(* $Id: array.mli,v 1.38 2003/12/31 14:20:39 doligez Exp $ *)
+(* $Id: array.mli,v 1.38.6.1 2005/07/08 15:17:39 doligez Exp $ *)
 
 (** Array operations. *)
 
@@ -34,7 +34,7 @@ external set : 'a array -> int -> 'a -> unit = "%array_safe_set"
 
    Raise [Invalid_argument "index out of bounds"]
    if [n] is outside the range 0 to [Array.length a - 1]. *)
-        
+
 external make : int -> 'a -> 'a array = "caml_make_vect"
 (** [Array.make n x] returns a fresh array of length [n],
    initialized with [x].
index ad91b622eeeff35723730b1db2ebba7e39394ae8..5752e006066ca668bfe54c8dd16551cafa93c13b 100644 (file)
@@ -11,7 +11,7 @@
 (*                                                                     *)
 (***********************************************************************)
 
-(* $Id: format.mli,v 1.66.2.2 2004/07/12 23:03:16 weis Exp $ *)
+(* $Id: format.mli,v 1.66.2.3 2005/07/01 08:48:05 guesdon Exp $ *)
 
 (** Pretty printing.
 
@@ -20,8 +20,9 @@
    at specified break hints, and indents lines according to the box
    structure.
 
-   For a gentle introduction to the basics of prety-printing using
-   [Format], read the FAQ at [http://caml.inria.fr/FAQ/format-eng.html]. 
+   For a gentle introduction to the basics of pretty-printing using
+   [Format], read
+   {{:http://caml.inria.fr/resources/doc/guides/format.html}http://caml.inria.fr/resources/doc/guides/format.html}.
 
    Warning: the material output by the following functions is delayed
    in the pretty-printer queue in order to compute the proper line
@@ -41,7 +42,7 @@
    provided by this module. This style is more basic but more verbose
    than the [fprintf] concise formats.
 
-   For instance, the sequence 
+   For instance, the sequence
    [open_box 0; print_string "x ="; print_space (); print_int 1; close_box ()]
    that prints [x = 1] within a pretty-printing box, can be
    abbreviated as [printf "@[%s@ %i@]" "x =" 1], or even shorter
@@ -116,14 +117,14 @@ val print_bool : bool -> unit;;
 
 val print_space : unit -> unit;;
 (** [print_space ()] is used to separate items (typically to print
-   a space between two words). 
+   a space between two words).
    It indicates that the line may be split at this
    point. It either prints one space or splits the line.
    It is equivalent to [print_break 1 0]. *)
 
 val print_cut : unit -> unit;;
 (** [print_cut ()] is used to mark a good break position.
-   It indicates that the line may be split at this 
+   It indicates that the line may be split at this
    point. It either prints nothing or splits the line.
    This allows line splitting at the current
    point, without printing spaces or adding indentation.
@@ -134,7 +135,7 @@ val print_break : int -> int -> unit;;
    [print_break nspaces offset] indicates that the line may
    be split (a newline character is printed) at this point,
    if the contents of the current box does not fit on the
-   current line. 
+   current line.
    If the line is split at that point, [offset] is added to
    the current indentation. If the line is not split,
    [nspaces] spaces are printed. *)
@@ -569,7 +570,7 @@ val fprintf : formatter -> ('a, formatter, unit) format -> 'a;;
    - [@\[]: open a pretty-printing box. The type and offset of the
      box may be optionally specified with the following syntax:
      the [<] character, followed by an optional box type indication,
-     then an optional integer offset, and the closing [>] character. 
+     then an optional integer offset, and the closing [>] character.
      Box type is one of [h], [v], [hv], [b], or [hov],
      which stand respectively for an horizontal box, a vertical box,
      an ``horizontal-vertical'' box, or an ``horizontal or
@@ -586,7 +587,7 @@ val fprintf : formatter -> ('a, formatter, unit) format -> 'a;;
    - [@\n]: force a newline, as with [force_newline ()].
    - [@;]: output a good break as with [print_break]. The
      [nspaces] and [offset] parameters of the break may be
-     optionally specified with the following syntax: 
+     optionally specified with the following syntax:
      the [<] character, followed by an integer [nspaces] value,
      then an integer offset, and a closing [>] character.
      If no parameters are provided, the good break defaults to a
@@ -612,7 +613,7 @@ val fprintf : formatter -> ('a, formatter, unit) format -> 'a;;
    - [@\}]: close the most recently opened tag.
    - [@@]: print a plain [@] character.
 
-   Example: [printf "@[%s@ %d@]" "x =" 1] is equivalent to 
+   Example: [printf "@[%s@ %d@]" "x =" 1] is equivalent to
    [open_box (); print_string "x ="; print_space (); print_int 1; close_box ()].
    It prints [x = 1] within a pretty-printing box.
 *)
index da70cde52a09d0aa7e2bed2ef8da7924543517f2..cfd3587c3508930aeaca1674a1515339c3427843 100644 (file)
@@ -11,7 +11,7 @@
 (*                                                                     *)
 (***********************************************************************)
 
-(* $Id: int32.mli,v 1.16 2004/01/01 16:42:40 doligez Exp $ *)
+(* $Id: int32.mli,v 1.16.6.1 2005/04/11 16:51:42 doligez Exp $ *)
 
 (** 32-bit integers.
 
@@ -48,14 +48,13 @@ external mul : int32 -> int32 -> int32 = "%int32_mul"
 (** Multiplication. *)
 
 external div : int32 -> int32 -> int32 = "%int32_div"
-(** Integer division.  Raise [Division_by_zero] if the second 
+(** Integer division.  Raise [Division_by_zero] if the second
    argument is zero.  This division rounds the real quotient of
    its arguments towards zero, as specified for {!Pervasives.(/)}. *)
 
 external rem : int32 -> int32 -> int32 = "%int32_mod"
 (** Integer remainder.  If [y] is not zero, the result
-   of [Int32.rem x y] satisfies the following properties:
-   [Int32.zero <= Int32.rem x y < Int32.abs y] and
+   of [Int32.rem x y] satisfies the following property:
    [x = Int32.add (Int32.mul (Int32.div x y) y) (Int32.rem x y)].
    If [y = 0], [Int32.rem x y] raises [Division_by_zero]. *)
 
@@ -104,7 +103,8 @@ external shift_right_logical : int32 -> int -> int32 = "%int32_lsr"
    The result is unspecified if [y < 0] or [y >= 32]. *)
 
 external of_int : int -> int32 = "%int32_of_int"
-(** Convert the given integer (type [int]) to a 32-bit integer (type [int32]). *)
+(** Convert the given integer (type [int]) to a 32-bit integer
+    (type [int32]). *)
 
 external to_int : int32 -> int = "%int32_to_int"
 (** Convert the given 32-bit integer (type [int32]) to an
index 3f8a9fc597205cbc4729b719e64bd5ed13ce873b..495f088771c9d45c467a3690de9cdf072fbb63b8 100644 (file)
@@ -11,7 +11,7 @@
 (*                                                                     *)
 (***********************************************************************)
 
-(* $Id: int64.mli,v 1.17 2004/01/01 16:42:40 doligez Exp $ *)
+(* $Id: int64.mli,v 1.17.6.1 2005/04/11 16:51:42 doligez Exp $ *)
 
 (** 64-bit integers.
 
    signed 64-bit integers.  Unlike the built-in [int] type,
    the type [int64] is guaranteed to be exactly 64-bit wide on all
    platforms.  All arithmetic operations over [int64] are taken
-   modulo 2{^64} 
+   modulo 2{^64}
 
    Performance notice: values of type [int64] occupy more memory
    space than values of type [int], and arithmetic operations on
    [int64] are generally slower than those on [int].  Use [int64]
-   only when the application requires exact 64-bit arithmetic. 
+   only when the application requires exact 64-bit arithmetic.
 *)
 
 val zero : int64
@@ -49,14 +49,13 @@ external mul : int64 -> int64 -> int64 = "%int64_mul"
 (** Multiplication. *)
 
 external div : int64 -> int64 -> int64 = "%int64_div"
-(** Integer division.  Raise [Division_by_zero] if the second 
+(** Integer division.  Raise [Division_by_zero] if the second
    argument is zero.  This division rounds the real quotient of
    its arguments towards zero, as specified for {!Pervasives.(/)}. *)
 
 external rem : int64 -> int64 -> int64 = "%int64_mod"
 (** Integer remainder.  If [y] is not zero, the result
-   of [Int64.rem x y] satisfies the following properties:
-   [Int64.zero <= Int64.rem x y < Int64.abs y] and
+   of [Int64.rem x y] satisfies the following property:
    [x = Int64.add (Int64.mul (Int64.div x y) y) (Int64.rem x y)].
    If [y = 0], [Int64.rem x y] raises [Division_by_zero]. *)
 
@@ -104,7 +103,8 @@ external shift_right_logical : int64 -> int -> int64 = "%int64_lsr"
    The result is unspecified if [y < 0] or [y >= 64]. *)
 
 external of_int : int -> int64 = "%int64_of_int"
-(** Convert the given integer (type [int]) to a 64-bit integer (type [int64]). *)
+(** Convert the given integer (type [int]) to a 64-bit integer
+    (type [int64]). *)
 
 external to_int : int64 -> int = "%int64_to_int"
 (** Convert the given 64-bit integer (type [int64]) to an
index 5cb6f28f6a68b3d3194bd47ef59c13aab91c5cfd..54e028df7f27d77f13feba035b8bf8a3be1cf58f 100644 (file)
@@ -11,7 +11,7 @@
 (*                                                                     *)
 (***********************************************************************)
 
-(* $Id: list.mli,v 1.44 2003/11/21 16:06:08 xleroy Exp $ *)
+(* $Id: list.mli,v 1.44.10.1 2005/06/22 13:20:30 doligez Exp $ *)
 
 (** List operations.
 
@@ -109,8 +109,8 @@ val map2 : ('a -> 'b -> 'c) -> 'a list -> 'b list -> 'c list
    different lengths.  Not tail-recursive. *)
 
 val rev_map2 : ('a -> 'b -> 'c) -> 'a list -> 'b list -> 'c list
-(** [List.rev_map2 f l] gives the same result as
-   {!List.rev}[ (]{!List.map2}[ f l)], but is tail-recursive and
+(** [List.rev_map2 f l1 l2] gives the same result as
+   {!List.rev}[ (]{!List.map2}[ f l1 l2)], but is tail-recursive and
    more efficient. *)
 
 val fold_left2 : ('a -> 'b -> 'c -> 'a) -> 'a -> 'b list -> 'c list -> 'a
index 76c479c0f8c81a3da530443d8448ad7a868e1d9c..d41da95c46efb7bbed997f0da50b11c89a6efaa3 100644 (file)
@@ -11,7 +11,7 @@
 (*                                                                     *)
 (***********************************************************************)
 
-(* $Id: map.ml,v 1.15 2004/04/23 10:01:33 xleroy Exp $ *)
+(* $Id: map.ml,v 1.15.4.1 2005/04/27 12:35:07 doligez Exp $ *)
 
 module type OrderedType =
   sig
@@ -161,7 +161,7 @@ module Make(Ord: OrderedType) = struct
       match m with
         Empty -> accu
       | Node(l, v, d, r, _) ->
-          fold f l (f v d (fold f r accu))
+          fold f r (f v d (fold f l accu))
 
     type 'a enumeration = End | More of key * 'a * 'a t * 'a enumeration
 
index 26de175fb34b9e70cac503efb1f749b1e74e73a9..772b88f0ee03f0154e91b7ac603307a3b9b66822 100644 (file)
 (*                                                                     *)
 (***********************************************************************)
 
-(* $Id: obj.mli,v 1.27 2004/01/01 16:42:40 doligez Exp $ *)
+(* $Id: obj.mli,v 1.27.6.1 2005/04/13 12:34:44 doligez Exp $ *)
 
 (** Operations on internal representations of values.
 
-   Not for the casual user. 
+   Not for the casual user.
 *)
 
 type t
index ad8d5800008cd23822c658d764c374095db7b364..128e83c062e0609694da7f9bdd5c99306296ae8d 100644 (file)
@@ -11,7 +11,7 @@
 (*                                                                     *)
 (***********************************************************************)
 
-(* $Id: sys.ml,v 1.101.2.22 2005/03/16 12:05:33 doligez Exp $ *)
+(* $Id: sys.ml,v 1.101.2.28 2005/08/11 15:29:25 doligez Exp $ *)
 
 (* System interface *)
 
@@ -78,4 +78,4 @@ let catch_break on =
 
 (* OCaml version string, must be in the format described in sys.mli. *)
 
-let ocaml_version = "3.08.3";;
+let ocaml_version = "3.08.4";;
index cc97a253a18c127e94159df9663255ca9a75ceb9..f52c1860bc9cd0e67d5ca575ffa832b4997f95b5 100644 (file)
@@ -11,7 +11,7 @@
 (*                                                                     *)
 (***********************************************************************)
 
-(* $Id: sys.mli,v 1.45 2004/05/04 11:51:13 basile Exp $ *)
+(* $Id: sys.mli,v 1.45.4.1 2005/07/08 15:17:39 doligez Exp $ *)
 
 (** System interface. *)
 
@@ -81,7 +81,9 @@ val max_string_length : int
 (** Maximum length of a string. *)
 
 val max_array_length : int
-(** Maximum length of an array. *)
+(** Maximum length of a normal array.  The maximum length of a float
+    array is [max_array_length/2] on 32-bit machines and
+    [max_array_length] on 64-bit machines. *)
 
 
 (** {6 Signal handling} *)
@@ -89,7 +91,7 @@ val max_array_length : int
 
 type signal_behavior =
     Signal_default
-  | Signal_ignore 
+  | Signal_ignore
   | Signal_handle of (int -> unit)
 (** What to do when receiving a signal:
    - [Signal_default]: take the default behavior
diff --git a/tools/CVS/Entries b/tools/CVS/Entries
deleted file mode 100644 (file)
index 52de2da..0000000
+++ /dev/null
@@ -1,38 +0,0 @@
-/.cvsignore/1.19/Fri Nov 15 16:16:06 2002//Tocaml3083
-/.depend/1.22.2.2/Tue Feb 22 14:33:37 2005//Tocaml3083
-/Characters/1.3/Mon Nov 29 19:04:21 1999//Tocaml3083
-/DoMake/1.5/Mon Nov 29 19:04:23 1999//Tocaml3083
-/MakeDepend/1.3/Mon Nov 29 19:04:25 1999//Tocaml3083
-/Makefile/1.59.2.1/Mon Jan 24 15:22:46 2005//Tocaml3083
-/Makefile.nt/1.24/Mon Mar 24 15:23:30 2003//Tocaml3083
-/OCamlc-custom/1.1/Sat Nov  2 18:05:21 1996//Tocaml3083
-/Time/1.2/Sat Jul  4 17:32:15 1998//Tocaml3083
-/addlabels.ml/1.10/Tue Nov 25 09:20:45 2003//Tocaml3083
-/checkstack.c/1.2/Fri Aug  9 11:10:34 2002//Tocaml3083
-/cleanup-header/1.2/Mon Mar 18 06:55:42 2002//Tocaml3083
-/cvt_emit.mll/1.4/Mon Oct  2 14:17:55 2000//Tocaml3083
-/depend.ml/1.7/Tue Nov 25 09:20:45 2003//Tocaml3083
-/depend.mli/1.2/Thu Apr 18 07:27:43 2002//Tocaml3083
-/dumpapprox.ml/1.15/Thu Mar  6 16:00:16 2003//Tocaml3083
-/dumpobj.ml/1.34/Wed May 26 11:10:52 2004//Tocaml3083
-/keywords.r/1.3/Fri Dec  7 13:41:01 2001//Tocaml3083
-/lexer299.mll/1.3/Wed Mar 10 08:56:01 2004//Tocaml3083
-/lexer301.mll/1.4/Fri Jan 16 15:24:03 2004//Tocaml3083
-/magic/1.1/Tue Nov 27 13:39:36 2001/-kk/Tocaml3083
-/make-opcodes/1.1/Thu May  4 10:14:22 1995//Tocaml3083
-/make-package-macosx/1.8.4.2/Wed Dec 22 16:08:09 2004//Tocaml3083
-/objinfo.ml/1.8/Mon Mar 27 12:18:09 2000//Tocaml3083
-/ocaml-objcopy-macosx/1.1.2.1/Tue Jan 25 13:13:52 2005//Tocaml3083
-/ocaml299to3.ml/1.6/Wed Oct  3 01:34:05 2001//Tocaml3083
-/ocamlcp.ml/1.37.6.1/Wed Mar  9 15:49:09 2005//Tocaml3083
-/ocamldep.ml/1.33.4.1/Wed Jan  5 15:20:26 2005//Tocaml3083
-/ocamlmklib.mlp/1.10.2.1/Thu Jul  8 06:45:51 2004//Tocaml3083
-/ocamlmktop.ml/1.6/Mon Mar 24 15:27:01 2003//Tocaml3083
-/ocamlmktop.tpl/1.5/Sun Feb 22 14:52:50 2004//Tocaml3083
-/ocamlprof.ml/1.37.2.1/Thu Nov 18 23:52:08 2004//Tocaml3083
-/ocamlsize/1.6/Thu Aug 21 13:52:25 2003//Tocaml3083
-/primreq.ml/1.3/Mon Mar 27 12:18:09 2000//Tocaml3083
-/profiling.ml/1.6.10.1/Thu Nov 18 23:52:08 2004//Tocaml3083
-/profiling.mli/1.5.10.1/Thu Nov 18 23:52:08 2004//Tocaml3083
-/scrapelabels.ml/1.6/Thu Oct  4 01:55:02 2001//Tocaml3083
-D
diff --git a/tools/CVS/Repository b/tools/CVS/Repository
deleted file mode 100644 (file)
index a9e21f6..0000000
+++ /dev/null
@@ -1 +0,0 @@
-csl/tools
diff --git a/tools/CVS/Root b/tools/CVS/Root
deleted file mode 100644 (file)
index c83f52f..0000000
+++ /dev/null
@@ -1 +0,0 @@
-:ext:yquem.inria.fr:/net/yquem/devel/caml/repository
diff --git a/tools/CVS/Tag b/tools/CVS/Tag
deleted file mode 100644 (file)
index deaa3ee..0000000
+++ /dev/null
@@ -1 +0,0 @@
-Nocaml3083
index 93b875254e1f6f0151b4344c6edd3767188c4b38..bdb6f20a918e1a287c08dd0423b7c84630187cbd 100755 (executable)
@@ -12,7 +12,7 @@
 #                                                                       #
 #########################################################################
 
-# $Id: make-package-macosx,v 1.8.4.2 2004/12/22 16:08:09 doligez Exp $
+# $Id: make-package-macosx,v 1.8.4.3 2005/05/04 14:05:51 doligez Exp $
 
 cd package-macosx
 rm -rf ocaml.pkg ocaml-rw.dmg
@@ -105,6 +105,12 @@ cat >resources/ReadMe.txt <<EOF
 This package installs Objective Caml version ${VERSION}.
 You need Mac OS X 10.3 (panther), with X11 and the
 XCode tools installed.
+
+Files will be installed in the following directories:
+
+/usr/local/bin - command-line executables
+/usr/local/lib/ocaml - library and support files
+/usr/local/man - manual pages
 EOF
 
 chmod -R g-w root
diff --git a/toplevel/CVS/Entries b/toplevel/CVS/Entries
deleted file mode 100644 (file)
index ab20879..0000000
+++ /dev/null
@@ -1,13 +0,0 @@
-/expunge.ml/1.16/Fri Jan 16 15:24:03 2004//Tocaml3083
-/genprintval.ml/1.37/Sun Jun 13 16:23:35 2004//Tocaml3083
-/genprintval.mli/1.10/Thu Apr 18 07:27:44 2002//Tocaml3083
-/topdirs.ml/1.62.2.1/Wed Jun 23 12:10:02 2004//Tocaml3083
-/topdirs.mli/1.12/Thu Apr 18 07:27:44 2002//Tocaml3083
-/toploop.ml/1.87/Sat Jun 12 08:55:47 2004//Tocaml3083
-/toploop.mli/1.25/Sat May 15 09:59:37 2004//Tocaml3083
-/topmain.ml/1.34/Fri Jul 25 12:18:25 2003//Tocaml3083
-/topmain.mli/1.1/Wed Apr 24 08:02:51 2002//Tocaml3083
-/topstart.ml/1.1/Wed Apr 24 08:02:51 2002//Tocaml3083
-/trace.ml/1.20/Thu Apr 19 08:34:20 2001//Tocaml3083
-/trace.mli/1.9/Mon Mar  6 22:11:55 2000//Tocaml3083
-D
diff --git a/toplevel/CVS/Repository b/toplevel/CVS/Repository
deleted file mode 100644 (file)
index ab280a7..0000000
+++ /dev/null
@@ -1 +0,0 @@
-csl/toplevel
diff --git a/toplevel/CVS/Root b/toplevel/CVS/Root
deleted file mode 100644 (file)
index c83f52f..0000000
+++ /dev/null
@@ -1 +0,0 @@
-:ext:yquem.inria.fr:/net/yquem/devel/caml/repository
diff --git a/toplevel/CVS/Tag b/toplevel/CVS/Tag
deleted file mode 100644 (file)
index deaa3ee..0000000
+++ /dev/null
@@ -1 +0,0 @@
-Nocaml3083
diff --git a/typing/CVS/Entries b/typing/CVS/Entries
deleted file mode 100644 (file)
index 528a155..0000000
+++ /dev/null
@@ -1,50 +0,0 @@
-/btype.ml/1.35/Tue Jan  6 13:41:39 2004//Tocaml3083
-/btype.mli/1.16/Tue Jan  6 13:41:39 2004//Tocaml3083
-/ctype.ml/1.179.2.2/Thu Dec  9 07:36:31 2004//Tocaml3083
-/ctype.mli/1.52.8.1/Thu Dec  9 07:36:31 2004//Tocaml3083
-/datarepr.ml/1.13/Wed Jul  2 09:14:32 2003//Tocaml3083
-/datarepr.mli/1.9/Wed Jul  2 09:14:32 2003//Tocaml3083
-/env.ml/1.54/Sat Jun 12 08:55:47 2004//Tocaml3083
-/env.mli/1.28/Tue Nov 25 09:20:42 2003//Tocaml3083
-/ident.ml/1.23/Sun Jan  4 14:32:34 2004//Tocaml3083
-/ident.mli/1.17/Sun Jan  4 14:32:34 2004//Tocaml3083
-/includeclass.ml/1.7/Mon Mar  6 22:11:57 2000//Tocaml3083
-/includeclass.mli/1.3/Mon Mar  6 22:11:58 2000//Tocaml3083
-/includecore.ml/1.29/Wed Jul  2 09:14:33 2003//Tocaml3083
-/includecore.mli/1.10/Wed Nov 17 18:58:54 1999//Tocaml3083
-/includemod.ml/1.34/Sat Jun 12 08:55:47 2004//Tocaml3083
-/includemod.mli/1.12/Mon Mar  6 22:12:00 2000//Tocaml3083
-/mtype.ml/1.25/Sat Jun 12 08:55:47 2004//Tocaml3083
-/mtype.mli/1.10/Fri Apr  9 13:32:28 2004//Tocaml3083
-/oprint.ml/1.19/Sat Jun 12 08:55:47 2004//Tocaml3083
-/oprint.mli/1.2/Thu Apr 18 07:27:45 2002//Tocaml3083
-/outcometree.mli/1.12/Sat Jun 12 08:55:48 2004//Tocaml3083
-/parmatch.ml/1.65.8.1/Wed Feb  2 06:57:53 2005//Tocaml3083
-/parmatch.mli/1.9/Mon Aug 18 08:26:18 2003//Tocaml3083
-/path.ml/1.9/Tue Jul  1 13:05:43 2003//Tocaml3083
-/path.mli/1.8/Tue Jul  1 13:05:43 2003//Tocaml3083
-/predef.ml/1.29/Sun Jan  4 14:32:34 2004//Tocaml3083
-/predef.mli/1.14/Sat Jul  5 11:13:24 2003//Tocaml3083
-/primitive.ml/1.8/Mon Aug  6 12:28:49 2001//Tocaml3083
-/primitive.mli/1.7/Mon Aug  6 12:28:49 2001//Tocaml3083
-/printtyp.ml/1.130.2.2/Thu Dec  9 09:11:01 2004//Tocaml3083
-/printtyp.mli/1.26/Sat Jun 12 08:55:48 2004//Tocaml3083
-/stypes.ml/1.8/Fri Jul 25 18:00:40 2003//Tocaml3083
-/stypes.mli/1.3/Wed Jul 23 16:52:41 2003//Tocaml3083
-/subst.ml/1.46/Sat Jun 12 08:55:48 2004//Tocaml3083
-/subst.mli/1.12/Thu Apr 18 07:27:45 2002//Tocaml3083
-/typeclass.ml/1.78/Mon May 31 02:01:59 2004//Tocaml3083
-/typeclass.mli/1.18/Mon Dec  1 00:32:11 2003//Tocaml3083
-/typecore.ml/1.160.2.1/Mon Jun 21 20:36:20 2004//Tocaml3083
-/typecore.mli/1.35/Tue Nov 25 09:20:42 2003//Tocaml3083
-/typedecl.ml/1.67.10.2/Thu Dec  9 10:15:43 2004//Tocaml3083
-/typedecl.mli/1.26/Tue Jul  1 13:05:43 2003//Tocaml3083
-/typedtree.ml/1.36/Tue Nov 25 09:20:43 2003//Tocaml3083
-/typedtree.mli/1.34/Tue Nov 25 09:20:43 2003//Tocaml3083
-/typemod.ml/1.69.2.1/Wed Jan 12 17:01:58 2005//Tocaml3083
-/typemod.mli/1.24/Sun Jun 13 12:48:01 2004//Tocaml3083
-/types.ml/1.24/Sat Jun 12 08:55:49 2004//Tocaml3083
-/types.mli/1.24/Sat Jun 12 08:55:49 2004//Tocaml3083
-/typetexp.ml/1.49/Mon Jun 30 08:04:42 2003//Tocaml3083
-/typetexp.mli/1.19/Mon May 19 09:21:17 2003//Tocaml3083
-D
diff --git a/typing/CVS/Repository b/typing/CVS/Repository
deleted file mode 100644 (file)
index be71e33..0000000
+++ /dev/null
@@ -1 +0,0 @@
-csl/typing
diff --git a/typing/CVS/Root b/typing/CVS/Root
deleted file mode 100644 (file)
index c83f52f..0000000
+++ /dev/null
@@ -1 +0,0 @@
-:ext:yquem.inria.fr:/net/yquem/devel/caml/repository
diff --git a/typing/CVS/Tag b/typing/CVS/Tag
deleted file mode 100644 (file)
index deaa3ee..0000000
+++ /dev/null
@@ -1 +0,0 @@
-Nocaml3083
index a029801afd0ed5f44adcbc7ad9580d1327d15718..78a4257c17008359fc45efda61d5ad40d6458a40 100644 (file)
@@ -10,7 +10,7 @@
 (*                                                                     *)
 (***********************************************************************)
 
-(* $Id: ctype.ml,v 1.179.2.2 2004/12/09 07:36:31 garrigue Exp $ *)
+(* $Id: ctype.ml,v 1.179.2.3 2005/07/11 07:49:09 garrigue Exp $ *)
 
 (* Operations on core types *)
 
@@ -1186,9 +1186,8 @@ let rec occur_rec env visited ty0 ty =
   match ty.desc with
     Tconstr(p, tl, abbrev) ->
       begin try
-        if List.memq ty visited then raise Occur;
-        if not !Clflags.recursive_types then
-          iter_type_expr (occur_rec env (ty::visited) ty0) ty
+        if List.memq ty visited || !Clflags.recursive_types then raise Occur;
+        iter_type_expr (occur_rec env (ty::visited) ty0) ty
       with Occur -> try
         let ty' = try_expand_head env ty in
         (* Maybe we could simply make a recursive call here,
@@ -1200,7 +1199,8 @@ let rec occur_rec env visited ty0 ty =
         | _ ->
             if not !Clflags.recursive_types then
               iter_type_expr (occur_rec env (ty'::visited) ty0) ty'
-      with Cannot_expand -> raise Occur
+      with Cannot_expand ->
+        if not !Clflags.recursive_types then raise Occur
       end
   | Tobject _ | Tvariant _ ->
       ()
index 5aa95fcff1db04ea76595d41b72858309325cab6..c5142c96b94460a5def12cf15d8a80e3d4f86e41 100644 (file)
@@ -10,7 +10,7 @@
 (*                                                                     *)
 (***********************************************************************)
 
-(* $Id: env.ml,v 1.54 2004/06/12 08:55:47 xleroy Exp $ *)
+(* $Id: env.ml,v 1.54.2.1 2005/07/27 15:05:05 xleroy Exp $ *)
 
 (* Environment handling *)
 
@@ -112,8 +112,8 @@ let components_of_functor_appl' =
           functor_components -> Path.t -> Path.t -> module_components)
 let check_modtype_inclusion =
   (* to be filled with Includemod.check_modtype_inclusion *)
-  ref ((fun env mty1 mty2 -> assert false) :
-          t -> module_type -> module_type -> unit)
+  ref ((fun env mty1 path1 mty2 -> assert false) :
+          t -> module_type -> Path.t -> module_type -> unit)
 
 (* Persistent structure descriptions *)
 
@@ -294,7 +294,7 @@ let rec lookup_module_descr lid env =
       let (p2, mty2) = lookup_module l2 env in
       begin match Lazy.force desc1 with
         Functor_comps f ->
-          !check_modtype_inclusion env mty2 f.fcomp_arg;
+          !check_modtype_inclusion env mty2 p2 f.fcomp_arg;
           (Papply(p1, p2), !components_of_functor_appl' f p1 p2)
       | Structure_comps c ->
           raise Not_found
@@ -324,7 +324,7 @@ and lookup_module lid env =
       let p = Papply(p1, p2) in
       begin match Lazy.force desc1 with
         Functor_comps f ->
-          !check_modtype_inclusion env mty2 f.fcomp_arg;
+          !check_modtype_inclusion env mty2 p2 f.fcomp_arg;
           (p, Subst.modtype (Subst.add_module f.fcomp_param p2 f.fcomp_subst)
                             f.fcomp_res)
       | Structure_comps c ->
index 3def241cd688f4f1aeaaeeb1735a94603cac0689..6f4c71d764e7176b03a03e0bff97229503bef900 100644 (file)
@@ -10,7 +10,7 @@
 (*                                                                     *)
 (***********************************************************************)
 
-(* $Id: env.mli,v 1.28 2003/11/25 09:20:42 garrigue Exp $ *)
+(* $Id: env.mli,v 1.28.8.1 2005/07/27 15:05:06 xleroy Exp $ *)
 
 (* Environment handling *)
 
@@ -135,5 +135,6 @@ open Format
 val report_error: formatter -> error -> unit
 
 (* Forward declaration to break mutual recursion with Includemod. *)
-val check_modtype_inclusion: (t -> module_type -> module_type -> unit) ref
+val check_modtype_inclusion:
+      (t -> module_type -> Path.t -> module_type -> unit) ref
 
index bdaaa3cdf3292dba661d404b08c92662de7bcfe4..326820cdca95250deda7d37c902189c6bddf59b8 100644 (file)
@@ -10,7 +10,7 @@
 (*                                                                     *)
 (***********************************************************************)
 
-(* $Id: includemod.ml,v 1.34 2004/06/12 08:55:47 xleroy Exp $ *)
+(* $Id: includemod.ml,v 1.34.2.1 2005/07/27 15:05:06 xleroy Exp $ *)
 
 (* Inclusion checks for the module language *)
 
@@ -283,11 +283,12 @@ and check_modtype_equiv env mty1 mty2 =
     (Tcoerce_none, Tcoerce_none) -> ()
   | (_, _) -> raise(Error [Modtype_permutation])
 
-(* Simplified inclusion check between module types *)
+(* Simplified inclusion check between module types (for Env) *)
 
-let check_modtype_inclusion env mty1 mty2 =
+let check_modtype_inclusion env mty1 path1 mty2 =
   try
-    ignore(modtypes env Subst.identity mty1 mty2)
+    ignore(modtypes env Subst.identity
+                    (Mtype.strengthen env mty1 path1) mty2)
   with Error reasons ->
     raise Not_found
 
index e494f4b7af309bd48589b406c9b3363b60e0a48d..4763cde93da2cfc5e1dc67ae3e6c93973814e766 100644 (file)
@@ -10,7 +10,7 @@
 (*                                                                     *)
 (***********************************************************************)
 
-(* $Id: printtyp.ml,v 1.130.2.2 2004/12/09 09:11:01 garrigue Exp $ *)
+(* $Id: printtyp.ml,v 1.130.2.3 2005/04/15 08:16:41 garrigue Exp $ *)
 
 (* Printing functions *)
 
@@ -129,7 +129,7 @@ and raw_type_desc ppf = function
           | Some(p,tl) ->
               fprintf ppf "(Some(@,%a,@,%a))" path p raw_type_list tl)
   | Tfield (f, k, t1, t2) ->
-      fprintf ppf "@[<hov1>Tfield(@,%s,@,%s,@,%a,@,%a)@]" f
+      fprintf ppf "@[<hov1>Tfield(@,%s,@,%s,@,%a,@;<0 -1>%a)@]" f
         (safe_kind_repr [] k)
         raw_type t1 raw_type t2
   | Tnil -> fprintf ppf "Tnil"  
@@ -213,6 +213,8 @@ let is_aliased ty = List.memq (proxy ty) !aliased
 let add_alias ty =
   let px = proxy ty in
   if not (is_aliased px) then aliased := px :: !aliased
+let aliasable ty =
+  match ty.desc with Tvar | Tunivar | Tpoly _ -> false | _ -> true
 
 let namable_row row =
   row.row_name <> None &&
@@ -227,7 +229,7 @@ let namable_row row =
 let rec mark_loops_rec visited ty =
   let ty = repr ty in
   let px = proxy ty in
-  if List.memq px visited then add_alias px else
+  if List.memq px visited && aliasable ty then add_alias px else
     let visited = px :: visited in
     match ty.desc with
     | Tvar -> ()
@@ -383,7 +385,7 @@ let rec tree_of_typexp sch ty =
         Otyp_var (false, name_of_type ty)
   in
   if List.memq px !delayed then delayed := List.filter ((!=) px) !delayed;
-  if is_aliased px && ty.desc <> Tvar && ty.desc <> Tunivar then begin
+  if is_aliased px && aliasable ty then begin
     check_name_of_type px;
     Otyp_alias (pr_typ (), name_of_type px) end
   else pr_typ ()
index 3d7d69cdce4463f4fd3c5644d556c231af5c89ba..00db5f44ef9a9951fbe314ec4fc10929f044b41b 100644 (file)
@@ -10,7 +10,7 @@
 (*                                                                     *)
 (***********************************************************************)
 
-(* $Id: typeclass.ml,v 1.78 2004/05/31 02:01:59 garrigue Exp $ *)
+(* $Id: typeclass.ml,v 1.78.2.2 2005/07/12 11:44:47 garrigue Exp $ *)
 
 open Misc
 open Parsetree
@@ -327,10 +327,11 @@ and class_signature env sty sign =
   
   (* Check that the binder is a correct type, and introduce a dummy
      method preventing self type from being closed. *)
+  let dummy_obj = Ctype.newvar () in
+  Ctype.unify env (Ctype.filter_method env dummy_method Private dummy_obj)
+    (Ctype.newty (Ttuple []));
   begin try
-    Ctype.unify env
-      (Ctype.filter_method env dummy_method Private self_type)
-      (Ctype.newty (Ttuple []))
+    Ctype.unify env self_type dummy_obj
   with Ctype.Unify _ ->
     raise(Error(sty.ptyp_loc, Pattern_type_clash self_type))
   end;
@@ -1413,9 +1414,10 @@ let report_error ppf = function
   | Pattern_type_clash ty ->
       (* XXX Trace *)
       (* XXX Revoir message d'erreur *)
-      fprintf ppf "@[This pattern cannot match self: \
-                    it only matches values of type@ %a@]"
-      Printtyp.type_expr ty
+      Printtyp.reset_and_mark_loops ty;
+      fprintf ppf "@[%s@ %a@]"
+        "This pattern cannot match self: it only matches values of type"
+        Printtyp.type_expr ty
   | Unbound_class cl ->
       fprintf ppf "Unbound class@ %a"
       Printtyp.longident cl
index 4a76e3c01dafdb298df9f75a37716994a8ced78c..f70586b5379c65f40874cd25fa57c40db5805284 100644 (file)
@@ -10,7 +10,7 @@
 (*                                                                     *)
 (***********************************************************************)
 
-(* $Id: typecore.ml,v 1.160.2.1 2004/06/21 20:36:20 weis Exp $ *)
+(* $Id: typecore.ml,v 1.160.2.2 2005/04/04 05:14:10 garrigue Exp $ *)
 
 (* Typechecking for the core language *)
 
@@ -753,14 +753,17 @@ let rec type_approx env sexp =
   | Pexp_ifthenelse (_,e,_) -> type_approx env e
   | Pexp_sequence (_,e) -> type_approx env e
   | Pexp_constraint (e, sty1, sty2) ->
+      let approx_ty_opt = function
+        | None -> newvar ()
+        | Some sty -> approx_type sty
+      in
       let ty = type_approx env e
-      and ty1 = match sty1 with None -> newvar () | Some sty -> approx_type sty
-      and ty2 = match sty2 with None -> newvar () | Some sty -> approx_type sty
-      in begin
-        try unify env ty ty1; unify env ty1 ty2; ty2
-        with Unify trace ->
-          raise(Error(sexp.pexp_loc, Expr_type_clash trace))
-      end
+      and ty1 = approx_ty_opt sty1
+      and ty2 = approx_ty_opt sty2 in
+      begin try unify env ty ty1 with Unify trace ->
+        raise(Error(sexp.pexp_loc, Expr_type_clash trace))
+      end;
+      if sty2 = None then ty1 else ty2
   | _ -> newvar ()
 
 (* List labels in a function type, and whether return type is a variable *)
index 4ca6e3a034a10071ab91896a5a1bfb351ea2b629..ed36c97e602e033ca56bfb9e7f61ad8c352a6d68 100644 (file)
@@ -10,7 +10,7 @@
 (*                                                                     *)
 (***********************************************************************)
 
-(* $Id: typedecl.ml,v 1.67.10.2 2004/12/09 10:15:43 garrigue Exp $ *)
+(* $Id: typedecl.ml,v 1.67.10.5 2005/07/11 08:07:50 garrigue Exp $ *)
 
 (**** Typing of type definitions ****)
 
@@ -35,10 +35,10 @@ type error =
   | Parameters_differ of Path.t * type_expr * type_expr
   | Null_arity_external
   | Missing_native_external
-  | Unbound_type_var
+  | Unbound_type_var of type_expr * type_declaration
   | Unbound_exception of Longident.t
   | Not_an_exception of Longident.t
-  | Bad_variance
+  | Bad_variance of int * (bool*bool) * (bool*bool)
   | Unavailable_type_constructor of Path.t
 
 exception Error of Location.t * error
@@ -394,6 +394,7 @@ let compute_variance env tvl nega posi cntr ty =
       | Tsubst ty ->
           compute_same ty
       | Tvariant row ->
+          let row = Btype.row_repr row in
           List.iter
             (fun (_,f) ->
               match Btype.row_field_repr f with
@@ -402,7 +403,8 @@ let compute_variance env tvl nega posi cntr ty =
               | Reither (_, tyl, _, _) ->
                   List.iter compute_same tyl
               | _ -> ())
-            (Btype.row_repr row).row_fields
+            row.row_fields;
+          compute_same row.row_more
       | Tpoly (ty, _) ->
           compute_same ty
       | Tvar | Tnil | Tlink _ | Tunivar -> ()
@@ -430,14 +432,14 @@ let whole_type decl =
         Some ty -> ty
       | _ -> Btype.newgenty (Ttuple [])
 
-let compute_variance_decl env sharp decl (required, loc) =
+let compute_variance_decl env check decl (required, loc) =
   if decl.type_kind = Type_abstract && decl.type_manifest = None then
     List.map (fun (c, n) -> if c || n then (c, n, n) else (true, true, true))
       required
   else
   let params = List.map Btype.repr decl.type_params in
   let tvl0 = List.map make_variance params in
-  let fvl = Ctype.free_variables (whole_type decl) in
+  let fvl = if check then Ctype.free_variables (whole_type decl) else [] in
   let fvl = List.filter (fun v -> not (List.memq v params)) fvl in
   let tvl1 = List.map make_variance fvl in
   let tvl2 = List.map make_variance fvl in
@@ -460,24 +462,31 @@ let compute_variance_decl env sharp decl (required, loc) =
          compute_variance env tvl true cn cn ty)
         ftl
   end;
+  let required =
+    List.map (fun (c,n as r) -> if c || n then r else (true,true))
+      required
+  in
   List.iter2
     (fun (ty, co, cn, ct) (c, n) ->
       if ty.desc <> Tvar then begin
-        let (c, n) = if c || n then (c, n) else (true, true) in
         co := c; cn := n; ct := n;
         compute_variance env tvl2 c n n ty
       end)
     tvl0 required;
-  if not sharp then
-    List.iter2
-      (fun (_, c1, n1, t1) (_, c2, n2, t2) ->
-        if !c1 && not !c2 || !n1 && not !n2 ||
-           !t1 && not !t2 && decl.type_kind = Type_abstract
-        then raise (Error(loc, Bad_variance)))
-      tvl1 tvl2;
+  List.iter2
+    (fun (ty, c1, n1, t1) (_, c2, n2, t2) ->
+      if !c1 && not !c2 || !n1 && not !n2
+      (* || !t1 && not !t2 && decl.type_kind = Type_abstract *)
+      then raise (Error(loc,
+                        if not (!c2 || !n2) then Unbound_type_var (ty, decl)
+                        else Bad_variance (0, (!c1,!n1), (!c2,!n2)))))
+    tvl1 tvl2;
+  let pos = ref 0 in
   List.map2
     (fun (_, co, cn, ct) (c, n) ->
-      if c && !cn || n && !co then raise (Error(loc, Bad_variance));
+      incr pos;
+      if !co && not c || !cn && not n
+      then raise (Error(loc, Bad_variance (!pos, (!co,!cn), (c,n))));
       let ct = if decl.type_kind = Type_abstract then ct else cn in
       (!co, !cn, !ct))
     tvl0 required
@@ -498,17 +507,22 @@ let rec compute_variance_fixpoint env decls required variances =
   in
   let new_variances =
     List.map2
-      (fun (id, decl) -> compute_variance_decl new_env (is_sharp id) decl)
+      (fun (id, decl) -> compute_variance_decl new_env false decl)
       new_decls required
   in
   let new_variances =
     List.map2
       (List.map2 (fun (c1,n1,t1) (c2,n2,t2) -> c1||c2, n1||n2, t1||t2))
       new_variances variances in
-  if new_variances = variances then
-    new_decls, new_env
-  else
+  if new_variances <> variances then
     compute_variance_fixpoint env decls required new_variances
+  else begin
+    List.iter2
+      (fun (id, decl) req -> if not (is_sharp id) then
+        ignore (compute_variance_decl new_env true decl req))
+      new_decls required;
+    new_decls, new_env
+  end
 
 let init_variance (id, decl) =
   List.map (fun _ -> (false, false, false)) decl.type_params
@@ -561,7 +575,7 @@ let transl_type_decl env name_sdecl_list =
   List.iter2
     (fun (_, sdecl) (id, decl) ->
        match Ctype.closed_type_decl decl with
-         Some _ -> raise(Error(sdecl.ptype_loc, Unbound_type_var))
+         Some ty -> raise(Error(sdecl.ptype_loc, Unbound_type_var(ty,decl)))
        | None   -> ())
     name_sdecl_list decls;
   (* Check re-exportation *)
@@ -646,8 +660,9 @@ let transl_with_constraint env sdecl =
       type_variance = [];
     }
   in
-  if Ctype.closed_type_decl decl <> None then
-    raise(Error(sdecl.ptype_loc, Unbound_type_var));
+  begin match Ctype.closed_type_decl decl with None -> ()
+  | Some ty -> raise(Error(sdecl.ptype_loc, Unbound_type_var(ty,decl)))
+  end;
   let decl =
     {decl with type_variance =
      compute_variance_decl env false decl
@@ -740,15 +755,70 @@ let report_error ppf = function
       fprintf ppf "@[<hv>An external function with more than 5 arguments \
                    requires second stub function@ \
                    for native-code compilation@]"
-  | Unbound_type_var ->
-      fprintf ppf "A type variable is unbound in this type declaration"
+  | Unbound_type_var (ty, decl) ->
+      fprintf ppf "A type variable is unbound in this type declaration";
+      let ty = Ctype.repr ty in
+      let explain tl typ kwd lab =
+        let ti = List.find (fun ti -> Ctype.deep_occur ty (typ ti)) tl in
+        Printtyp.reset_and_mark_loops_list [typ ti;ty];
+        fprintf ppf
+          ".@.@[<hov2>In %s@ %s%a@;<1 -2>the variable %a is unbound@]"
+          kwd (lab ti) Printtyp.type_expr (typ ti) Printtyp.type_expr ty
+      in
+      begin try match decl.type_kind, decl.type_manifest with
+        Type_variant (tl, _), _ ->
+          explain tl (fun (_,tl) -> Btype.newgenty (Ttuple tl))
+            "case" (fun (lab,_) -> lab ^ " of ")
+      | Type_record (tl, _, _), _ ->
+          explain tl (fun (_,_,t) -> t)
+            "field" (fun (lab,_,_) -> lab ^ ": ")
+      | Type_abstract, Some ty' ->
+          let trivial ty =
+            explain [ty] (fun t -> t) "definition" (fun _ -> "") in
+          begin match (Ctype.repr ty').desc with
+            Tobject(fi,_) ->
+              let (tl, rv) = Ctype.flatten_fields fi in
+              if rv == ty then trivial ty' else
+              explain tl (fun (_,_,t) -> t)
+                "method" (fun (lab,_,_) -> lab ^ ": ")
+          | Tvariant row ->
+              let row = Btype.row_repr row in
+              if row.row_more == ty then trivial ty' else
+              explain row.row_fields
+                (fun (l,f) -> match Btype.row_field_repr f with
+                  Rpresent (Some t) -> t
+                | Reither (_,[t],_,_) -> t
+                | Reither (_,tl,_,_) -> Btype.newgenty (Ttuple tl)
+                | _ -> Btype.newgenty (Ttuple[]))
+                "case" (fun (lab,_) -> "`" ^ lab ^ " of ")
+          | _ -> trivial ty'
+          end
+      | _ -> ()
+      with Not_found -> ()
+      end
   | Unbound_exception lid ->
       fprintf ppf "Unbound exception constructor@ %a" Printtyp.longident lid
   | Not_an_exception lid ->
       fprintf ppf "The constructor@ %a@ is not an exception"
         Printtyp.longident lid
-  | Bad_variance ->
-      fprintf ppf
-        "In this definition, expected parameter variances are not satisfied"
+  | Bad_variance (n, v1, v2) ->
+      let variance = function
+          (true, true)  -> "invariant"
+        | (true, false) -> "covariant"
+        | (false,true)  -> "contravariant"
+        | (false,false) -> "unrestricted"
+      in
+      if n < 1 then
+        fprintf ppf "%s@ %s@ %s"
+          "In this definition, a type variable"
+          "has a variance that is not reflected"
+          "by its occurence in type parameters."
+      else
+        fprintf ppf "%s@ %s@ %s %d%s %s %s,@ %s %s"
+          "In this definition, expected parameter"
+          "variances are not satisfied."
+          "The" n (match n with 1 -> "st" | 2 -> "nd" | 3 -> "rd" | _ -> "th")
+          "type parameter was expected to be" (variance v2)
+          "but it is" (variance v1)
   | Unavailable_type_constructor p ->
       fprintf ppf "The definition of type %a@ is unavailable" Printtyp.path p
index 143cbc24c37ce404b088ffe634a71ade90a1cf03..e473f2691edd12ed8f2a0e17d3000d79c8652fbb 100644 (file)
@@ -10,7 +10,7 @@
 (*                                                                     *)
 (***********************************************************************)
 
-(* $Id: typedecl.mli,v 1.26 2003/07/01 13:05:43 xleroy Exp $ *)
+(* $Id: typedecl.mli,v 1.26.10.2 2005/04/15 08:16:41 garrigue Exp $ *)
 
 (* Typing of type definitions and primitive definitions *)
 
@@ -58,10 +58,10 @@ type error =
   | Parameters_differ of Path.t * type_expr * type_expr
   | Null_arity_external
   | Missing_native_external
-  | Unbound_type_var
+  | Unbound_type_var of type_expr * type_declaration
   | Unbound_exception of Longident.t
   | Not_an_exception of Longident.t
-  | Bad_variance
+  | Bad_variance of int * (bool*bool) * (bool*bool)
   | Unavailable_type_constructor of Path.t
 
 exception Error of Location.t * error
diff --git a/utils/CVS/Entries b/utils/CVS/Entries
deleted file mode 100644 (file)
index b6c2650..0000000
+++ /dev/null
@@ -1,17 +0,0 @@
-/.cvsignore/1.1/Tue Aug 29 08:33:37 1995//Tocaml3083
-/ccomp.ml/1.17.2.1/Wed Feb  2 15:39:40 2005//Tocaml3083
-/ccomp.mli/1.9/Thu Apr 18 07:27:47 2002//Tocaml3083
-/clflags.ml/1.46/Thu Jul 17 08:38:28 2003//Tocaml3083
-/config.mli/1.33/Thu Jul  3 15:13:23 2003//Tocaml3083
-/config.mlp/1.196/Sat Jun 12 08:55:49 2004//Tocaml3083
-/consistbl.ml/1.2/Mon Nov 18 10:41:26 2002//Tocaml3083
-/consistbl.mli/1.2/Mon Nov 18 10:41:26 2002//Tocaml3083
-/misc.ml/1.33.2.1/Wed Jul  7 16:47:27 2004//Tocaml3083
-/misc.mli/1.24.6.1/Wed Jul  7 16:47:27 2004//Tocaml3083
-/tbl.ml/1.12/Fri Apr 21 08:13:21 2000//Tocaml3083
-/tbl.mli/1.7/Fri Apr 21 08:13:22 2000//Tocaml3083
-/terminfo.ml/1.6/Thu Jan  1 16:42:42 2004//Tocaml3083
-/terminfo.mli/1.7/Thu Jan  1 16:42:43 2004//Tocaml3083
-/warnings.ml/1.17.4.1/Tue Feb 22 14:30:32 2005//Tocaml3083
-/warnings.mli/1.13/Fri May  2 08:46:06 2003//Tocaml3083
-D
diff --git a/utils/CVS/Repository b/utils/CVS/Repository
deleted file mode 100644 (file)
index 459b4c0..0000000
+++ /dev/null
@@ -1 +0,0 @@
-csl/utils
diff --git a/utils/CVS/Root b/utils/CVS/Root
deleted file mode 100644 (file)
index c83f52f..0000000
+++ /dev/null
@@ -1 +0,0 @@
-:ext:yquem.inria.fr:/net/yquem/devel/caml/repository
diff --git a/utils/CVS/Tag b/utils/CVS/Tag
deleted file mode 100644 (file)
index deaa3ee..0000000
+++ /dev/null
@@ -1 +0,0 @@
-Nocaml3083
diff --git a/win32caml/CVS/Entries b/win32caml/CVS/Entries
deleted file mode 100644 (file)
index f730440..0000000
+++ /dev/null
@@ -1,15 +0,0 @@
-/Makefile/1.9/Thu Jun 17 07:33:44 2004//Tocaml3083
-/editbuffer.c/1.1.2.2/Tue Jul  6 15:16:04 2004//Tocaml3083
-/editbuffer.h/1.1.2.2/Tue Jul  6 15:16:04 2004//Tocaml3083
-/history.c/1.1.2.2/Tue Jul  6 15:16:04 2004//Tocaml3083
-/history.h/1.1.2.2/Tue Jul  6 15:16:04 2004//Tocaml3083
-/inria.h/1.5/Thu Jun 17 07:33:44 2004//Tocaml3083
-/inriares.h/1.3/Tue Jul 23 14:12:02 2002//Tocaml3083
-/libgraph.h/1.3/Tue Jul 23 14:12:02 2002//Tocaml3083
-/menu.c/1.7/Thu Jun 17 07:33:44 2004//Tocaml3083
-/ocaml.c/1.7.2.1/Mon Aug  9 08:51:09 2004//Tocaml3083
-/ocaml.ico/1.1/Tue Nov  6 12:36:23 2001//Tocaml3083
-/ocaml.rc/1.4/Thu Jun 17 07:33:45 2004//Tocaml3083
-/resource.h/1.1.2.1/Mon Jun 21 14:42:20 2004//Tocaml3083
-/startocaml.c/1.9.2.2/Wed Feb  2 15:41:30 2005//Tocaml3083
-D
diff --git a/win32caml/CVS/Repository b/win32caml/CVS/Repository
deleted file mode 100644 (file)
index c9744f0..0000000
+++ /dev/null
@@ -1 +0,0 @@
-csl/win32caml
diff --git a/win32caml/CVS/Root b/win32caml/CVS/Root
deleted file mode 100644 (file)
index c83f52f..0000000
+++ /dev/null
@@ -1 +0,0 @@
-:ext:yquem.inria.fr:/net/yquem/devel/caml/repository
diff --git a/win32caml/CVS/Tag b/win32caml/CVS/Tag
deleted file mode 100644 (file)
index deaa3ee..0000000
+++ /dev/null
@@ -1 +0,0 @@
-Nocaml3083
diff --git a/yacc/CVS/Entries b/yacc/CVS/Entries
deleted file mode 100644 (file)
index e03aa85..0000000
+++ /dev/null
@@ -1,17 +0,0 @@
-/.cvsignore/1.6/Fri Apr  7 16:15:34 2000//Tocaml3083
-/Makefile/1.8/Thu Aug 10 09:58:08 2000//Tocaml3083
-/Makefile.nt/1.4/Fri Jun  7 09:49:45 2002//Tocaml3083
-/closure.c/1.9/Thu Jul 12 12:54:22 2001//Tocaml3083
-/defs.h/1.22/Wed Apr 21 23:26:05 2004//Tocaml3083
-/error.c/1.13/Sat Jun 12 11:59:11 2004//Tocaml3083
-/lalr.c/1.8/Thu Jul 12 12:54:23 2001//Tocaml3083
-/lr0.c/1.8/Thu Jul 12 12:54:23 2001//Tocaml3083
-/main.c/1.18/Wed Apr 21 23:26:05 2004//Tocaml3083
-/mkpar.c/1.11/Thu Jul 12 12:54:23 2001//Tocaml3083
-/output.c/1.14/Sat Nov  2 22:36:46 2002//Tocaml3083
-/reader.c/1.28.2.1/Fri Aug 20 15:26:02 2004//Tocaml3083
-/skeleton.c/1.12/Sat Nov  2 22:36:46 2002//Tocaml3083
-/symtab.c/1.8/Thu Jul 12 12:54:23 2001//Tocaml3083
-/verbose.c/1.9/Thu Jul 12 12:54:23 2001//Tocaml3083
-/warshall.c/1.8/Thu Jul 12 12:54:23 2001//Tocaml3083
-D
diff --git a/yacc/CVS/Repository b/yacc/CVS/Repository
deleted file mode 100644 (file)
index 29560fb..0000000
+++ /dev/null
@@ -1 +0,0 @@
-csl/yacc
diff --git a/yacc/CVS/Root b/yacc/CVS/Root
deleted file mode 100644 (file)
index c83f52f..0000000
+++ /dev/null
@@ -1 +0,0 @@
-:ext:yquem.inria.fr:/net/yquem/devel/caml/repository
diff --git a/yacc/CVS/Tag b/yacc/CVS/Tag
deleted file mode 100644 (file)
index deaa3ee..0000000
+++ /dev/null
@@ -1 +0,0 @@
-Nocaml3083
index 8cfd663b545b457c4677bc63bb60525dfb2e867c..a7c4ab59d55920a5b14012f3ecfcd197aafe9421 100644 (file)
@@ -12,7 +12,7 @@
 
 /* Based on public-domain code from Berkeley Yacc */
 
-/* $Id: reader.c,v 1.28.2.1 2004/08/20 15:26:02 doligez Exp $ */
+/* $Id: reader.c,v 1.28.2.2 2005/06/21 12:28:35 doligez Exp $ */
 
 #include <string.h>
 #include "defs.h"
@@ -1282,11 +1282,13 @@ void copy_action(void)
       if (item->class == TERM && !item->tag) continue;
       fprintf(f, "    let _%d = ", i);
       if (item->tag)
-        fprintf(f, "(peek_val parser_env %d : %s) in\n", n - i, item->tag);
+        fprintf(f, "(Parsing.peek_val parser_env %d : %s) in\n", n - i,
+                item->tag);
       else if (sflag)
-        fprintf(f, "peek_val parser_env %d in\n", n - i);
+        fprintf(f, "Parsing.peek_val parser_env %d in\n", n - i);
       else
-        fprintf(f, "(peek_val parser_env %d : '%s) in\n", n - i, item->name);
+        fprintf(f, "(Parsing.peek_val parser_env %d : '%s) in\n", n - i,
+                item->name);
     }
     fprintf(f, "    Obj.repr(\n");
     fprintf(f, line_format, lineno, input_file_name);
@@ -1762,7 +1764,7 @@ void make_goal(void)
       if (is_polymorphic(bp->tag))
         polymorphic_entry_point(bp->name);
       fprintf(entry_file,
-              "let %s (lexfun : Lexing.lexbuf -> token) (lexbuf : Lexing.lexbuf) =\n   (yyparse yytables %d lexfun lexbuf : %s)\n",
+              "let %s (lexfun : Lexing.lexbuf -> token) (lexbuf : Lexing.lexbuf) =\n   (Parsing.yyparse yytables %d lexfun lexbuf : %s)\n",
               bp->name, bp->entry, bp->tag);
       fprintf(interface_file,
               "val %s :\n  (Lexing.lexbuf  -> token) -> Lexing.lexbuf -> %s\n",
@@ -1772,11 +1774,11 @@ void make_goal(void)
               "(* Entry %s *)\n", bp->name);
       if (sflag)
         fprintf(action_file,
-                "yyact.(%d) <- (fun parser_env -> raise (YYexit (peek_val parser_env 0)))\n",
+                "yyact.(%d) <- (fun parser_env -> raise (Parsing.YYexit (Parsing.peek_val parser_env 0)))\n",
                 ntotalrules);
       else
         fprintf(action_file,
-              "; (fun parser_env -> raise (YYexit (peek_val parser_env 0)))\n");
+              "; (fun parser_env -> raise (Parsing.YYexit (Parsing.peek_val parser_env 0)))\n");
       ntotalrules++;
       last_was_action = 1;
       end_rule();
index e1a1e4e4e192f64313f9b8f5cddd4a311d1028e5..bed7ad1b84430e7132b692a9244e6c64f461e5e1 100644 (file)
@@ -12,7 +12,7 @@
 
 /* Based on public-domain code from Berkeley Yacc */
 
-/* $Id: skeleton.c,v 1.12 2002/11/02 22:36:46 doligez Exp $ */
+/* $Id: skeleton.c,v 1.12.6.1 2005/06/21 12:28:36 doligez Exp $ */
 
 #include "defs.h"
 
@@ -25,22 +25,22 @@ char *header[] =
 char *define_tables[] =
 {
   "let yytables =",
-  "  { actions=yyact;",
-  "    transl_const=yytransl_const;",
-  "    transl_block=yytransl_block;",
-  "    lhs=yylhs;",
-  "    len=yylen;",
-  "    defred=yydefred;",
-  "    dgoto=yydgoto;",
-  "    sindex=yysindex;",
-  "    rindex=yyrindex;",
-  "    gindex=yygindex;",
-  "    tablesize=yytablesize;",
-  "    table=yytable;",
-  "    check=yycheck;",
-  "    error_function=parse_error;",
-  "    names_const=yynames_const;",
-  "    names_block=yynames_block }",
+  "  { Parsing.actions=yyact;",
+  "    Parsing.transl_const=yytransl_const;",
+  "    Parsing.transl_block=yytransl_block;",
+  "    Parsing.lhs=yylhs;",
+  "    Parsing.len=yylen;",
+  "    Parsing.defred=yydefred;",
+  "    Parsing.dgoto=yydgoto;",
+  "    Parsing.sindex=yysindex;",
+  "    Parsing.rindex=yyrindex;",
+  "    Parsing.gindex=yygindex;",
+  "    Parsing.tablesize=yytablesize;",
+  "    Parsing.table=yytable;",
+  "    Parsing.check=yycheck;",
+  "    Parsing.error_function=parse_error;",
+  "    Parsing.names_const=yynames_const;",
+  "    Parsing.names_block=yynames_block }",
   0
 };