Gabriel Scherer
8591c2532e
missing @since on List.sort_uniq
...
From: Simon Cruanes <simon.cruanes.2007@m4x.org>
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@15579 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2014-11-16 17:39:50 +00:00
Gabriel Scherer
a699625e78
fix for ocamlbuild on cygwin cannot find ocamlfind
...
ocamlbuild should append .exe extension to filename when looking for
executables and Sys.cygiwn is set (not only Sys.win32).
From: algoriddle <szilvasy@gmail.com>
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@15577 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2014-11-16 17:37:25 +00:00
Jacques Garrigue
dcb6a4dd7e
tentative fix of PR#6651
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@15576 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2014-11-12 11:59:23 +00:00
Jacques Garrigue
88fadf06bc
add repro case for PR#51
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@15575 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2014-11-12 09:14:14 +00:00
Jacques Garrigue
18ed39fb36
Fix PR#6650: Cty_constr not handled correctly by Subst
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@15574 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2014-11-10 09:43:30 +00:00
Jacques Garrigue
5adbb67a45
PR#6648: show_module should indicate its elision (add Osig_ellipsis to outcometree)
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@15573 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2014-11-10 09:09:23 +00:00
Xavier Leroy
ec1ba73399
Prudently revert the type of "Cconst_symbol" to typ_val instead of typ_int.
...
There seems to be issues with let-bound variables initialized with symbol
addresses and later updated.
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/cmm-mach-types@15572 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2014-11-07 18:11:51 +00:00
Luc Maranget
4fdd5dd354
Oups.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@15571 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2014-11-07 15:29:48 +00:00
Luc Maranget
3bded3f977
Solve PR#6646, ie avoid introducing huge jump summaries
...
and unshared default clauses in the presence of many (>= 32) non-matched
constructors.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@15570 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2014-11-07 14:13:53 +00:00
Xavier Leroy
0a1a5b0e28
Don't forget that allocations can run arbitrary Caml code (via signal handlers, etc). Hence, equations involving loads must be erased across allocations.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/cmm-mach-types@15569 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2014-11-07 13:37:44 +00:00
Xavier Leroy
ac02f56351
More precise typing at the C-- and Mach level:
...
- Register type "Addr" is split into
. "Val" (well-formed OCaml values, appropriate as GC roots)
. "Addr" (derived pointers within the heap, must not survive a GC)
- memory_chunk "Word" is split into
. "Word_val" (OCaml value)
. "Word_int" (native-sized integer, not a pointer into the heap)
Cmmgen was updated to use Word_val or Word_int as appropriate.
Application #1 : fail at compile-time if a derived pointer within the heap
survives a GC point (cf. PR#6484).
Application #2 : CSE can do a better job across allocation points
(keep factoring expressions of type Int, Val, Float, but not Addr).
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/cmm-mach-types@15568 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2014-11-06 08:54:14 +00:00
Xavier Leroy
26ee828e18
Experiment: slightly more precise types for C-- variables and Mach registers.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/cmm-mach-types@15567 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2014-11-06 08:18:31 +00:00
Damien Doligez
94dfb61c09
fix a bug where the .annot files were truncated because of a missing "close"
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@15565 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2014-10-29 21:18:14 +00:00
Damien Doligez
abcd4e8f90
PR#6628: Configure script rejects legitimate arguments
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@15562 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2014-10-29 16:29:18 +00:00
Jérémie Dimino
98e0051f5c
PR#6619: update documentation of Printexc.set_uncaught_exception_handler
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@15560 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2014-10-20 13:15:33 +00:00
Jacques Garrigue
792c92d1a0
Fix PR#6615: inconsistent printing and parsing of inline records
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@15559 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2014-10-17 01:48:12 +00:00
Damien Doligez
031cffd155
merge branch 4.02 from release 4.02.0 to release 4.02.1
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@15558 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2014-10-15 13:34:58 +00:00
Alain Frisch
e3ad818fb5
Reintegrate-merge constructors_with_record5 branch.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@15556 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2014-10-14 15:51:30 +00:00
Alain Frisch
ba1f91352e
Sync.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/constructors_with_record5@15555 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2014-10-14 15:40:09 +00:00
Alain Frisch
5a8fd350ca
Minimal support for inlined records for the texi backend.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/constructors_with_record5@15554 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2014-10-14 15:35:31 +00:00
Alain Frisch
c5ef8ad49d
Minimal support for inlined records for the man backend.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/constructors_with_record5@15553 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2014-10-14 15:34:22 +00:00
Alain Frisch
6513ec9dd8
Minimal support for inlined records (displayed as {...}) for the latex backend.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/constructors_with_record5@15552 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2014-10-14 15:32:14 +00:00
Alain Frisch
ba91d29558
Some minimal support for inline records in the html backend.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/constructors_with_record5@15551 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2014-10-14 15:27:42 +00:00
Alain Frisch
bd618eef58
Plumbing into ocamldoc. Annotations are still not collected in inlined records, and all backends fail on inline records.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/constructors_with_record5@15550 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2014-10-14 15:03:41 +00:00
Alain Frisch
65d07466f9
Bug fix.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/constructors_with_record5@15549 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2014-10-14 14:19:05 +00:00
Alain Frisch
2ef9c9f592
Accept changes.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/constructors_with_record5@15548 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2014-10-14 13:18:06 +00:00
Alain Frisch
ebe39fb4e8
Empty ident is not allowed.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/constructors_with_record5@15547 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2014-10-14 13:17:22 +00:00
Alain Frisch
a8fc270033
Name of exceptions can no longer be duplicated.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/constructors_with_record5@15543 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2014-10-14 12:46:22 +00:00
Alain Frisch
1f8861d87e
Cleanup.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/constructors_with_record5@15539 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2014-10-14 10:32:45 +00:00
Alain Frisch
303b24e093
Sync with trunk.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/constructors_with_record5@15538 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2014-10-14 10:18:33 +00:00
Alain Frisch
d5e19a5d5c
Error message.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/constructors_with_record5@15537 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2014-10-14 08:24:40 +00:00
Alain Frisch
99c29b3b67
Adapt test.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/constructors_with_record5@15536 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2014-10-14 08:23:20 +00:00
Alain Frisch
f6440b2760
Adapt test.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/constructors_with_record5@15535 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2014-10-14 08:21:50 +00:00
Xavier Leroy
a4e637ea62
Reflecting commit 15498 on version/4.02:
...
PR#6588 part 2: for ARMv4 and ARMv5, make sure architectural constraints
on the "smull" instruction are respected. (Patch by Mark Shinwell.)
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@15531 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2014-10-13 09:07:29 +00:00
Xavier Leroy
c0b1ae096e
Reflecting commit 15497 on version/4.02:
...
PR#6588 part 1: wrong "parallel move" code generated for CSE of operators
that have multiple results.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@15530 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2014-10-13 09:06:01 +00:00
Alain Frisch
56782ae7bc
#6609 : export Toploop.phrase.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@15528 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2014-10-13 07:17:10 +00:00
Alain Frisch
42af6a461a
Drop support for self-recursive reference to inlined record types. Improve error message.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/constructors_with_record5@15527 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2014-10-10 15:19:05 +00:00
Alain Frisch
026062c4e2
Remove support for record types in the printer (will be printed without the ! if they ever appear in error messages).
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/constructors_with_record5@15526 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2014-10-10 14:52:23 +00:00
Alain Frisch
bae09b365d
Remove syntax for inlined record types.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/constructors_with_record5@15525 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2014-10-10 14:50:46 +00:00
Alain Frisch
88fd20f565
Stop keeping manifest types on inlined records; always use free variables (ordering doesn't matter); re-enable GADT constructors.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/constructors_with_record5@15524 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2014-10-10 14:47:03 +00:00
Alain Frisch
aa77009fea
Fix.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/constructors_with_record5@15523 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2014-10-10 14:29:36 +00:00
Alain Frisch
eeac41ea2c
Rename allow_recarg to recarg.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/constructors_with_record5@15522 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2014-10-10 14:23:15 +00:00
Alain Frisch
a615c35a3f
Cleanup.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/constructors_with_record5@15521 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2014-10-10 14:20:46 +00:00
Alain Frisch
d23c8cf3f8
Better errors.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/constructors_with_record5@15519 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2014-10-10 14:19:05 +00:00
Alain Frisch
ff44d01acf
allow_recarg is now interpreted in a strict way for Pexp_ident expression (if true, the variable must be bound to a record argument).
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/constructors_with_record5@15518 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2014-10-10 13:46:11 +00:00
Alain Frisch
942264e5ea
Be more liberal for the pattern under a constructor with an inlined argument: allow aliases and or patterns (only reject explicitly the constraint pattern).
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/constructors_with_record5@15517 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2014-10-10 13:27:23 +00:00
Alain Frisch
0562da3a45
Commit a variant of the patch from Jacques, avoiding the need for a specific val_kind.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/constructors_with_record5@15516 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2014-10-10 13:14:46 +00:00
Alain Frisch
e91e461906
Guess what? There is a new branch to experiment with inline records. Now, we are going to apply syntactic restriction to make sure inline record types don't escape.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/constructors_with_record5@15515 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2014-10-10 12:47:35 +00:00
Alain Frisch
d45ab052be
Undo previous commit.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@15514 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2014-10-09 17:08:31 +00:00
Alain Frisch
2fa0068ece
Simple, but very effective optimization.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@15513 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2014-10-09 16:31:41 +00:00