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
|
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
|
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
|
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 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 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
|
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
|
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
|
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
|
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
|
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
|
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
|
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
|
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
|
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
|
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
|
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 |
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
|
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 |
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 |
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 |
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 |
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
|
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 |
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 |
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 |
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 |
Jacques Garrigue
|
ad6b860a9f
|
cleanup warnings
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@6681 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
|
2004-11-17 08:14:56 +00:00 |
Luc Maranget
|
111747916a
|
oups, commit too fast
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@6073 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
|
2004-01-16 14:09:30 +00:00 |
Luc Maranget
|
9b5364dc03
|
better (?) treatment of absent variants
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@6066 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
|
2004-01-09 13:12:17 +00:00 |
Jacques Garrigue
|
4234515e7c
|
ajout de Btype.row_field pour parmatch
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@6063 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
|
2004-01-06 13:41:40 +00:00 |
Jacques Garrigue
|
4e41ff1f98
|
optimise full_match
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@6062 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
|
2004-01-06 03:27:42 +00:00 |
Jacques Garrigue
|
dd73e90e9e
|
cleanup after export of Parmatch.pressure_variants
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@5781 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
|
2003-08-18 08:26:18 +00:00 |
Jacques Garrigue
|
2f14aa695a
|
traite filtres incomplets dans pressure_variants
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@5780 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
|
2003-08-15 01:35:24 +00:00 |
Luc Maranget
|
763fbac510
|
test d'exhaustivite plus efficace, sur une remarque de Jacques
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@5778 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
|
2003-08-14 09:12:56 +00:00 |