Commit Graph

121 Commits (c3b08c91496360d974973cea5cf809b1d8b8e83d)

Author SHA1 Message Date
Fabrice Le Fessant d39d43e55f merge with branch bin-annot
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@12516 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2012-05-30 14:52:37 +00:00
Xavier Clerc acc19ff167 Removal of unnecessary "rec" clauses (to please warning #39).
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@12508 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2012-05-29 13:41:14 +00:00
Alain Frisch a0a14c08fa Enable and fix more warnings.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@12498 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2012-05-29 11:47:28 +00:00
Alain Frisch ab918e2078 Detect unused exception declarations (#5524).
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@12195 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2012-03-06 19:47:07 +00:00
Jacques Garrigue 6c78f42d36 merge branches/gadts-devel
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@11284 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2011-11-24 09:02:48 +00:00
Jacques Garrigue bde86b194e fix PR#5332
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@11170 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2011-08-09 13:59:41 +00:00
Jacques Garrigue 9dc661c3bf merge branches/gadts
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@11160 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2011-07-29 10:32:43 +00:00
Damien Doligez 3b507dd1aa renaming of Objective Caml to OCaml and cleanup of copyright headers
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@11156 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2011-07-27 14:17:02 +00:00
Damien Doligez 90664f4ea1 uniform .ignore system
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@11133 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2011-07-20 15:37:36 +00:00
Jacques Garrigue 852558d482 fix record pattern-matching; sort records in typed tree
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/gadts@11091 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2011-06-15 09:26:30 +00:00
Jacques Garrigue 3345086867 backport of fix from gadts-devel
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/gadts@10924 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2011-01-07 07:17:38 +00:00
Jacques Le Normand 5a99cea6a3 renammed a function
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/gadts@10817 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2010-11-18 06:56:02 +00:00
Jacques Le Normand 9a97dd50c9 small cleanup
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/gadts@10816 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2010-11-18 06:23:00 +00:00
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