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 |
Jacques Garrigue
|
fe592824fc
|
ameliore? typage des variants
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@5777 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
|
2003-08-14 09:04:43 +00:00 |
Luc Maranget
|
239e19d849
|
erased a troublesome coment
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@5773 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
|
2003-08-12 12:13:02 +00:00 |
Jacques Garrigue
|
fa54cb2ae3
|
discard redundant cases in or-patterns
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@5771 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
|
2003-08-12 03:11:38 +00:00 |
Xavier Leroy
|
3e4bf9252b
|
Revu representation des declarations de type private
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@5643 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
|
2003-07-02 09:14:35 +00:00 |
Xavier Leroy
|
1fa763e0c5
|
Merge branch with recursive modules
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@5602 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
|
2003-06-19 15:53:53 +00:00 |
Luc Maranget
|
ca2bda6887
|
new warning, fragile match, qqs details
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@5538 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
|
2003-05-02 14:57:24 +00:00 |
Luc Maranget
|
76d5c7aee1
|
new warning, fragile match
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@5528 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
|
2003-05-02 09:57:53 +00:00 |
Xavier Leroy
|
7abcc8799e
|
Ajout des litteraux de type int32, nativeint, int64
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@5510 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
|
2003-04-25 12:27:31 +00:00 |