Permalink
Browse files

merge changes from 3.12.0 to 3.12.1

git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@11123 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
  • Loading branch information...
1 parent fc695db commit a45ed2c68dc33318387e58b13e7fdea9af430193 doligez committed Jul 20, 2011
Showing with 1,860 additions and 1,859 deletions.
  1. +20 −16 .depend
  2. +98 −0 Changes
  3. +0 −4 INSTALL
  4. +3 −2 LICENSE
  5. +1 −1 README
  6. +9 −3 README.win32
  7. +1 −1 VERSION
  8. +9 −6 asmcomp/amd64/emit.mlp
  9. +10 −7 asmcomp/amd64/emit_nt.mlp
  10. +1 −1 asmcomp/asmlink.ml
  11. +1 −1 asmcomp/closure.ml
  12. +26 −24 asmcomp/cmmgen.ml
  13. +1 −1 asmcomp/comballoc.ml
  14. +1 −1 asmcomp/i386/emit_nt.mlp
  15. +14 −0 asmcomp/selectgen.ml
  16. +32 −32 asmrun/amd64.S
  17. +32 −32 asmrun/amd64nt.asm
  18. BIN boot/ocamlc
  19. BIN boot/ocamldep
  20. BIN boot/ocamllex
  21. +1 −1 build/boot.sh
  22. +2 −1 build/camlp4-bootstrap-recipe.txt
  23. +1 −2 build/camlp4-byte-only.sh
  24. +1 −2 build/camlp4-native-only.sh
  25. +5 −2 build/fastworld.sh
  26. +2 −0 build/install.sh
  27. +1 −2 build/ocamlbuild-byte-only.sh
  28. +1 −2 build/ocamlbuild-native-only.sh
  29. +1 −2 build/ocamlbuildlib-native-only.sh
  30. +1 −2 build/otherlibs-targets.sh
  31. +2 −1 build/targets.sh
  32. +1 −2 build/world.sh
  33. +4 −6 bytecomp/bytegen.ml
  34. +20 −20 bytecomp/bytelink.ml
  35. +22 −10 bytecomp/bytepackager.ml
  36. +6 −6 bytecomp/lambda.ml
  37. +1 −1 bytecomp/lambda.mli
  38. +1 −1 bytecomp/printlambda.ml
  39. +89 −7 bytecomp/simplif.ml
  40. +8 −1 bytecomp/simplif.mli
  41. +5 −5 bytecomp/translclass.ml
  42. +10 −10 bytecomp/translcore.ml
  43. +46 −17 byterun/compare.c
  44. +2 −0 byterun/custom.h
  45. +13 −0 byterun/fail.c
  46. +6 −1 byterun/gc_ctrl.c
  47. +1 −1 byterun/ints.c
  48. +1 −1 byterun/major_gc.h
  49. +1 −1 byterun/stacks.c
  50. +1 −1 byterun/startup.c
  51. +5 −3 byterun/sys.c
  52. +2 −0 camlp4/Camlp4/Camlp4Ast.partial.ml
  53. +18 −16 camlp4/Camlp4/Printers/OCaml.ml
  54. +1 −0 camlp4/Camlp4/Printers/OCaml.mli
  55. +2 −1 camlp4/Camlp4/Printers/OCamlr.ml
  56. +2 −0 camlp4/Camlp4/Register.ml
  57. +2 −0 camlp4/Camlp4/Register.mli
  58. +2 −0 camlp4/Camlp4/Struct/Camlp4Ast2OCamlAst.ml
  59. +2 −0 camlp4/Camlp4/Struct/Grammar/Structure.ml
  60. +23 −77 camlp4/Camlp4/Struct/Grammar/Tools.ml
  61. +16 −4 camlp4/Camlp4/Struct/Lexer.mll
  62. +2 −2 camlp4/Camlp4Bin.ml
  63. +1 −1 camlp4/Camlp4Parsers/Camlp4ListComprehension.ml
  64. +12 −0 camlp4/Camlp4Parsers/Camlp4MacroParser.ml
  65. +55 −3 camlp4/Camlp4Parsers/Camlp4OCamlParser.ml
  66. +20 −19 camlp4/Camlp4Parsers/Camlp4OCamlRevisedParser.ml
  67. +1 −1 camlp4/Camlp4Parsers/Camlp4QuotationCommon.ml
  68. +27 −3 camlp4/Camlp4Top/Rprint.ml
  69. +135 −530 camlp4/boot/Camlp4.ml
  70. +21 −0 camlp4/boot/Camlp4Ast.ml
  71. +158 −51 camlp4/boot/camlp4boot.ml
  72. +1 −1 camlp4/mkcamlp4.ml
  73. +26 −0 config/auto-aux/expm1.c
  74. +8 −3 configure
  75. +4 −4 debugger/command_line.ml
  76. +5 −1 emacs/Makefile
  77. +3 −0 emacs/caml-emacs.el
  78. +1 −1 emacs/caml-font.el
  79. +25 −24 emacs/caml-types.el
  80. +4 −0 emacs/caml-xemacs.el
  81. +7 −4 emacs/caml.el
  82. +10 −10 emacs/camldebug.el
  83. +5 −5 emacs/inf-caml.el
  84. +2 −2 lex/output.ml
  85. +29 −29 lex/outputbis.ml
  86. +6 −0 man/ocamldep.m
  87. +1 −0 myocamlbuild.ml
  88. +6 −4 ocamlbuild/display.ml
  89. +2 −1 ocamlbuild/main.ml
  90. +1 −1 ocamlbuild/ocaml_compiler.ml
  91. +20 −5 ocamlbuild/ocaml_specific.ml
  92. +1 −1 ocamlbuild/ocaml_tools.ml
  93. +0 −1 ocamlbuild/ocamlbuild_pack.mlpack
  94. +8 −3 ocamlbuild/options.ml
  95. +2 −1 ocamlbuild/plugin.ml
  96. +4 −2 ocamlbuild/signatures.mli
  97. +0 −94 ocamlbuild/std_signatures.mli
  98. +2 −3 ocamldoc/Makefile
  99. +34 −3 ocamldoc/odoc_args.ml
  100. +18 −9 ocamldoc/odoc_html.ml
  101. +67 −67 ocamldoc/odoc_latex_style.ml
  102. +15 −1 ocamldoc/odoc_merge.ml
  103. +10 −3 ocamldoc/odoc_messages.ml
  104. +2 −0 ocamldoc/odoc_types.ml
  105. +1 −0 ocamldoc/odoc_types.mli
  106. +1 −1 otherlibs/bigarray/.depend
  107. +5 −0 otherlibs/bigarray/bigarray_stubs.c
  108. +2 −1 otherlibs/bigarray/mmap_unix.c
  109. +2 −2 otherlibs/bigarray/mmap_win32.c
  110. +0 −2 otherlibs/db/.depend
  111. +1 −1 otherlibs/labltk/browser/shell.ml
  112. +3 −1 otherlibs/num/big_int.ml
  113. +5 −0 otherlibs/systhreads/st_stubs.c
  114. +12 −2 otherlibs/systhreads/thread.ml
  115. +2 −1 otherlibs/unix/.depend
  116. +1 −0 otherlibs/unix/lseek.c
  117. +1 −0 otherlibs/win32unix/channels.c
  118. +14 −3 otherlibs/win32unix/close.c
  119. +1 −1 parsing/parser.mly
  120. +6 −2 stdlib/arg.ml
  121. +11 −7 stdlib/arg.mli
  122. +2 −0 stdlib/filename.mli
  123. +2 −2 stdlib/format.mli
  124. +2 −0 stdlib/parsing.ml
  125. +10 −5 stdlib/pervasives.mli
  126. +10 −4 stdlib/printf.ml
  127. +4 −2 stdlib/printf.mli
  128. +1 −1 stdlib/string.ml
  129. +1 −1 stdlib/sys.mli
  130. +0 −2 test/.cvsignore
  131. +0 −28 test/.depend
  132. +0 −408 test/test_bng.c
  133. +6 −1 testlabl/sigsubst.ml
  134. +1 −1 testsuite/interactive/lib-gc/alloc.ml
  135. +1 −1 testsuite/lib/testing.ml
  136. +1 −1 testsuite/lib/testing.mli
  137. +1 −1 testsuite/makefiles/Makefile.several
  138. +1 −1 testsuite/tests/asmcomp/alpha.S
  139. +1 −1 testsuite/tests/asmcomp/amd64.S
  140. +1 −1 testsuite/tests/asmcomp/arith.cmm
  141. +1 −1 testsuite/tests/asmcomp/arm.S
  142. +1 −1 testsuite/tests/asmcomp/checkbound.cmm
  143. +1 −1 testsuite/tests/asmcomp/fib.cmm
  144. +1 −1 testsuite/tests/asmcomp/hppa.S
  145. +1 −1 testsuite/tests/asmcomp/i386.S
  146. +1 −1 testsuite/tests/asmcomp/i386nt.asm
  147. +1 −1 testsuite/tests/asmcomp/ia64.S
  148. +1 −1 testsuite/tests/asmcomp/integr.cmm
  149. +1 −1 testsuite/tests/asmcomp/lexcmm.mli
  150. +1 −1 testsuite/tests/asmcomp/lexcmm.mll
  151. +1 −1 testsuite/tests/asmcomp/m68k.S
  152. +1 −1 testsuite/tests/asmcomp/main.c
  153. +1 −1 testsuite/tests/asmcomp/main.ml
  154. +1 −1 testsuite/tests/asmcomp/mainarith.c
  155. +1 −1 testsuite/tests/asmcomp/mips.s
  156. +1 −1 testsuite/tests/asmcomp/parsecmm.mly
  157. +1 −1 testsuite/tests/asmcomp/parsecmmaux.ml
  158. +1 −1 testsuite/tests/asmcomp/parsecmmaux.mli
  159. +1 −1 testsuite/tests/asmcomp/power-aix.S
  160. +1 −1 testsuite/tests/asmcomp/power-elf.S
  161. +1 −1 testsuite/tests/asmcomp/power-rhapsody.S
  162. +1 −1 testsuite/tests/asmcomp/quicksort.cmm
  163. +1 −1 testsuite/tests/asmcomp/quicksort2.cmm
  164. +1 −1 testsuite/tests/asmcomp/soli.cmm
  165. +1 −1 testsuite/tests/asmcomp/sparc.S
  166. +1 −1 testsuite/tests/asmcomp/tagged-fib.cmm
  167. +1 −1 testsuite/tests/asmcomp/tagged-integr.cmm
  168. +1 −1 testsuite/tests/asmcomp/tagged-quicksort.cmm
  169. +1 −1 testsuite/tests/asmcomp/tagged-tak.cmm
  170. +1 −1 testsuite/tests/asmcomp/tak.cmm
  171. +1 −1 testsuite/tests/basic-more/tformat.ml
  172. +1 −1 testsuite/tests/basic-private/length.ml
  173. +1 −1 testsuite/tests/basic-private/length.mli
  174. +1 −1 testsuite/tests/basic-private/tlength.ml
  175. +1 −1 testsuite/tests/basic/maps.ml
  176. +1 −1 testsuite/tests/basic/sets.ml
  177. +10 −0 testsuite/tests/embedded/.svnignore
  178. +10 −0 testsuite/tests/gc-roots/.svnignore
  179. +1 −1 testsuite/tests/lib-bigarray/fftba.ml
  180. +13 −0 testsuite/tests/lib-bigarray/pr5115.ml
  181. +2 −0 testsuite/tests/lib-bigarray/pr5115.reference
  182. +10 −0 testsuite/tests/lib-digest/.svnignore
  183. +10 −0 testsuite/tests/lib-dynlink-bytecode/.svnignore
  184. +10 −0 testsuite/tests/lib-dynlink-native/.svnignore
  185. +1 −1 testsuite/tests/lib-scanf/tscanf.ml
  186. +1 −1 testsuite/tests/misc-kb/equations.ml
  187. +1 −1 testsuite/tests/misc-kb/equations.mli
  188. +1 −1 testsuite/tests/misc-kb/kb.ml
  189. +1 −1 testsuite/tests/misc-kb/kb.mli
  190. +1 −1 testsuite/tests/misc-kb/kbmain.ml
  191. +1 −1 testsuite/tests/misc-kb/orderings.ml
  192. +1 −1 testsuite/tests/misc-kb/orderings.mli
  193. +1 −1 testsuite/tests/misc-kb/terms.ml
  194. +1 −1 testsuite/tests/misc-kb/terms.mli
  195. +1 −1 testsuite/tests/misc-unsafe/fft.ml
  196. +1 −1 testsuite/tests/misc-unsafe/quicksort.ml
  197. +1 −1 testsuite/tests/misc-unsafe/soli.ml
  198. +1 −1 testsuite/tests/misc/bdd.ml
  199. +1 −1 testsuite/tests/misc/boyer.ml
  200. +1 −1 testsuite/tests/misc/fib.ml
  201. +1 −1 testsuite/tests/misc/hamming.ml
  202. +1 −1 testsuite/tests/misc/nucleic.ml
  203. +1 −1 testsuite/tests/misc/sieve.ml
  204. +1 −1 testsuite/tests/misc/sorts.ml
  205. +1 −1 testsuite/tests/misc/takc.ml
  206. +1 −1 testsuite/tests/misc/taku.ml
  207. +1 −1 testsuite/tests/misc/weaktest.ml
  208. +5 −0 testsuite/tests/regression-camlp4-class-type-plus/Makefile
  209. +9 −0 testsuite/tests/regression-camlp4-class-type-plus/camlp4_class_type_plus_ok.ml
  210. +5 −0 testsuite/tests/regression-pr5080-notes/Makefile
  211. +4 −0 testsuite/tests/regression-pr5080-notes/pr5080_notes_ok.ml
  212. +12 −0 testsuite/tests/tool-lexyacc/.svnignore
  213. +1 −1 testsuite/tests/tool-lexyacc/gram_aux.ml
  214. +1 −1 testsuite/tests/tool-lexyacc/grammar.mly
  215. +1 −1 testsuite/tests/tool-lexyacc/input
  216. +1 −1 testsuite/tests/tool-lexyacc/lexgen.ml
  217. +1 −1 testsuite/tests/tool-lexyacc/main.ml
  218. +1 −1 testsuite/tests/tool-lexyacc/output.ml
  219. +1 −1 testsuite/tests/tool-lexyacc/scan_aux.ml
  220. +1 −1 testsuite/tests/tool-lexyacc/scanner.mll
  221. +1 −1 testsuite/tests/tool-lexyacc/syntax.ml
  222. +2 −2 testsuite/tests/tool-ocaml/lib.ml
  223. +2 −2 testsuite/tests/tool-ocaml/t301-object.ml
  224. +1 −1 testsuite/tests/tool-ocamldoc/odoc_test.ml
  225. +10 −0 testsuite/tests/typing-fstclassmod/.svnignore
  226. +10 −0 testsuite/tests/typing-labels/.svnignore
  227. +1 −1 testsuite/tests/typing-labels/mixin.ml
  228. +1 −1 testsuite/tests/typing-labels/mixin2.ml
  229. +1 −1 testsuite/tests/typing-labels/mixin3.ml
  230. +2 −0 testsuite/tests/typing-modules-bugs/Makefile
  231. +9 −0 testsuite/tests/typing-modules-bugs/pr5164_ok.ml
  232. +3 −0 testsuite/tests/typing-modules/Makefile
  233. +5 −0 testsuite/tests/typing-modules/Test.ml
  234. +6 −0 testsuite/tests/typing-modules/Test.ml.reference
  235. +10 −0 testsuite/tests/typing-objects-bugs/pr5156_ok.ml
  236. +10 −0 testsuite/tests/typing-objects/.svnignore
  237. +10 −0 testsuite/tests/typing-poly/.svnignore
  238. +1 −1 testsuite/tests/typing-poly/poly.ml
  239. +10 −0 testsuite/tests/typing-private/.svnignore
  240. +10 −0 testsuite/tests/typing-typeparam/.svnignore
  241. +1 −6 tools/Makefile.shared
  242. +38 −9 tools/ocamldep.ml
  243. +31 −31 tools/ocamlmklib.mlp
  244. +19 −0 typing/ctype.ml
  245. +1 −0 typing/ctype.mli
  246. +1 −1 typing/env.ml
  247. +1 −1 typing/oprint.ml
  248. +2 −2 typing/printtyp.ml
  249. +4 −2 typing/typeclass.ml
  250. +6 −2 typing/typedecl.ml
  251. +1 −1 typing/typedecl.mli
  252. +17 −6 typing/typemod.ml
  253. +1 −1 typing/unused_var.ml
