Commit Graph

772 Commits (f29322000e375c0e4a90409caf96fd37458117a9)

Author SHA1 Message Date
Alain Frisch f29322000e Text.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@16246 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2015-07-24 16:11:38 +00:00
Alain Frisch 49a2533472 PR#6902, GPR#210: runtime emits a warning when finalizing an I/O channel which is still open.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@16245 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2015-07-24 13:11:26 +00:00
Xavier Leroy 60384ed840 For read-and-clear, use GCC/Clang atomic builtins if available.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@16244 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2015-07-24 12:38:55 +00:00
Xavier Leroy 58c07fa89e PR#6722: compatibility with x32 architecture (x86-64 in ILP32 mode)
configure: deselect ocamlopt, which is not supported
signals_machdep.h: use i386 instruction sequence, not amd64.


git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@16243 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2015-07-24 12:31:42 +00:00
Xavier Leroy a1bafbbb67 PR#6316: Scanf.scanf failure on %u formats when reading big integers.
The approach implemented is the second one suggested by Benoît Vaugon in the PR:
- The int_of_string functions accept a "0u" prefix meaning "decimal unsigned".
- The '%u' format of the scanf functions adds this "0u" prefix before conversion.
This is consistent with the current handling of unsigned hexa, octal, and binary numbers.


git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@16241 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2015-07-24 09:36:03 +00:00
Damien Doligez 3e17d04ef0 PR#6931: Incorrect error message
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@16235 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2015-07-22 14:04:39 +00:00
Alain Frisch 748ec06e6e GPR#109: new unboxing strategy (patch by vbrankov).
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@16215 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2015-07-17 15:47:59 +00:00
Damien Doligez 860c670848 merge branch 4.02 from 4.02.1 (rev 15540) to a few fixes after 4.02.2 (rev 16205)
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@16214 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2015-07-17 14:31:05 +00:00
Jacques Garrigue c2984fe481 add tests related to PR#6899
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@16190 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2015-06-29 07:33:28 +00:00
Leo White 5c55e4cc08 Attach documentation comments to Parsetree
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@16189 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2015-06-28 13:11:50 +00:00
Alain Frisch 30450e77df Fix GPR#205: Clear caml_backtrace_last_exn before registering as root.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@16187 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2015-06-23 16:10:03 +00:00
Jacques Garrigue fbcfd218f1 Fix PR#6899
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@16184 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2015-06-23 08:40:10 +00:00
Jacques Garrigue b650a13145 Fix PR#6897 as suggested by Alain
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@16176 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2015-06-17 11:09:49 +00:00
Alain Frisch b97538a7ad #5528: add note in Changes.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@16164 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2015-06-08 13:57:50 +00:00
Mark Shinwell 8df90ef051 Port fix for GPR#191 to trunk (making gc.h and some part of memory.h public)
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@16163 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2015-06-08 13:21:42 +00:00
Jacques Garrigue d953f6e079 Fix PR#6886
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@16152 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2015-06-03 22:53:25 +00:00
Gabriel Scherer c266229488 Changelog: add release dates of released versions
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@16147 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2015-05-31 08:05:55 +00:00
Gabriel Scherer c9a896c255 Changelog attribution information
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@16142 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2015-05-25 08:47:21 +00:00
Gabriel Scherer d19a8bd2f1 PR#6636: add a --version option (Peter Zotov)
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@16141 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2015-05-24 14:52:57 +00:00
Gabriel Scherer e9785253b2 PR#6876: improve warning 6 by listing the omitted labels.
(Eyyüb Sari)

git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@16137 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2015-05-24 07:33:32 +00:00
Jacques Garrigue 1585a95502 Fix PR#6874 by pushing module pattern bindings together with default arguments; also merge functions in Simplif.simplify_lets.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@16135 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2015-05-21 00:22:46 +00:00
Jacques Garrigue bf2c5c3c17 Fix PR#6870
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@16122 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2015-05-17 03:07:10 +00:00
Jacques Garrigue 6f5241de44 Fix PR#6872
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@16121 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2015-05-17 02:36:30 +00:00
Gabriel Scherer 65bb607cd7 PR#6733: ocamlbuild .{byte,native}.so targets and runtime_variant(X) flag
(Peter Zotov)

git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@16105 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2015-05-10 05:51:25 +00:00
Jacques Garrigue 691aabb723 Fix PR#6849 and PR#6862
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@16102 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2015-05-09 02:17:36 +00:00
Damien Doligez af4063ebf3 PR#6341: ocamldoc -colorize-code adds spurious <br> tags to <pre> blocks
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@16082 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2015-05-05 19:05:18 +00:00
Alain Frisch b94c4b840f GPR#174: ensure that Set.remove and Set.filter return the original set (physically) when no change is required. Also avoid allocations in this case. Similar to what had been done for Set.add in #6645.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@16080 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2015-05-05 16:08:00 +00:00
Damien Doligez ea845ce074 GPR#159: Better locations for structure/signature items
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@16075 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2015-05-04 18:44:11 +00:00
Damien Doligez 0477bab3bf deduplicate some startup code and fix PR#6808: the parsing of OCAMLRUNPARAM is too lax
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@16074 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2015-05-04 15:44:40 +00:00
Gabriel Scherer 70450de8a1 PR#6693: also build libasmrun_shared.so and lib{asm,caml}run_pic.a
(Peter Zotov, review by Mark Shinwell)

