Commit Graph

1209 Commits (8df2057b4662c16eb6f09d403e784770a26caea3)

Author SHA1 Message Date
Alain Frisch 525ef9d703 Synchronize with trunk.
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/extension_points@13897 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-07-16 13:34:30 +00:00
Alain Frisch f836495698 Fix #5571.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@13877 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-07-09 11:16:25 +00:00
Alain Frisch b4c2dc9336 Remove duplicated declaration.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@13872 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-07-04 12:27:06 +00:00
Jacques Garrigue 07b8b7dd74 Fix PR#6056
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@13845 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-06-28 10:43:25 +00:00
Jacques Garrigue f4d0232689 fix PR#5914
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@13829 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-06-22 07:31:37 +00:00
Jacques Garrigue 70a5d6af9f fix a variance bug in GADTs
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@13802 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-06-18 13:04:32 +00:00
Alain Frisch ba38d00535 #5980: a different warning for shadowing labels/constructors and for other kinds of identifiers. (Cherry-picked from commit 13796 on 4.01.)
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@13797 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-06-18 08:01:02 +00:00
Jacques Garrigue d53e2b57b2 Make GADT inference robust to useless equations
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@13790 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-06-17 03:02:14 +00:00
Jacques Garrigue 4fb61c91e6 Fix PR#5815
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@13789 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-06-17 02:03:36 +00:00
Alain Frisch ee8d80e3a9 #6035: reject multiple declarations of the same method or instance variable in the same object.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@13756 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-06-07 15:35:43 +00:00
Alain Frisch 207f9fb7f7 #6030: Avoid repeated flushes.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@13742 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-06-04 13:46:48 +00:00
Alain Frisch 2e199ef1f2 Item attributes on each let-binding.
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/extension_points@13736 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-06-03 15:14:19 +00:00
Damien Doligez 48f65d07f8 PR#5098: creating module values may lead to memory leaks
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@13735 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-06-03 14:46:04 +00:00
Pierre Weis 38cac2d847 Move back to revision r13685.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@13733 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-06-03 11:12:31 +00:00
Pierre Weis cba8ab21e4 Introducing %A and %R conversion. Untabify. Wrong quoting chase.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@13719 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-05-29 18:25:05 +00:00
Damien Doligez e69730e0d6 extend warning 3 to other deprecated features: Latin1, (&) and (or)
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@13706 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-05-28 11:05:58 +00:00
Jérémie Dimino 8cee3aedf9 Revert addition of raw literals to the parsetree
It turns out it is not possible to have the exact raw representation
since a constant does not always correspond to exactly one token, so
there is no point in making the AST more complex.


git-svn-id: http://caml.inria.fr/svn/ocaml/branches/extension_points@13702 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-05-23 15:12:04 +00:00
Damien Doligez c3bf54a7b6 merge changes from version/4.00 from 4.00.1 to r13697
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@13699 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-05-22 12:56:54 +00:00
Jérémie Dimino 4e7ae971a7 add the raw representation of constants to the parsetree
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/extension_points@13696 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-05-20 11:37:41 +00:00
Jacques Garrigue ccf56e3b2a fix bug in short-paths: must ignore position when comparing paths
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@13695 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-05-20 03:12:46 +00:00
Alain Frisch 4f24f8ab0f #5980: only report shadowing against the environment before the 'open'.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@13689 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-05-17 10:12:31 +00:00
Alain Frisch a3b1c67fff #5980: explicit way to silence the new warning (open! X).
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@13685 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-05-16 13:34:53 +00:00
Alain Frisch f51bc04b55 #5980: warning on open statements which shadow an existing identifier (which turns out to be actually used in the scope of the open).
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@13683 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-05-16 12:36:15 +00:00
Alain Frisch 7fa05e12d4 Fix error message.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@13664 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-05-13 12:15:31 +00:00
Jacques Garrigue 9f105f3cba protect against Ctype.equal changing the representative
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@13651 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-05-04 10:32:06 +00:00
Jacques Garrigue c09d328c31 More clever handling of constrained parameters:
if the same type appears at the right variance inside
parameters, no need to check its type variables


