Commit Graph

10476 Commits (654521cbd41e93676375919fa35dfec0ea2647e0)

Author SHA1 Message Date
Alain Frisch 654521cbd4 Support far relocations in Win64, using a custom local implementation of something similar to the GOT table. This allows loading .cmxs units far from the main process. Might fix #6594 as well.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@15900 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2015-03-11 16:02:20 +00:00
Alain Frisch 90a956b47e #6575: fail early in Array.init when size < 0 to avoid calling the callback in that case. (Cherry-picked from 4.02, rev 15898.)
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@15899 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2015-03-11 15:13:59 +00:00
Alain Frisch 4c48d802cb #6612: attribute in type expressions bind less then product types; attributes come after constructor/field declarations.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@15897 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2015-03-11 14:57:20 +00:00
Alain Frisch 11333d938c #6583: support for custom #... binary operators (also allowing '#' in trailing symbols, although the operator is then rejected by the type-checker).
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@15892 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2015-03-09 17:39:50 +00:00
Gabriel Scherer d1ee5b0add untypeast: fix Makefile.nt
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@15890 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2015-03-08 17:46:12 +00:00
Gabriel Scherer 1ecdd68c21 untypeast: small change to avoid producing new compiler warnings.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@15889 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2015-03-08 10:22:37 +00:00
Gabriel Scherer ad85a8c1df use open recursion in untypeast.ml
This allows library user to override the untyping behavior of specific
typedtree nodes.

git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@15888 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2015-03-08 10:22:35 +00:00
Gabriel Scherer 06a78807fb Update Makefile and .depend for untypeast.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@15887 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2015-03-08 10:22:34 +00:00
Gabriel Scherer 786e69e846 move tools/untypeast.ml to typing/untypeast.ml
This makes them available in compiler-libs, enabling various uses
outside the compiler.

git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@15886 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2015-03-08 10:22:32 +00:00
Gabriel Scherer 3ad7f526a2 PR#6452, GPR#140: add internal support for custom printing formats
(Jérémie Dimino)

git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@15884 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2015-03-08 09:36:10 +00:00
Gabriel Scherer 0db2316653 PR#6794: pass package-specific include flags when building C files
(Jérémie Dimino, request by Peter Zotov)

git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@15883 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2015-03-08 09:03:24 +00:00
Gabriel Scherer efa9d3bd9e PR#6791: "%s@[", "%s@{" regression in Scanf
(Benoît Vaugon)

git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@15881 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2015-03-07 10:55:13 +00:00
Alain Frisch bbd24c8bfd #6804: fix match specialisation when actions are shared.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@15880 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2015-03-05 16:08:35 +00:00
Jérémie Dimino fae584230d PR#6078: release the runtime system when calling caml_dlopen
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@15878 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2015-03-05 12:47:35 +00:00
Jérémie Dimino 3a903acafb PR#6285: add support for nanosecond precision in Unix.stat()
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@15877 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2015-03-05 11:02:53 +00:00
Damien Doligez 3d89f3ef7e PR#6664: Crash when finalising lazy values of the wrong type.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@15876 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2015-03-04 19:58:49 +00:00
Damien Doligez 2a0e91960e misc fixes to gdb-macros
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@15875 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2015-03-04 19:57:51 +00:00
Damien Doligez 35c7dac1ad add the version number to the output of configure
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@15874 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2015-03-04 19:56:45 +00:00
Alain Frisch dd90f1b9c5 Avoid creating empty .asm files when using a binary backend.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@15866 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2015-02-26 14:03:58 +00:00
Jacques Garrigue 22a3f9fc16 Fix PR#6787
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@15851 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2015-02-19 09:57:41 +00:00
Gabriel Scherer a125011b70 PR#6775: Digest.file leaks file descriptor on error
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@15840 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2015-02-15 21:11:07 +00:00
Damien Doligez 85f479822e tools: add a file of GDB macros useful for debugging the runtime
debugger: add two low-level commands for debugging in tandem with gdb


git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@15838 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2015-02-12 21:31:20 +00:00
Damien Doligez 4c1b09cdc4 GPR#143: fix getsockopt behaviour for boolean socket options
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@15837 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2015-02-10 22:48:16 +00:00
Gabriel Scherer c984a1414d fix the MSVC fix
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@15833 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2015-02-08 15:44:04 +00:00
Gabriel Scherer 527fff9044 meta.c: one more MSVC fix
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@15832 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2015-02-08 15:11:00 +00:00
Gabriel Scherer 06414a08e7 backtrace.c: revert to C89 variable declarations to please MSVC (?!)
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@15831 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2015-02-08 14:55:41 +00:00
Gabriel Scherer 304c9c91a5 PR#6468: toplevel now supports backtraces if invoked with OCAMLRUNPARAM=b
(Peter Zotov and Jake Donham,
 review by Gabriel Scherer and Jacques-Henri Jourdan)