View
36 .depend
@@ -317,13 +317,13 @@ bytecomp/translobj.cmi: bytecomp/lambda.cmi typing/ident.cmi typing/env.cmi
bytecomp/typeopt.cmi: typing/typedtree.cmi typing/path.cmi \
bytecomp/lambda.cmi
bytecomp/bytegen.cmo: typing/types.cmi bytecomp/switch.cmi typing/subst.cmi \
- typing/stypes.cmi typing/primitive.cmi utils/misc.cmi bytecomp/lambda.cmi \
+ typing/primitive.cmi utils/misc.cmi bytecomp/lambda.cmi \
bytecomp/instruct.cmi typing/ident.cmi utils/config.cmi \
- parsing/asttypes.cmi typing/annot.cmi bytecomp/bytegen.cmi
+ parsing/asttypes.cmi bytecomp/bytegen.cmi
bytecomp/bytegen.cmx: typing/types.cmx bytecomp/switch.cmx typing/subst.cmx \
- typing/stypes.cmx typing/primitive.cmx utils/misc.cmx bytecomp/lambda.cmx \
+ typing/primitive.cmx utils/misc.cmx bytecomp/lambda.cmx \
bytecomp/instruct.cmx typing/ident.cmx utils/config.cmx \
- parsing/asttypes.cmi typing/annot.cmi bytecomp/bytegen.cmi
+ parsing/asttypes.cmi bytecomp/bytegen.cmi
bytecomp/bytelibrarian.cmo: utils/misc.cmi utils/config.cmi \
bytecomp/cmo_format.cmi utils/clflags.cmi bytecomp/bytelink.cmi \
bytecomp/bytelibrarian.cmi
@@ -406,10 +406,12 @@ bytecomp/printlambda.cmx: typing/types.cmx typing/primitive.cmx \
parsing/asttypes.cmi bytecomp/printlambda.cmi
bytecomp/runtimedef.cmo: bytecomp/runtimedef.cmi
bytecomp/runtimedef.cmx: bytecomp/runtimedef.cmi
-bytecomp/simplif.cmo: bytecomp/lambda.cmi typing/ident.cmi utils/clflags.cmi \
- parsing/asttypes.cmi bytecomp/simplif.cmi
-bytecomp/simplif.cmx: bytecomp/lambda.cmx typing/ident.cmx utils/clflags.cmx \
- parsing/asttypes.cmi bytecomp/simplif.cmi
+bytecomp/simplif.cmo: typing/stypes.cmi bytecomp/lambda.cmi typing/ident.cmi \
+ utils/clflags.cmi parsing/asttypes.cmi typing/annot.cmi \
+ bytecomp/simplif.cmi
+bytecomp/simplif.cmx: typing/stypes.cmx bytecomp/lambda.cmx typing/ident.cmx \
+ utils/clflags.cmx parsing/asttypes.cmi typing/annot.cmi \
+ bytecomp/simplif.cmi
bytecomp/switch.cmo: bytecomp/switch.cmi
bytecomp/switch.cmx: bytecomp/switch.cmi
bytecomp/symtable.cmo: utils/tbl.cmi bytecomp/runtimedef.cmi \
@@ -601,9 +603,9 @@ asmcomp/codegen.cmx: asmcomp/split.cmx asmcomp/spill.cmx asmcomp/reload.cmx \
asmcomp/coloring.cmo: asmcomp/reg.cmi asmcomp/proc.cmi asmcomp/coloring.cmi
asmcomp/coloring.cmx: asmcomp/reg.cmx asmcomp/proc.cmx asmcomp/coloring.cmi
asmcomp/comballoc.cmo: asmcomp/reg.cmi asmcomp/mach.cmi utils/config.cmi \
- asmcomp/comballoc.cmi
+ asmcomp/arch.cmo asmcomp/comballoc.cmi
asmcomp/comballoc.cmx: asmcomp/reg.cmx asmcomp/mach.cmx utils/config.cmx \
- asmcomp/comballoc.cmi
+ asmcomp/arch.cmx asmcomp/comballoc.cmi
asmcomp/compilenv.cmo: utils/misc.cmi typing/ident.cmi typing/env.cmi \
utils/config.cmi asmcomp/cmx_format.cmi asmcomp/clambda.cmi \
asmcomp/compilenv.cmi
@@ -684,12 +686,14 @@ asmcomp/schedgen.cmx: asmcomp/reg.cmx utils/misc.cmx asmcomp/mach.cmx \
asmcomp/schedgen.cmi
asmcomp/scheduling.cmo: asmcomp/schedgen.cmi asmcomp/scheduling.cmi
asmcomp/scheduling.cmx: asmcomp/schedgen.cmx asmcomp/scheduling.cmi
-asmcomp/selectgen.cmo: utils/tbl.cmi asmcomp/reg.cmi asmcomp/proc.cmi \
- utils/misc.cmi asmcomp/mach.cmi typing/ident.cmi asmcomp/debuginfo.cmi \
- asmcomp/cmm.cmi asmcomp/arch.cmo asmcomp/selectgen.cmi
-asmcomp/selectgen.cmx: utils/tbl.cmx asmcomp/reg.cmx asmcomp/proc.cmx \
- utils/misc.cmx asmcomp/mach.cmx typing/ident.cmx asmcomp/debuginfo.cmx \
- asmcomp/cmm.cmx asmcomp/arch.cmx asmcomp/selectgen.cmi
+asmcomp/selectgen.cmo: utils/tbl.cmi bytecomp/simplif.cmi asmcomp/reg.cmi \
+ asmcomp/proc.cmi utils/misc.cmi asmcomp/mach.cmi typing/ident.cmi \
+ asmcomp/debuginfo.cmi asmcomp/cmm.cmi asmcomp/arch.cmo \
+ asmcomp/selectgen.cmi
+asmcomp/selectgen.cmx: utils/tbl.cmx bytecomp/simplif.cmx asmcomp/reg.cmx \
+ asmcomp/proc.cmx utils/misc.cmx asmcomp/mach.cmx typing/ident.cmx \
+ asmcomp/debuginfo.cmx asmcomp/cmm.cmx asmcomp/arch.cmx \
+ asmcomp/selectgen.cmi
asmcomp/selection.cmo: asmcomp/selectgen.cmi asmcomp/reg.cmi asmcomp/proc.cmi \
utils/misc.cmi asmcomp/mach.cmi asmcomp/debuginfo.cmi asmcomp/cmm.cmi \
utils/clflags.cmi asmcomp/arch.cmo asmcomp/selection.cmi
View
98 Changes
@@ -22,6 +22,104 @@ Standard library:
Bug Fixes:
+Objective Caml 3.12.1:
+----------------------
+
+Bug fixes:
+- PR#4345, PR#4767: problems with camlp4 printing of float values
+- PR#4380: ocamlbuild should not use tput on windows
+- PR#4487, PR#5164: multiple 'module type of' are incompatible
+- PR#4552: ocamlbuild does not create symlinks when using '.itarget' file
+- PR#4673, PR#5144: camlp4 fails on object copy syntax
+- PR#4702: system threads: cleanup tick thread at exit
+- PR#4732: camlp4 rejects polymorphic variants using keywords from macros
+- PR#4778: Win32/MSVC port: rare syntax error in generated MASM assembly file
+- PR#4794, PR#4959: call annotations not generated by ocamlopt
+- PR#4820: revised syntax pretty printer crashes with 'Stack_overflow'
+- PR#4928: wrong printing of classes and class types by camlp4
+- PR#4939: camlp4 rejects patterns of the '?x:_' form
+- PR#4967: ocamlbuild passes wrong switches to ocamldep through menhir
+- PR#4972: mkcamlp4 does not include 'dynlink.cma'
+- PR#5039: ocamlbuild should use '-linkpkg' only when linking programs
+- PR#5066: ocamldoc: add -charset option used in html generator
+- PR#5069: fcntl() in caml_sys_open may block, do it within blocking section
+- PR#5071, PR#5129, PR#5134: inconsistencies between camlp4 and camlp4* binaries
+- PR#5080, PR#5104: regression in type constructor handling by camlp4
+- PR#5090: bad interaction between toplevel and camlp4
+- PR#5095: ocamlbuild ignores some tags when building bytecode objects
+- PR#5100: ocamlbuild always rebuilds a 'cmxs' file
+- PR#5103: build and install objinfo when building with ocamlbuild
+- PR#5109: crash when a parser calls a lexer that calls another parser
+- PR#5110: invalid module name when using optional argument
+- PR#5115: bytecode executables produced by msvc64 port crash on 32-bit versions
+- PR#5117: bigarray: wrong function name without HAS_MMAP; missing include
+- PR#5118: Camlp4o and integer literals
+- PR#5122: camlp4 rejects lowercase identifiers for module types
+- PR#5123: shift_right_big_int returns a wrong zero
+- PR#5124: substitution inside a signature leads to odd printing
+- PR#5128: typo in 'Camlp4ListComprehension' syntax extension
+- PR#5136: obsolete function used in emacs mode
+- PR#5145: ocamldoc: missing html escapes
+- PR#5146: problem with spaces in multi-line string constants
+- PR#5149: (partial) various documentation problems
+- PR#5156: rare compiler crash with objects
+- PR#5165: ocamlbuild does not pass '-thread' option to ocamlfind
+- PR#5167: camlp4r loops when printing package type
+- PR#5172: camlp4 support for 'module type of' construct
+- PR#5175: in bigarray accesses, make sure bigarray expr is evaluated only once
+- PR#5177: Gc.compact implies Gc.full_major
+- PR#5182: use bytecode version of ocamldoc to generate man pages
+- PR#5184: under Windows, alignment issue with bigarrays mapped from files
+- PR#5188: double-free corruption in bytecode system threads
+- PR#5192: mismatch between words and bytes in interpreting max_young_wosize
+- PR#5202: error in documentation of atan2
+- PR#5209: natdynlink incorrectly detected on BSD systems
+- PR#5213: ocamlbuild should pass '-rectypes' to ocamldoc when needed
+- PR#5217: ocamlfind plugin should add '-linkpkg' for toplevel
+- PR#5228: document the exceptions raised by functions in 'Filename'
+- PR#5229: typo in build script ('TAG_LINE' vs 'TAGLINE')
+- PR#5230: error in documentation of Scanf.Scanning.open_in
+- PR#5234: option -shared reverses order of -cclib options
+- PR#5237: incorrect .size directives generated for x86-32 and x86-64
+- PR#5244: String.compare uses polymorphic compare_val (regression of PR#4194)
+- PR#5248: regression introduced while fixing PR#5118
+- PR#5252: typo in docs
+- PR#5258: win32unix: unix fd leak under windows
+- PR#5269: (tentative fix) Wrong ext_ref entries in .annot files
+- PR#5272: caml.el doesn't recognize downto as a keyword
+- PR#5276: issue with ocamlc -pack and recursively-packed modules
+- PR#5280: alignment constraints incorrectly autodetected on MIPS 32
+- PR#5281: typo in error message
+- PR#5308: unused variables not detected in "include (struct .. end)"
+- camlp4 revised syntax printing bug in the toplevel (reported on caml-list)
+- configure: do not define _WIN32 under cygwin
+- Hardened generic comparison in the case where two custom blocks
+ are compared and have different sets of custom operations.
+- Hardened comparison between bigarrays in the case where the two
+ bigarrays have different kinds.
+- Fixed wrong autodetection of expm1() and log1p().
+- don't add .exe suffix when installing the ocamlmktop shell script
+- ocamldoc: minor fixes related to the display of ocamldoc options
+- fixed bug with huge values in OCAMLRUNPARAM
+- mismatch between declaration and definition of caml_major_collection_slice
+
+Feature wishes:
+- PR#4992: added '-ml-synonym' and '-mli-synonym' options to ocamldep
+- PR#5065: added '-ocamldoc' option to ocamlbuild
+- PR#5139: added possibility to add options to ocamlbuild
+- PR#5158: added access to current camlp4 parsers and printers
+- PR#5180: improved instruction selection for float operations on amd64
+- stdlib: added a 'usage_string' function to Arg
+- allow with constraints to add a type equation to a datatype definition
+- ocamldoc: allow to merge '@before' tags like other ones
+- ocamlbuild: allow dependency on file "_oasis"
+
+Other changes:
+- Changed default minor heap size from 32k to 256k words.
+- Added new operation 'compare_ext' to custom blocks, called when
+ comparing a custom block value with an unboxed integer.
+
+
Objective Caml 3.12.0:
----------------------
View
@@ -255,10 +255,6 @@ From the top directory, become superuser and do:
umask 022 # make sure to give read & execute permission to all
make install
- In the ocamlbuild setting instead of make install do:
-
- ./build/install.sh
-
7- Installation is complete. Time to clean up. From the toplevel
directory, do "make clean".
View
@@ -6,8 +6,9 @@ INRIA" in the following directories and their sub-directories:
and "the Compiler" refers to all files marked "Copyright INRIA" in the
following directories and their sub-directories:
- asmcomp, boot, bytecomp, debugger, driver, lex, ocamldoc, parsing,
- tools, toplevel, typing, utils, yacc
+ asmcomp, boot, build, bytecomp, debugger, driver, lex, man,
+ ocamlbuild, ocamldoc, parsing, testsuite, tools, toplevel, typing,
+ utils, yacc
The Compiler is distributed under the terms of the Q Public License
version 1.0 with a change to choice of law (included below).
View
2 README
@@ -21,7 +21,7 @@ native-code compiler currently runs on the following platforms:
Tier 1 (actively used and maintained by the core Caml team):
- AMD64 (Opteron) Linux
+ AMD64 (Opteron) Linux, MacOS X, MS Windows
IA32 (Pentium) Linux, FreeBSD, MacOS X, MS Windows
PowerPC MacOS X
View
@@ -37,7 +37,7 @@ the GPL. Thus, these .exe files can only be distributed under a license
that is compatible with the GPL. Executables generated by MSVC or by
MinGW have no such restrictions.
-(**) The debugger is supported but the "replay" function of it are not enabled.
+(**) The debugger is supported but the "replay" functions are not enabled.
Other functions are available (step, goto, run...).
The remainder of this document gives more information on each port.
@@ -183,6 +183,10 @@ by Jacob Navia, then significantly improved by Christopher A. Watford.
The native Win32 port built with Mingw
--------------------------------------
+NOTE: Due to changes in cygwin's compilers, this port is not available
+in OCaml 3.12.1. A patch will be made available soon after the release
+of 3.12.1.
+
REQUIREMENTS:
This port runs under MS Windows Vista, XP, and 2000.
@@ -232,7 +236,7 @@ You will need the following software components to perform the recompilation:
- Windows NT, 2000, XP, or Vista.
- Cygwin: http://sourceware.cygnus.com/cygwin/
Install at least the following packages: binutils, diffutils,
- gcc-core, gcc-mingw-core, make, mingw-runtime, ncurses, w32-api.
+ gcc-core, gcc-mingw-core, make, mingw-runtime, ncurses, w32api.
- TCL/TK version 8.5 (see above).
- The flexdll tool (see above).
@@ -302,7 +306,9 @@ NOTES:
The libraries available in this port are "num", "str", "threads",
"unix" and "labltk". "graph" is not available.
-The replay debugger is supported.
+The replay debugger is fully supported.
+When upgrading from 3.12.0 to 3.12.1, you will need to remove
+/usr/local/bin/ocamlmktop.exe before typing "make install".
------------------------------------------------------------------------------
View
@@ -1,4 +1,4 @@
-3.13.0+dev4 (2011-06-20)
+3.13.0+dev5 (2011-07-20)
# The version string is the first line of this file.
# It must be in the format described in stdlib/sys.mli
View
@@ -338,9 +338,12 @@ let emit_instr fallthrough i =
| Lop(Imove | Ispill | Ireload) ->
let src = i.arg.(0) and dst = i.res.(0) in
if src.loc <> dst.loc then begin
- if src.typ = Float then
- ` movsd {emit_reg src}, {emit_reg dst}\n`
- else
+ match src.typ, src.loc, dst.loc with
+ Float, Reg _, Reg _ ->
+ ` movapd {emit_reg src}, {emit_reg dst}\n`
+ | Float, _, _ ->
+ ` movsd {emit_reg src}, {emit_reg dst}\n`
+ | _ ->
` movq {emit_reg src}, {emit_reg dst}\n`
end
| Lop(Iconst_int n) ->
@@ -359,7 +362,7 @@ let emit_instr fallthrough i =
| _ ->
let lbl = new_label() in
float_constants := (lbl, s) :: !float_constants;
- ` movlpd {emit_label lbl}(%rip), {emit_reg i.res.(0)}\n`
+ ` movsd {emit_label lbl}(%rip), {emit_reg i.res.(0)}\n`
end
| Lop(Iconst_symbol s) ->
` {load_symbol_addr s}, {emit_reg i.res.(0)}\n`
@@ -412,7 +415,7 @@ let emit_instr fallthrough i =
| Single ->
` cvtss2sd {emit_addressing addr i.arg 0}, {emit_reg dest}\n`
| Double | Double_u ->
- ` movlpd {emit_addressing addr i.arg 0}, {emit_reg dest}\n`
+ ` movsd {emit_addressing addr i.arg 0}, {emit_reg dest}\n`
end
| Lop(Istore(chunk, addr)) ->
begin match chunk with
@@ -428,7 +431,7 @@ let emit_instr fallthrough i =
` cvtsd2ss {emit_reg i.arg.(0)}, %xmm15\n`;
` movss %xmm15, {emit_addressing addr i.arg 1}\n`
| Double | Double_u ->
- ` movlpd {emit_reg i.arg.(0)}, {emit_addressing addr i.arg 1}\n`
+ ` movsd {emit_reg i.arg.(0)}, {emit_addressing addr i.arg 1}\n`
end
| Lop(Ialloc n) ->
if !fastcode_flag then begin
View
@@ -332,10 +332,13 @@ let emit_instr fallthrough i =
| Lop(Imove | Ispill | Ireload) ->
let src = i.arg.(0) and dst = i.res.(0) in
if src.loc <> dst.loc then begin
- if src.typ = Float then
- ` movsd {emit_reg dst}, {emit_reg src}\n`
- else
- ` mov {emit_reg dst}, {emit_reg src}\n`
+ match src.typ, src.loc, dst.loc with
+ Float, Reg _, Reg _ ->
+ ` movapd {emit_reg dst}, {emit_reg src}\n`
+ | Float, _, _ ->
+ ` movsd {emit_reg dst}, {emit_reg src}\n`
+ | _ ->
+ ` mov {emit_reg dst}, {emit_reg src}\n`
end
| Lop(Iconst_int n) ->
if n = 0n then begin
@@ -357,7 +360,7 @@ let emit_instr fallthrough i =
| _ ->
let lbl = new_label() in
float_constants := (lbl, s) :: !float_constants;
- ` movlpd {emit_reg i.res.(0)}, {emit_label lbl}\n`
+ ` movsd {emit_reg i.res.(0)}, {emit_label lbl}\n`
end
| Lop(Iconst_symbol s) ->
add_used_symbol s;
@@ -418,7 +421,7 @@ let emit_instr fallthrough i =
| Single ->
` cvtss2sd {emit_reg dest}, REAL4 PTR {emit_addressing addr i.arg 0}\n`
| Double | Double_u ->
- ` movlpd {emit_reg dest}, REAL8 PTR {emit_addressing addr i.arg 0}\n`
+ ` movsd {emit_reg dest}, REAL8 PTR {emit_addressing addr i.arg 0}\n`
end
| Lop(Istore(chunk, addr)) ->
begin match chunk with
@@ -434,7 +437,7 @@ let emit_instr fallthrough i =
` cvtsd2ss xmm15, {emit_reg i.arg.(0)}\n`;
` movss REAL4 PTR {emit_addressing addr i.arg 1}, xmm15\n`
| Double | Double_u ->
- ` movlpd REAL8 PTR {emit_addressing addr i.arg 1}, {emit_reg i.arg.(0)}\n`
+ ` movsd REAL8 PTR {emit_addressing addr i.arg 1}, {emit_reg i.arg.(0)}\n`
end
| Lop(Ialloc n) ->
if !fastcode_flag then begin
View
@@ -262,7 +262,7 @@ let link_shared ppf objfiles output_name =
Clflags.ccobjs := !Clflags.ccobjs @ !lib_ccobjs;
Clflags.ccopts := !lib_ccopts @ !Clflags.ccopts;
let objfiles = List.rev (List.map object_file_name objfiles) @
- !Clflags.ccobjs in
+ (List.rev !Clflags.ccobjs) in
let startup =
if !Clflags.keep_startup_file
View
@@ -544,7 +544,7 @@ let rec close fenv cenv = function
| ((ufunct, _), uargs) ->
(Ugeneric_apply(ufunct, uargs, Debuginfo.none), Value_unknown)
end
- | Lsend(kind, met, obj, args) ->
+ | Lsend(kind, met, obj, args, _) ->
let (umet, _) = close fenv cenv met in
let (uobj, _) = close fenv cenv obj in
(Usend(kind, umet, uobj, close_list fenv cenv args, Debuginfo.none),
Oops, something went wrong.

0 comments on commit a45ed2c

Please sign in to comment.