git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@13650 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-05-04 08:52:44 +00:00
Jacques Garrigue ba7fa367a1 Fix PR#6004
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@13649 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-05-04 01:44:49 +00:00
Jacques Garrigue e2dbb7f516 Fix PR#6005
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@13647 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-05-03 14:40:11 +00:00
Jacques Garrigue 67e18e5c4d Fix PR#5985 for constrained parameters too.
Required more variance information, so variance is now an abstract type.


git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@13645 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-05-03 13:38:30 +00:00
Jacques Garrigue cc0daa3c3f typo in -short-paths
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@13641 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-05-02 01:30:25 +00:00
Jacques Garrigue bdf9c6bae7 For -short-paths, lookup the whole environment, but avoid recomputation
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@13640 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-05-02 01:02:15 +00:00
Jacques Garrigue f35c7d123f Take ambiguity into account when using -short-paths option.
Namely, do not use an abbreviated form which doesn't correspond
directly to a physical definition when it might point to
several definitions, due to multiple opens.
Also be careful about not abbreviating types we are defining
in type definitions.


git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@13635 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-04-30 09:05:26 +00:00
Jacques Garrigue c425ae1ce8 Fix PR#5985; compute injectivity of types but no new syntax
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@13634 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-04-30 05:26:57 +00:00
Alain Frisch 96fc2316ed Fix #5965.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@13619 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-04-29 15:39:00 +00:00
Alain Frisch 2bbf91ca42 #5832: patch to improve 'wrong file naming' error messages.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@13618 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-04-29 14:57:38 +00:00
Jacques Garrigue 35d1dde122 Improve message for warning 40
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@13612 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-04-26 13:09:24 +00:00
Luc Maranget ebfc4e6cff Fix PR #5992
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@13611 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-04-25 13:32:17 +00:00
Jacques Garrigue b20679022a printing of anonymous type parameters after strengthening
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@13603 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-04-24 11:02:49 +00:00
Jacques Garrigue 5f27c34e10 Apply patch from PR#5944
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@13588 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-04-23 00:18:15 +00:00
Jacques Garrigue a0b6262cf8 Fix PR#5997
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@13586 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-04-22 23:53:24 +00:00
Jacques Garrigue 497ec43277 Fix PR#5993
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@13580 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-04-19 08:48:25 +00:00
Alain Frisch eb4130e47c The arument of attributes and extension nodes is now a structure, which is syntactically more general than an expression (through the embedding E -> [Pexp_eval E]).
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/extension_points@13579 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-04-19 07:40:57 +00:00
Jacques Garrigue 39d57e01e6 Fix PR#5989
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@13578 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-04-18 23:41:29 +00:00
Alain Frisch 67912da346 Allow abstract module declaration in structures to make the syntax and Parsetree more uniform.
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/extension_points@13556 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-04-18 13:14:53 +00:00
Alain Frisch 84147074f9 Split Pexp_constraint into Pexp_coerce/Pexp_constraint.
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/extension_points@13552 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-04-17 12:23:44 +00:00
Alain Frisch d2171a98d8 Split Pexp_function into Pexp_function/Pexp_fun.
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/extension_points@13551 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-04-17 11:43:29 +00:00
Alain Frisch b22865d0a9 Check AST invariants.
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/extension_points@13550 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-04-17 10:01:24 +00:00
Alain Frisch b36ec9f764 Get rid of the 'explicit arity' flag on Pexp_construct/Ppat_construct. If really requires (for camlp5?), the feature should be reimplemented with attributes.
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/extension_points@13549 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-04-17 09:46:52 +00:00
Alain Frisch 501dfd2b5e Getting rid of Pexp_assertfalse/Texp_assertfalse.
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/extension_points@13548 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-04-17 09:18:03 +00:00
Alain Frisch 088de517d8 Keep interval pattern sugar in the Parsetree (Camlp4 parsers still expand them).
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/extension_points@13546 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-04-16 15:34:09 +00:00