git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@15830 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2015-02-08 14:10:12 +00:00
Gabriel Scherer 5302d101be PR#6760: closures evaluated in the toplevel can now be marshalled
(Peter Zotov, review by Jacques-Henri Jourdan)

git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@15829 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2015-02-08 14:10:08 +00:00
Gabriel Scherer 41e0ecf2ef PR#6642: replace $CAMLORIGIN in -ccopt with the path to cma or cmxa
(Peter Zotov)

git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@15828 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2015-02-08 11:18:29 +00:00
Gabriel Scherer e7df5313a5 minor Changes fix
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@15826 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2015-02-08 10:03:45 +00:00
Gabriel Scherer 218f16f5ee PR#6749: ocamlopt returns n for (n mod 1) instead of 0
(Mark Shinwell and Jérémie Dimino)

git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@15824 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2015-02-08 10:00:18 +00:00
Gabriel Scherer 7a9e588eb8 cmmgen.ml: minor style fix
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@15823 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2015-02-08 10:00:16 +00:00
Gabriel Scherer d48a44e316 clarify the multiplication trick
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@15821 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2015-02-07 11:32:15 +00:00
Gabriel Scherer 81e8d5bdbb Cmm arithmetic optimisations.
Constant additions and tagging operations are moved out of
subexpressions when possible. Often they can be merged.

From Stephen Dolan:
  https://github.com/ocaml/ocaml/pull/17

git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@15820 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2015-02-07 11:32:12 +00:00
Damien Doligez 46f6fe62f3 fix bug where some unclosed channels could be discarded without flushing
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@15817 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2015-02-06 21:58:00 +00:00
Damien Doligez 97b2fe76ae replace use of deprecated String.uppercase
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@15816 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2015-02-06 21:54:40 +00:00
Damien Doligez a0727de0f3 PR#6340: Incorrect handling of \r when processing "Windows" source files
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@15815 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2015-02-06 20:19:11 +00:00
Damien Doligez 11bc5fe4bf GPR#142: add a CAMLdrop macro for undoing CAMLparam*/CAMLlocal*
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@15814 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2015-02-06 15:54:05 +00:00
Alain Frisch c38fc546dc Better simplification after inlining (resolve switches on known constants); also fix #6686/#6770 indirectly.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@15812 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2015-02-05 15:13:54 +00:00
Jacques Garrigue a5252548c6 Fix PR#6768: Typechecker overflow the stack on cyclic type
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@15810 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2015-02-05 07:47:14 +00:00
Damien Doligez 0f5046b8b4 configure: add test for cygwin64
Makefile: fix compilation of checkstack
tests/callback: fix compilation



git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@15809 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2015-02-05 04:28:25 +00:00
Damien Doligez bd03b445d0 remove exec permission from Makefile.common
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@15806 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2015-02-04 20:04:27 +00:00
Jérémie Dimino dc7e685a40 Fix pretty-printing of inlined records
Attributes on label declarations were ignored


git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@15802 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2015-01-30 16:24:18 +00:00
Alain Frisch 38bccbcb36 Fix #6767 (hopefully).
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@15801 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2015-01-30 14:54:11 +00:00
Jérémie Dimino c17d3068cd try to unbreak travis
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@15800 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2015-01-30 11:44:41 +00:00
Jacques Garrigue df4916451b Fix PR#6763
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@15798 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2015-01-30 02:02:28 +00:00
Gabriel Scherer a4029d876b PR#6720: propagate -g to the C compiler
(Peter Zotov)

git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@15795 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2015-01-24 16:35:32 +00:00
Gabriel Scherer 95f626c9ff PR#6691: install .cmt[i] files for stdlib and compiler-libs
(patch by David Sheets)

git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@15794 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2015-01-24 16:35:29 +00:00
Gabriel Scherer eca0967403 PR#6167: OCAMLPARAM support for disabling PIC generation ('pic=0')
(Gabor Pali)

git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@15793 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2015-01-24 16:35:26 +00:00
Alain Frisch e5c5963a36 Revert previous commits (not ready yet).
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@15792 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2015-01-22 16:31:51 +00:00