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 Le Normand
|
f9f3ae5bc7
|
added test file for gadts for the testsuite
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/gadts@10739 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
|
2010-10-22 04:27:14 +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
|
61d816352c
|
forgot this file in last commit
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/gadts@10735 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
|
2010-10-21 07:24:46 +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
|
f46f78fd99
|
reverted boot/ocamlc and boot/ocamldep to revision 10660
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/gadts@10733 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
|
2010-10-20 06:47:48 +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
|
7f749ff335
|
one more time
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/gadts@10723 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
|
2010-10-18 07:29:04 +00:00 |
Jacques Le Normand
|
d5f16fae7a
|
fixed small bug in syntax extension
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/gadts@10722 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
|
2010-10-18 07:26:46 +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
|
6f05398661
|
should have been in last commit
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/gadts@10701 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
|
2010-10-01 05:44:11 +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
|
6b47423629
|
ocamldoc now updated. odoc_sig.ml was changed from revision 1660
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/gadts@10698 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
|
2010-10-01 03:44:47 +00:00 |
Jacques Le Normand
|
7af69814ac
|
camlp4 now updated, but completely untested. I reverted camlp4 back to revision 10660 and then changed it from there
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/gadts@10697 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
|
2010-10-01 02:46:07 +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 |