Jacques Le Normand
3ec9bc692b
complete_constrs in parmatch.ml now works with gadts. Reverted changes to the syntax tree which are no longer needed.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/gadts@10805 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2010-11-16 06:01:59 +00:00
Jacques Le Normand
180d03ae93
big change as to how unification mode is handled
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/gadts@10804 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2010-11-15 09:26:28 +00:00
Jacques Le Normand
ac4fa5ae13
we must forget abbrevs when switching to the old method of unification. removed unify_old: unify now decides for itself whether to use the old or the new method
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/gadts@10803 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2010-11-15 08:02:17 +00:00
Jacques Garrigue
81b859245b
fix printing bug
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/gadts@10801 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2010-11-15 04:32:21 +00:00
Jacques Garrigue
e67c5db33f
move everything to type_expect
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/gadts@10796 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2010-11-12 03:09:11 +00:00
Jacques Garrigue
73102f0fdf
disable progragation in pattern-matchings containing polymorphic variants
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/gadts@10791 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2010-11-11 10:02:56 +00:00
Jacques Garrigue
e9127a1d27
fix principality
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/gadts@10789 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2010-11-11 05:42:14 +00:00
Jacques Garrigue
b0f376cd1f
remove the GAHs
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/gadts@10785 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2010-11-10 10:38:18 +00:00
Jacques Le Normand
1680403fb9
clean up
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/gadts@10784 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2010-11-10 06:01:27 +00:00
Jacques Le Normand
e5c079a709
changed formatting. lines which were more than 80 columns were reformatted in typecore.ml
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/gadts@10783 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2010-11-09 09:29:08 +00:00
Jacques Le Normand
45c46a5032
cleaned up parmatch.ml
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/gadts@10782 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2010-11-09 09:13:15 +00:00
Jacques Le Normand
567c7e395b
cleaned up ctype
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/gadts@10781 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2010-11-09 08:41:54 +00:00
Jacques Le Normand
62d4c44d25
cleaned up typecore.ml
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/gadts@10780 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2010-11-09 08:21:44 +00:00
Jacques Le Normand
43a76b7b42
cleaned up typecore, made the location mandatory in type_cases
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/gadts@10779 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2010-11-09 07:11:08 +00:00
Jacques Le Normand
e494cfa4c4
small cleanup in unify
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/gadts@10777 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2010-11-09 06:49:21 +00:00
Jacques Garrigue
1bcd80bdf9
principality
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/gadts@10775 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2010-11-09 06:23:53 +00:00
Jacques Le Normand
4a4e69bf1b
fixed bug in parmatch.ml
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/gadts@10774 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2010-11-08 10:19:29 +00:00
Jacques Le Normand
36734b7536
cleaned up parmatch.ml
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/gadts@10773 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2010-11-08 09:58:09 +00:00
Jacques Garrigue
bf53838e2a
check GADT return type
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/gadts@10772 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2010-11-08 09:18:45 +00:00
Jacques Le Normand
1d3797436e
small cleanup
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/gadts@10770 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2010-11-08 08:54:26 +00:00
Jacques Le Normand
fbecef283e
fixed bug in parmatch
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/gadts@10769 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2010-11-08 08:43:57 +00:00
Jacques Le Normand
c17e2ffeda
fragile check now works with gadts
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/gadts@10768 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2010-11-08 08:11:07 +00:00
Jacques Garrigue
ede1f3fcef
only consider variables appearing in parameters
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/gadts@10767 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2010-11-08 08:10:18 +00:00
Jacques Le Normand
5de2dedc1c
updated parmatch.ml to new Type_variant type_kind
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/gadts@10765 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2010-11-08 07:38:46 +00:00
Jacques Le Normand
ff78b8ee75
exhaustiveness check has been _completely_ rewritten
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/gadts@10764 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2010-11-08 07:34:09 +00:00
Jacques Garrigue
f368f4e0d5
allow variance in GADTs
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/gadts@10763 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2010-11-08 06:59:46 +00:00
Jacques Le Normand
916a46a4ad
improved principal
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/gadts@10760 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2010-11-05 04:15:22 +00:00
Jacques Le Normand
8728758793
fixed small bug in typecore
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/gadts@10758 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2010-11-01 08:18:27 +00:00
Jacques Le Normand
9aa498aa17
Complete propagation to patterns
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/gadts@10757 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2010-11-01 08:06:43 +00:00
Jacques Le Normand
5244860f3f
local_constraint flag now works
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/gadts@10756 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2010-11-01 07:10:37 +00:00
Jacques Le Normand
6fd8a9a590
using old unification when there are no local constraints
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/gadts@10755 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2010-11-01 05:33:29 +00:00
Jacques Le Normand
6f151a0f95
environment local constraint marker
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/gadts@10754 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2010-11-01 05:09:36 +00:00
Jacques Le Normand
ec375d6e40
principal works better now
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/gadts@10753 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2010-10-31 03:20:51 +00:00
Jacques Le Normand
6a384f2536
fixed bug in mcomp and made it more refined
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/gadts@10752 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2010-10-29 08:23:33 +00:00
Jacques Le Normand
3aa828735d
existentials now created at the pattern level
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/gadts@10751 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2010-10-29 06:54:24 +00:00
Jacques Le Normand
def32e279f
performs a little better for principality
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/gadts@10750 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2010-10-28 09:49:16 +00:00
Jacques Le Normand
c6f6312d36
fixed bug in unification
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/gadts@10749 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2010-10-28 04:16:10 +00:00
Jacques Le Normand
f75820792d
mcomp is now smarter
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/gadts@10748 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2010-10-27 11:16:21 +00:00
Jacques Le Normand
fad8e4de6f
fixed bug in exhaustiveness check
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/gadts@10747 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2010-10-27 09:52:38 +00:00
Jacques Le Normand
4c86d56280
fixed bug
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/gadts@10746 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2010-10-27 09:08:14 +00:00
Jacques Garrigue
7b77119b04
partial instances
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/gadts@10745 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2010-10-27 08:04:14 +00:00
Jacques Le Normand
7f2fa29cf9
local unification now goes from oldest newtype to newest newtype; in practice this has little effect. Cleaned up unification a little
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/gadts@10744 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2010-10-26 04:34:09 +00:00
Jacques Le Normand
c2777a43d0
merged with trunk. specifically, merged with implicit unpack patch
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/gadts@10742 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2010-10-25 08:19:48 +00:00
Jacques Le Normand
43ffa5d997
fixed recursive local constraints bug
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/gadts@10741 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2010-10-25 06:37:29 +00:00
Jacques Le Normand
a82f06e4c7
added recursive check for local constraint
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/gadts@10740 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2010-10-25 05:25:33 +00:00
Jacques Garrigue
ce605c042a
merge branches/implicit-unpack + update camlp4
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@10738 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2010-10-21 23:59:33 +00:00
Jacques Le Normand
87898cb3e9
internally, we can now refer to constructors with the help of their type, thus avoiding shadowing
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/gadts@10737 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2010-10-21 08:17:17 +00:00
Jacques Le Normand
10f670297c
added lookup of constructors by type in env.ml and specification of constructors types in Ppat_construct
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/gadts@10736 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2010-10-21 07:53:39 +00:00
Jacques Le Normand
304dba8a0f
removed Type_variant, fixed bug in GADT exhaustive check
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/gadts@10734 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2010-10-21 04:02:02 +00:00
Jacques Le Normand
fb8e495b4a
small cleanup
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/gadts@10732 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2010-10-20 06:07:04 +00:00
Jacques Le Normand
937da0b0df
fixed small bug in mcomp
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/gadts@10731 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2010-10-20 05:57:03 +00:00
Jacques Le Normand
f50f2825e0
fixed bug in simple exhaustiveness check
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/gadts@10730 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2010-10-20 05:05:05 +00:00
Jacques Le Normand
3f6f377cc0
fixed bug in gadt exhaustiveness check
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/gadts@10729 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2010-10-20 04:24:09 +00:00
Jacques Le Normand
71b84693af
open objects and variants are now unified exactly in the same way as before the gadt extension
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/gadts@10728 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2010-10-19 07:11:25 +00:00
Jacques Le Normand
d99cdce090
concrete objects can now add and use local constraints
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/gadts@10727 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2010-10-19 06:10:33 +00:00
Jacques Le Normand
2960603086
fixed match case unused. Not sure if solution is correct, will ask later
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/gadts@10726 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2010-10-19 05:57:45 +00:00
Jacques Le Normand
2d6d4097c7
fixed bug where local constraints were used with objects
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/gadts@10725 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2010-10-19 05:41:57 +00:00
Jacques Le Normand
a1910000e3
fixed bug in syntax extension. Made unification of variants and objects local. Removed personal comments
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/gadts@10724 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2010-10-19 05:24:36 +00:00
Jacques Le Normand
90a6348480
added syntactic sugar for mixing newtypes and polytypes
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/gadts@10721 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2010-10-18 04:54:24 +00:00
Jacques Le Normand
503b1b3a33
fixed bug in parmatch.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/gadts@10720 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2010-10-16 06:28:44 +00:00
Jacques Le Normand
7120d35ede
exhaustiveness check is working. An algorithm te check compatibility has been implemented for use during unification. For example, int is incompatible with bool and (int,bool) is incompatible with (int,int)
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/gadts@10719 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2010-10-16 06:09:25 +00:00
Jacques Le Normand
59aac4bda6
fixed bug for ident substitution in gadt exhaustion check. Optimized exhaustion check.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/gadts@10712 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2010-10-07 09:08:15 +00:00
Jacques Garrigue
30ca9d3bbe
use row for objects in eqtype
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/gadts@10711 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2010-10-07 09:07:13 +00:00
Jacques Le Normand
6095a598af
fixed bug in ctype where the existential type declaration was not added to the environment
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/gadts@10710 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2010-10-07 08:45:37 +00:00
Jacques Le Normand
5333f52d7c
moved things into constructor_description
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/gadts@10709 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2010-10-07 08:31:59 +00:00
Jacques Le Normand
dbfe9c5040
exhaustiveness checking for GADTs is now as complete as I am going to get
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/gadts@10708 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2010-10-07 07:30:11 +00:00
Jacques Le Normand
ffc7d7ccec
first implementation of gadt friendly pattern exhaustiveness check. It is incomplete and untested. Also, some types are now incompatible
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/gadts@10707 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2010-10-07 07:12:50 +00:00
Jacques Le Normand
4d5f7f2af5
fixed small bug for levels of reified types in patterns and cleaned up ctype
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/gadts@10704 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2010-10-04 08:38:22 +00:00
Jacques Le Normand
b4259503a4
removed variance from ellided type variables on the premise that they will only be used with GADTs, which are as of now invariant. fixed just introduced transl_declaration bug
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/gadts@10700 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2010-10-01 05:43:41 +00:00
Jacques Le Normand
fb31d60908
reverted transl_simple_type to its original definition in revision 1660 and used narrow and widen instead
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/gadts@10699 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2010-10-01 04:57:43 +00:00
Jacques Le Normand
7fa09d99e3
type equality for objects seem to change slightly with this new unification algorithm
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/gadts@10696 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2010-09-30 07:46:10 +00:00
Jacques Le Normand
3d167a90ec
one more time
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/gadts@10694 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2010-09-28 05:48:37 +00:00
Jacques Le Normand
040c184c21
# patterns further fix
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/gadts@10693 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2010-09-28 05:16:01 +00:00
Jacques Le Normand
12e40d494b
can now handle # patterns
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/gadts@10692 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2010-09-28 05:02:47 +00:00
Jacques Le Normand
b78320d2b8
cleaned up most whitespace/newline additions
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/gadts@10691 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2010-09-27 06:24:35 +00:00
Jacques Le Normand
b2c9e42361
fixed bug, ocamlopt now works
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/gadts@10690 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2010-09-27 05:38:32 +00:00
Jacques Le Normand
790d987be5
small cleanup
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/gadts@10688 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2010-09-22 08:48:33 +00:00
Jacques Le Normand
5a750b3e54
existentials are now treated correctly in patterns
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/gadts@10687 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2010-09-22 07:52:36 +00:00
Jacques Le Normand
10214937fe
fixed several bugs, bootstrap finally works!
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/gadts@10686 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2010-09-22 07:04:22 +00:00
Jacques Le Normand
0d03cf9e9b
do not use univars in fixed instances
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/gadts@10685 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2010-09-21 07:25:08 +00:00
Jacques Le Normand
a8a5d86f67
made type parameters ellidable in type declarations
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/gadts@10684 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2010-09-21 05:30:25 +00:00
Jacques Le Normand
4524b78b65
fixed bug when checking tuples
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/gadts@10683 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2010-09-19 05:12:32 +00:00
Jacques Le Normand
56624533fb
switched to abstract types, still needs work on exhaustion type. the code needs to be cleaned up. printfs need to be removed
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/gadts@10682 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2010-09-19 04:55:40 +00:00
Jacques Le Normand
8fc4a75a01
unbound parameter fix
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/gadts@10681 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2010-09-13 06:18:22 +00:00
Jacques Le Normand
415592ed0c
minor changes
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/gadts@10680 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2010-09-13 05:31:55 +00:00
Jacques Le Normand
6de25fef2f
first commit
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/gadts@10679 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2010-09-13 05:28:30 +00:00
Jacques Garrigue
4fd6cd8275
use free univars for explicit polymorphic types
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/gadts@10663 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2010-08-31 06:34:43 +00:00
Damien Doligez
575555eecd
merge changes from branching of 3.12 to release/3.12.0
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@10643 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2010-08-02 14:37:22 +00:00
Xavier Clerc
ffa66ded92
PR#4964: parenthesized names for infix functions in annot files
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@10486 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2010-05-31 13:18:11 +00:00
Jacques Garrigue
bcb5a6b669
error reporting
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@10458 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2010-05-24 06:52:16 +00:00
Alain Frisch
8ae65cc68c
Keep location on value declarations.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/located_errors@10456 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2010-05-21 15:45:52 +00:00
Jacques Garrigue
05ce8f5414
improve error messages for type declaration mismatch
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@10455 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2010-05-21 15:13:47 +00:00
Alain Frisch
baceb82d5c
Keep location on type declarations.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/located_errors@10454 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2010-05-21 15:06:01 +00:00
Alain Frisch
9cc00da0d0
Need to check record representation as well.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@10452 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2010-05-21 12:42:34 +00:00
Damien Doligez
5e67123bf6
PR#4975: spelling mistakes "overriden" and "informations"
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@10450 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2010-05-21 12:00:49 +00:00
Jacques Garrigue
1772822057
PR#4478: better error messages for type definition mismatches
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@10447 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2010-05-21 03:36:52 +00:00
Jacques Garrigue
9c79ec9120
fix PR#5057, must adjust levels in row fields
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@10446 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2010-05-21 01:26:16 +00:00
Alain Frisch
f4d1cef51d
Error narrowing for class type lookups.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@10422 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2010-05-18 17:25:02 +00:00
Alain Frisch
fb4a2f7070
Cleanup.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@10421 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2010-05-18 17:21:21 +00:00
Alain Frisch
635cde5279
Error narrowing for class lookups.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@10420 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2010-05-18 17:20:05 +00:00
Alain Frisch
ccb1381991
Error narrowing for module type lookups.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@10419 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2010-05-18 17:18:24 +00:00
Alain Frisch
5d64f0e504
Error narrowing for module lookups.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@10418 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2010-05-18 17:14:31 +00:00
Alain Frisch
c81ff4bb19
Improve error narrowing, and (partially) fix #5046 .
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@10417 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2010-05-18 16:46:46 +00:00
Pierre Weis
8625a5c6f1
Simpler implementation of error narrowing. Factorization of lid finding code.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@10378 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2010-05-05 20:51:54 +00:00
Pierre Weis
f14587620c
Generalization of unbound identier error narrowing to all kind of qualified
...
idents (constructors, labels, types, classes).
Bump version.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@10365 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2010-05-04 16:26:33 +00:00
Alain Frisch
ad42f8a8f6
Extend nondep_type to deal with 1st class modules.
...
For instance, in:
module F(X : sig module type S end) = struct type t = (module X.S) end
include F(struct module type S = sig end end)
the resulting type t is turned into an abstract type.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@10336 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2010-04-30 11:59:50 +00:00
Jacques Garrigue
8e60370dbb
distinguish conflicting identifiers with same name (PR#4716)
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@10333 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2010-04-30 07:11:27 +00:00
Jacques Garrigue
80b48b7a69
make duplicate definitions a warning rather than an error
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@10332 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2010-04-30 06:26:51 +00:00
Jacques Garrigue
b2730e0f81
check for duplicate labels and constructors across recursive type definitions (PR#3601)
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@10331 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2010-04-30 05:59:40 +00:00
Jacques Garrigue
7312e2e22c
fix order for PR#5036
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@10330 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2010-04-30 05:12:44 +00:00
Jacques Garrigue
7b8e39b8ea
fix PR#4884, using same technique as rev. 8888
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@10329 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2010-04-30 03:07:35 +00:00
Jacques Garrigue
a51b04dec7
remove spurious code
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@10328 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2010-04-30 01:56:21 +00:00
Xavier Leroy
236ffb982a
PR#5036: check for nongeneralized type variables in "module type of".
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@10321 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2010-04-28 07:53:19 +00:00
Jacques Garrigue
3810a32f6f
fix PR#5037
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@10320 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2010-04-28 04:54:57 +00:00
Damien Doligez
bfdf476b69
merge last changes from 3.11 branch (rev 10307)
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@10309 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2010-04-26 12:54:11 +00:00
Jacques Garrigue
7f758d5c1f
fix PR#5026: recursive type checks should use _opt versions
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@10306 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2010-04-26 08:55:20 +00:00
Xavier Leroy
b6de85daad
Reserve identifiers below 1000 for typing/predef.ml. This facilitates
...
extensions and patches like MetaOCaml.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@10288 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2010-04-21 08:13:10 +00:00
Xavier Leroy
b6f408ecc6
PR#4996: Subst.compose revised; Tbl.fold added.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@10285 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2010-04-20 14:11:28 +00:00
Jacques Garrigue
49a83dd965
merge branches/sigsubst 9626:10205
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@10263 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2010-04-17 14:45:12 +00:00
Jacques Garrigue
ee36e1d1c5
merge branches/override
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@10250 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2010-04-08 03:58:41 +00:00
Xavier Leroy
ab550592ef
Adding "module type of <module-expr>" in the class of <module-type>.
...
Merge of branches/moduletypeof -r 9636:10226
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@10227 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2010-04-02 12:53:33 +00:00
Damien Doligez
04b1656222
clean up spaces and tabs
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@9547 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2010-01-22 12:48:24 +00:00
Damien Doligez
bdc0fadee2
merge changes from release/3.11.1 to release/3.11.2
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@9540 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2010-01-20 16:26:46 +00:00
Pierre Weis
341d13f279
Error report in case of -strict-sequence has been triggered.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@9466 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2009-12-09 09:32:39 +00:00
Pierre Weis
700da01338
Adding the -strict-sequence option.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@9464 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2009-12-09 09:17:12 +00:00
Pierre Weis
7e68ecf265
Typing %, noop conversion.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@9432 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2009-11-30 22:02:08 +00:00
Damien Doligez
b2090f66b0
added warning 28: wildcard arg to constant constructor
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@9424 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2009-11-19 12:27:15 +00:00
Alain Frisch
89107ae6ff
Merge the letopenin branch in (svn merge -r9386:9397 /svn/ocaml/branches/letopenin) and update Changes.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@9406 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2009-11-01 21:52:29 +00:00
Alain Frisch
1e5b4a4857
Merge first class modules: svn merge -r 9369:9396 $caml/branches/fstclassmod.
...
Adapt the Changes file. Bump magic numbers. Bootstrap.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@9397 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2009-10-26 10:53:16 +00:00
Jacques Garrigue
023fda3fb4
merge polymorphic recursion
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@9396 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2009-10-26 07:11:36 +00:00
Alain Frisch
db5a053fb4
Import changes from the newtypein branch (svn merge -r 9361:9367 https://frisch@yquem.inria.fr/caml/svn/ocaml/branches/newtypein ).
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@9368 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2009-10-06 12:51:42 +00:00
Xavier Leroy
9c6c8fb47e
As discussed at the latest consortium meeting:
...
Syntactic sugar {x} for {x=x} in record expressions and patterns.
Syntax { lbl=pat; _ } to mark record patterns where the user explicitly wants not to list all labels.
Warning (activated by E, the fragile match warning) to signal record patterns without '; _' that fail to list all labels.
To be done: adjust Camlp4 parser accordingly.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@9331 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2009-09-12 12:41:07 +00:00
Pierre Weis
25d7f8fdc1
Refined error message for unbound identifiers: if M.ident is unbound and M is unbound, then unbound module M is reported.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@9326 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2009-09-04 16:19:35 +00:00
Damien Doligez
71b94fa3e8
merge changes from ocaml3111rc0 to ocaml3111
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@9319 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2009-07-20 11:51:50 +00:00
Xavier Leroy
11217e8f70
Added option -no-app-funct to turn off applicative functors
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@9316 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2009-07-15 14:06:37 +00:00
Damien Doligez
ed32f569e3
merge changes from ocaml3110 to ocaml3111rc0
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@9270 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2009-05-20 11:52:42 +00:00
Jacques Garrigue
7795eafa89
use TypeHash for nondep_type, and add env to nondep_mty
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@9263 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2009-05-19 08:17:02 +00:00
Jacques Garrigue
44a068fc92
fix PR#4730
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@9170 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2009-03-02 06:41:07 +00:00
Damien Doligez
1f95b17570
merge changes from 3.10.2merged to 3.11.0
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@9153 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2008-12-03 18:09:09 +00:00
Damien Doligez
2b0441401a
merge changes between 3.10.2 and the end of branch 3.10
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@9079 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2008-10-08 13:09:39 +00:00
Damien Doligez
0c26c850b3
"invalid module name" becomes a warning
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@9074 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2008-10-06 13:53:54 +00:00
Damien Doligez
adfab743f5
PR#4607 reject invalid source file names
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@9016 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2008-09-10 15:03:33 +00:00
Xavier Leroy
93690a06ec
PR#4557: use Path.isfree rather than Path.head since the latter is ill-defined on applicative paths
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@8988 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2008-08-07 09:29:22 +00:00
Xavier Leroy
2932b18875
PR#4512: check early for bad recursive type definitions
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@8987 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2008-08-07 08:39:14 +00:00
Xavier Leroy
22edd41120
PR#4578, PR#4266: for 'include' constructs, recursively approximate instead of fully elaborating in initial environment.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@8986 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2008-08-07 08:25:09 +00:00
Xavier Leroy
636d845eed
PR#4261: expand abbreviations one at a time, because we do not know whether expanding to HNF will terminate.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@8985 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2008-08-07 08:22:15 +00:00
Damien Doligez
7ca1d89250
amelioration des annotations
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@8958 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2008-07-29 15:42:44 +00:00
Alain Frisch
1ba87b442b
Output references to the native version of the primitives in ocamlopt
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@8930 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2008-07-24 05:35:22 +00:00
Jacques Garrigue
671013f72a
distingue expansions publiques et privees dans le cache
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@8922 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2008-07-19 02:13:09 +00:00
Jacques Garrigue
b190aa533a
reset abbreviation cache when calling expand_abbrev after expand_abbrev_opt
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@8920 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2008-07-18 13:45:02 +00:00
Jacques Garrigue
51566a5f0c
merge ground coercions
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@8919 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2008-07-18 02:48:38 +00:00
Jacques Garrigue
f2b6a63ecc
allow aliases on private rows
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@8918 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2008-07-18 02:17:54 +00:00
Michel Mauny
22b152ca2f
Corrected a - fatal - typo.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@8917 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2008-07-15 18:11:46 +00:00
Michel Mauny
6ba024a12e
Add lazy patterns.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@8906 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2008-07-09 13:03:38 +00:00
Michel Mauny
6373550a1e
Stop multi-parameter optimization when the pattern is refutable. Now, ((fun true -> fun x -> x) false) correctly fails.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@8890 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2008-06-16 09:08:55 +00:00
Jun FURUSE / 古瀬 淳
db0afa58a4
workaround for the problem of optional argument type parsing caused when we redefine option type
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@8888 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2008-06-11 23:47:12 +00:00
Alain Frisch
8e03390daf
Cleanup.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@8878 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2008-04-22 15:45:55 +00:00
Damien Doligez
04aa158cb6
merge changes from 3.10.1 to 3.10.2
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@8823 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2008-02-29 14:21:22 +00:00
Damien Doligez
cb40742e75
PR#4052 accept _ for all constructors
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@8789 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2008-01-22 17:08:48 +00:00
Alain Frisch
f952dd7d11
Fix ocamlc -dtypes.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@8779 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2008-01-21 08:42:14 +00:00
Damien Doligez
9ea5edac9a
merge changes 3.10.0 -> 3.10.1
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@8768 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2008-01-11 16:13:18 +00:00
Jacques Garrigue
f0bbfb7043
sous-typage des abbreviations privees et methodes polymorphes
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@8697 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2007-11-30 12:37:45 +00:00
Pierre Weis
99c5f87045
Le predicat is_float utilise expand_head_opt pour optimiser aussi les champs de records dont le type est une abbreviation privee.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@8685 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2007-11-28 22:30:25 +00:00
Pierre Weis
2cf7ed4450
Arguments homogenes pour le predicat private_flags.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@8684 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2007-11-28 22:27:35 +00:00
Pierre Weis
3013dc544d
Documentation.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@8683 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2007-11-28 22:26:05 +00:00
Jacques Garrigue
e1bf691bf1
PR#4453
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@8526 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2007-11-19 13:15:51 +00:00
Pierre Weis
2a99b8737b
Expanding the usual compiler's type-based optimisations to private abbreviations.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@8474 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2007-11-01 18:36:43 +00:00
Jacques Garrigue
bbc5f6891a
strengthen private abbreviations too
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@8438 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2007-10-19 13:25:21 +00:00
Jacques Garrigue
8eb8c5bc27
Ptyp_class a une rangee
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@8437 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2007-10-18 03:58:41 +00:00
Jacques Garrigue
122074d47c
prive < (public) abstract !
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@8436 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2007-10-18 03:58:07 +00:00
Jacques Garrigue
8c5ed4dd1f
corrige rangees privees apres introduction abbreviations privees par PW
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@8435 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2007-10-18 03:38:28 +00:00
Pierre Weis
59e0723455
It works: compilers and camlp4 are fully bootstrapped. The ast magic number is not yet changed.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@8418 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2007-10-09 10:29:37 +00:00
Damien Doligez
4167841b16
fusion de la version 3.10.0
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@8416 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2007-10-08 14:19:34 +00:00
Damien Doligez
1dd68ccf50
ajout des annotations pour variables et appels terminaux
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@8232 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2007-05-16 08:21:41 +00:00
Jacques Garrigue
4f6daca4b2
error message
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@7936 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2007-02-27 04:54:05 +00:00
Jacques Garrigue
2acec46b9e
fix bug 2007-02-27 by Lukasz Stafiniak
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@7935 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2007-02-27 04:38:11 +00:00
Jacques Garrigue
68006b7571
fix bug 2007-02-27 by Lukasz Stafiniak
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@7934 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2007-02-27 03:46:19 +00:00
Nicolas Pouillard
81cfc29b31
Better handling of multiple extensions (foo.d.cmo, foo.p.cmx...)
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@7909 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2007-02-23 13:44:51 +00:00
Jacques Garrigue
af7cc2dcb8
fix Carette's bug 2007-02-18
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@7884 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2007-02-19 00:49:16 +00:00
Jacques Garrigue
d78838fdd3
typo
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@7876 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2007-02-16 11:18:54 +00:00
Jacques Garrigue
4024589fba
subtyping errors
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@7875 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2007-02-16 11:18:36 +00:00
Jacques Garrigue
033ce4b17a
Do not reset type variable names in Unbound_type_var (PR#4191).
...
Avoid breaking PR#1412.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@7780 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2006-12-27 14:41:23 +00:00
Jacques Garrigue
a4fe6ac960
keep sharing when not using -principal
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@7778 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2006-12-21 12:07:53 +00:00
Pierre Weis
236baa6ee4
Encapsulation of system specific exports in module Printf.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@7735 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2006-11-17 08:34:05 +00:00
Jacques Garrigue
84b420f2fe
expand only once in update_level
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@7713 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2006-11-02 02:19:49 +00:00
Jacques Garrigue
ec74077dfa
name recursion for private types
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@7712 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2006-11-02 01:10:04 +00:00
Pierre Weis
5770271304
Typechecking of user's defined readers.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@7705 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2006-10-24 22:07:47 +00:00
Pierre Weis
ba75b851b4
Format string now typecheck to format6.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@7704 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2006-10-24 21:16:10 +00:00
Pierre Weis
7e2072cfb7
Type format4 is no more a predefined type.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@7702 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2006-10-24 20:54:58 +00:00
Pierre Weis
0be3884f18
Introducing format6 as a built in type.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@7701 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2006-10-24 20:42:41 +00:00
Xavier Leroy
f976176626
PR#4132: faster type-checking of module-intensive programs
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@7689 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2006-10-13 12:56:28 +00:00
Pierre Weis
ebd5102f96
Format string typing needed adjustment after correction of bug 0004119.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@7679 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2006-10-04 10:03:16 +00:00
Luc Maranget
6c05350ca4
Corrrect fragile matching
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@7634 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2006-09-21 14:54:54 +00:00
Damien Doligez
fbea66a95e
fusion des changements 3.09.2 -> 3.09.3
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@7619 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2006-09-20 11:14:37 +00:00
Jacques Garrigue
7278d4c343
fix PR3999/4082
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@7563 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2006-08-11 22:40:19 +00:00
Jacques Garrigue
6f6b1849c5
-rectypes obligatoire pour les dependences
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@7444 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2006-06-26 09:38:06 +00:00
Jacques Garrigue
c1743d099f
PR#4026
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@7438 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2006-06-12 07:33:14 +00:00
Jacques Garrigue
5d7edf5d8c
contravariance bug in with constraints for private rows
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@7386 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2006-04-21 06:18:51 +00:00
Jacques Garrigue
b06093c109
fix PR#4002
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@7384 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2006-04-18 00:28:12 +00:00
Damien Doligez
1279ab4b76
fusion des changements 3.09.1 -> 3.09.2
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@7382 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2006-04-16 23:28:22 +00:00
Pierre Weis
b9b6e0fa2c
Preparing printf positional specifications.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@7373 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2006-04-05 11:46:47 +00:00
Jacques Garrigue
602146f892
add virtual instance variables
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@7372 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2006-04-05 02:28:13 +00:00
Jacques Garrigue
12349a56be
fix PR#3946
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@7316 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2006-01-06 02:25:38 +00:00
Jacques Garrigue
24469ed930
PR#3916
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@7315 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2006-01-06 02:16:45 +00:00
Jacques Garrigue
1e003d6855
dead code
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@7314 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2006-01-06 02:16:24 +00:00
Damien Doligez
125ea40d4c
fusion 3.09.0 -> 3.09.1
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@7307 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2006-01-04 16:55:50 +00:00
Jacques Garrigue
86e7954b73
fix PR#3855
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@7232 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2005-11-14 08:07:12 +00:00
Damien Doligez
cf7bc7b781
ajout .mli
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@7167 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2005-10-26 12:39:02 +00:00
Jacques Garrigue
728fbc648e
must strengthen private row types
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@7091 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2005-09-28 07:18:30 +00:00
Jacques Garrigue
e8927c7a5f
fix bug Wohlwend caml-list 2005-09-19
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@7058 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2005-09-20 04:08:49 +00:00
Jacques Garrigue
c54747bf82
warn about useless with in record
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@7051 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2005-09-15 03:09:26 +00:00
Jacques Garrigue
f752003267
subtyping polymorphic variants
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@7024 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2005-08-19 03:50:12 +00:00
Jacques Garrigue
5bef38ba93
bug in object subtyping + subtyping forget constraints
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@7023 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2005-08-17 05:38:23 +00:00
Jacques Garrigue
c78bc94a7a
subtyping private types
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@7022 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2005-08-16 09:47:31 +00:00
Jacques Garrigue
83c0f7bb46
fix merge problems with 3.08.4 (PR#3758)
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@7020 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2005-08-16 00:48:56 +00:00
Damien Doligez
a4a3c10e70
fusion des modifs de 3.08.4
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@7019 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2005-08-13 20:59:37 +00:00
Xavier Leroy
0ba3106399
Retour en arriere sur la simplification des signatures inferees (fix du PR#3545 du 2005-08-02), qui est completement bugge
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@7012 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2005-08-08 09:41:52 +00:00
Jacques Garrigue
5640bb83d7
bug in private rows
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@7011 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2005-08-08 05:40:52 +00:00
Xavier Leroy
754bc39c90
Systematiser la simplification des signatures inferees (PR#3545)
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@7005 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2005-08-02 09:49:30 +00:00
Xavier Leroy
f55d676d2c
Interdire les references Foo.x lorsqu'on compile foo.ml ou foo.mli (PR#3100, 3304, 3457)
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@6998 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2005-07-31 12:03:40 +00:00
Pierre Weis
2815135617
Char ranges in format strings where not handled properly (wrong parsing).
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@6978 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2005-07-22 12:11:26 +00:00
Jacques Garrigue
8c87123e86
portee des variables de type
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@6977 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2005-07-22 06:42:36 +00:00
Jacques Garrigue
c9fb98c676
error message
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@6976 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2005-07-22 04:30:19 +00:00
Jacques Garrigue
8e25cec9c4
definition plus claire du partage des variables de types
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@6975 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2005-07-22 04:11:47 +00:00
Jacques Garrigue
d21579ac02
fix potential bug
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@6969 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2005-07-12 23:50:45 +00:00
Jacques Garrigue
57cf3cecd4
fix PR#3638
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@6967 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2005-07-12 11:38:45 +00:00
Jacques Garrigue
c7a3c042df
fix PR#3705
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@6966 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2005-07-12 01:07:09 +00:00
Jacques Garrigue
b20551ecda
check variance for row-variable too!
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@6964 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2005-07-11 08:07:59 +00:00
Jacques Garrigue
3aa312d98b
do not force presence for variants with only 1 constructor
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@6911 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2005-06-13 01:11:02 +00:00
Jacques Garrigue
5a34c088cc
when using -rectypes, expand abbreviations to detect cycles
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@6905 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2005-06-03 01:42:00 +00:00
Jacques Garrigue
c681a7edcf
fix PR#3577 (only check variance for (semi-)abstract types)
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@6832 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2005-04-05 09:07:42 +00:00
Jacques Garrigue
827d03d59f
bug in type_approx
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@6829 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2005-04-04 04:34:53 +00:00
Jacques Garrigue
eb57cd1912
pas de conflit avec 3.08.3
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@6826 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2005-03-25 00:42:54 +00:00
Damien Doligez
e6007f6057
fusion des changements jusqu'a 3.08.3
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@6824 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2005-03-24 17:20:54 +00:00
Damien Doligez
6dea6b4af8
meilleurs messages d'erreur pour let rec
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@6822 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2005-03-24 12:19:54 +00:00
Jacques Garrigue
ef396b4e5a
merge fixedtypes branch
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@6821 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2005-03-23 03:08:37 +00:00
Luc Maranget
d945bc62f4
Match compiler : prune context for all mutable fields
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@6809 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2005-03-11 10:12:05 +00:00
Jacques Garrigue
36f117f200
fix poly method subtyping
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@6806 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2005-03-10 08:20:08 +00:00
Jacques Garrigue
ca3abc51a8
fix poly method printing
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@6805 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2005-03-10 08:19:22 +00:00
Pierre Weis
280dcb3097
Correcting bug about erroneous erro reporting in case of wrong
...
conversions in format strings.
Static and dynamic messages about wrong format strings are now very
similar in printf.ml, scanf.ml, and typecore.ml.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@6802 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2005-03-04 14:51:31 +00:00
Jacques Garrigue
a136415ab1
do not retype private types in as-patterns
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@6790 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2005-02-18 13:38:00 +00:00
Jacques Garrigue
31d18ccc59
use explicit variance for private types
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@6780 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2005-02-06 01:37:33 +00:00
Jacques Garrigue
6d23fc5722
make private types abstract for variance
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@6734 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2004-12-10 01:52:12 +00:00
Jacques Garrigue
2b9fbaf3c0
print variance only when needed
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@6733 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2004-12-09 12:51:55 +00:00
Jacques Garrigue
aebbdaaa11
dead code
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@6732 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2004-12-09 12:45:10 +00:00
Jacques Garrigue
972209dd6b
fix variance bug
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@6731 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2004-12-09 12:40:53 +00:00
Pierre Weis
b774951705
Correcting bug concerning incomplete (meta)-format strings.
...
More regular error functions (coherence with printf).
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@6724 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2004-12-07 06:13:06 +00:00
Damien Doligez
1971a6ba83
changements sur les warnings
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@6720 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2004-11-30 18:57:04 +00:00
Jacques Garrigue
0edba97cf6
new warning for black holes
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@6703 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2004-11-29 02:27:25 +00:00
Luc Maranget
1209356ca6
avoid -W Y warnings in some source I wrote
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@6696 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2004-11-25 12:44:33 +00:00