NB: after applying this change you need to run ./configure again.

git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@16068 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2015-05-02 15:30:41 +00:00
Gabriel Scherer 31d5ca0d05 PR#6843: weak dependencies recorded even when .cmi missing
(Leo White, Gabriel Scherer)

The save_pers_struct auxiliary function is only there for code
readability: it helps makes add_import's usage more localized, as now
only *_pers_struct function use it directly.

git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@16060 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2015-05-01 17:17:34 +00:00
Gabriel Scherer 2a153ee5c0 List.cons, finally
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@16050 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2015-04-26 21:05:28 +00:00
Gabriel Scherer f9ea209cb7 GPR#171: allow custom warning printers / catchers
(Benjamin Canou, review by Damien Doligez)

git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@16049 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2015-04-26 21:05:26 +00:00
Gabriel Scherer 0cc8a6fb39 Make accessing Bigarray.t faster by optimizing Cmmgen.bigarray_indexing
(Vladimir Brankov)

bigarray_indexing now works the same way indexing ordinary arrays works.

Review note: the local ba_indexing function now returns a tagged
integer instead of an untagged integer.

git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@16046 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2015-04-26 20:41:50 +00:00
Gabriel Scherer 926cc79f1c PR#6824: fix buffer sharing on partial application of Format.asprintf
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@16043 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2015-04-26 20:00:57 +00:00
Mark Shinwell fd923a6366 forgot to update Changes
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@16038 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2015-04-24 09:38:06 +00:00
Jacques Garrigue 721266bf30 Fix PR#6842: export Typemod.modtype_of_package
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@16033 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2015-04-23 07:07:43 +00:00
Alain Frisch 918f584b64 #6845: -no-check-prims to tell ocamlc not to check primitives in runtime.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@16031 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2015-04-22 10:53:47 +00:00
Jacques Garrigue ebbf345d29 Fix PR#5663: program rejected due to nongeneralizable type variable that appears nowhere
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@16029 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2015-04-22 07:12:49 +00:00
Jacques Garrigue 3b1a33c77b PR#6672: Unused variance specification allowed in with constraint
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@16024 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2015-04-20 07:57:51 +00:00
Jacques Garrigue 8cbc2b6781 Fix PR#6841
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@16022 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2015-04-20 07:30:58 +00:00
Damien Doligez 5618914e0b document commit 16003 / PR#6816
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@16019 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2015-04-14 21:49:44 +00:00
Jacques Garrigue 00e7279141 Fix PR#6836: Assertion failure using -short-paths
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@16013 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2015-04-13 07:17:22 +00:00
Gabriel Scherer 19a5d5eb50 `type 'a result = Ok of 'a | Error of 'b` in Pervasives
(Yaron Minsky)

To whoever reads commit messages: the consensus on this change is
weak, which means the opinions can still evolve with experience using
the feature or seeing which external packages it affects. It is not
impossible that the change be reverted before a 4.03 release.

git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@16011 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2015-04-12 18:44:59 +00:00
Gabriel Scherer 90061455e6 GPR#111: `(f [@taillcall]) x y` warns if `f x y` is not a tail-call
(Simon Cruanes)

git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@16010 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2015-04-12 18:26:38 +00:00
Gabriel Scherer 4530ee379c GPR#118 ocamldep -allow-approx: fallback to a lexer-based approximation
(Frédéric Bour)

git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@16009 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2015-04-12 17:43:04 +00:00
Gabriel Scherer 543bc99a94 PR#6719: improve Buffer.add_channel when not enough input is available
When Buffer.add_channel fails with [End_of_input] because not enough
characters are available, the insufficiently-many characters that were
read are still kept in the buffer.

(Simon Cruanes)

git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@16006 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2015-04-12 11:10:17 +00:00
Gabriel Scherer 3376907929 PR#6635: Support M.[], M.(), M.{< >} and M.[| |].
(Jeremy Yallop)

A small follow-up to PR#6054, which added support for the forms

  M.[e1; e2; ... en]
  M.[|e1; e2; ...; en|]
  M.{l1=e1; l2=e2; ... ln=en}
  M.{<e1; e2; ... en>}

This patch adds support for the empty cases:

  M.[]
  M.[||]
  M.()
  M.{<>}

The empty forms aren't particularly useful in themselves, of course,
but the uniformity is convenient.

git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@16002 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2015-04-12 09:54:41 +00:00
Gabriel Scherer df05508cfc PR#6793: ocamlbuild passes nonsensical "-ocamlc ..." commands to menhir
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@15993 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2015-04-11 17:40:27 +00:00
Gabriel Scherer ff6c5b70ce fix PR#6809: make PR#6794 (ocamlbuild uses ocamlfind's C flags) trunk-only
The change broke current Oasis, so we reverted it from 4.02 and
included it only in trunk -- oasis should get fixed before 4.03.

git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@15992 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2015-04-11 17:40:26 +00:00