Commit Graph

343 Commits (96e7b2baa35fb48e8ca074854a7473dcc2a5947a)

Author SHA1 Message Date
Jérôme Vouillon 151e685171 Ajout de btype.ml{,i} (operations de bases sur les types)
Modification de Ctype.correct_levels


git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@1451 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1997-03-24 20:11:26 +00:00
Jérôme Vouillon 03f160c956 Ajout de btype.ml{,i} (operations de bases sur les types)
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@1450 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1997-03-24 20:11:22 +00:00
Daniel de Rauglaudre 3aa24aee87 Petite modif pour éviter les warnings pour les fonctions vides (qui
peuvent s'écrire syntaxiquement avec camlp4): ce n'est pas une info et
ça crée du "bruit d'erreur" dans les compilations.


git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@1420 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1997-03-21 07:14:34 +00:00
Jérôme Vouillon 58e8f3b8d0 Modification de Ctype.closed_schema
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@1412 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1997-03-18 21:06:28 +00:00
Jérôme Vouillon 6dc35f692d Modification de commentaires
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@1411 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1997-03-18 21:05:49 +00:00
Jérôme Vouillon 67764ada10 Ctype.substitute renomme en Ctype.apply
Simplification de closed_schema


git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@1410 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1997-03-18 21:05:27 +00:00
Jérôme Vouillon a8c282cbd5 Ctype.substitute renomme en Ctype.apply
Simplification de closed_schema
Prise en compte d'un possible echec de la fonction subst (exception
Cannot_apply pour Ctype.apply; Ctype.expand_abbrev leve l'exception
Cannot_expand en cas d'echec)
Bugs de Ctype.moregeneral


git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@1409 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1997-03-18 21:05:15 +00:00
Jérôme Vouillon 5cf4dd82e9 Correction d'un bug pour expansion des types generiques.
correct_level renomme en correct_levels et modifie.


git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@1397 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1997-03-14 15:19:48 +00:00
Jérôme Vouillon a08f9b10f1 Limitation du niveau des variables non generiques
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@1396 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1997-03-14 15:16:30 +00:00
Jérôme Vouillon 5a9f4d15d5 Support pour manipulation correcte des types apres l'inference
(generation de code, debugger, ...).


git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@1391 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1997-03-13 21:18:06 +00:00
Jérôme Vouillon 29f5e183fa Fonction Env.level : retourne le niveau maximal des constructeurs de
types contenu dans l'environnement.


git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@1390 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1997-03-13 21:16:44 +00:00
Jérôme Vouillon f65f319c32 Les abbreviations produites s'expansent en des types completement
generiques.


git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@1389 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1997-03-13 21:14:21 +00:00
Jérôme Vouillon ad4ef57431 Subst.type_expr copie systematiquement le type.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@1388 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1997-03-13 21:11:19 +00:00
Jérôme Vouillon bc6c077122 Bug de moregeneral.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@1375 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1997-03-12 17:41:34 +00:00
Jérôme Vouillon 79240af6cc La substitution n'etait pas appliquee dans certains cas...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@1373 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1997-03-12 10:26:58 +00:00
Xavier Leroy ff0a788227 Afficher "external foo ... = ..." au lieu de "val foo ... = ...".
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@1364 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1997-03-10 13:57:44 +00:00
Jérôme Vouillon b7e5b3dce5 Includecore.class_type renomme' en Includecore.class_types.
Erreur Class_type renommee en Class_types.
Utilisation de substitutions plutot que Ident.identify.


git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@1359 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1997-03-10 00:27:06 +00:00
Jérôme Vouillon db5ce507fc Erreur Class_type renommee en Class_types.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@1358 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1997-03-10 00:25:52 +00:00
Jérôme Vouillon b405e0582f Suppression de Ident.identity.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@1357 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1997-03-10 00:23:53 +00:00
Jérôme Vouillon 996d8e8d14 Includecore.class_type renomme' en Includecore.class_types.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@1356 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1997-03-10 00:23:13 +00:00
Jérôme Vouillon ce58e420c8 Subst.type_expr laisse le type inchange' si la substitution est
l'identite'.


git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@1355 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1997-03-10 00:21:57 +00:00
Jérôme Vouillon fe510f90a5 Modifications de commentaires.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@1354 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1997-03-10 00:19:08 +00:00
Jérôme Vouillon d5d2004750 Nettoyage de subst.ml.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@1353 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1997-03-09 19:08:14 +00:00
Jérôme Vouillon ceb1ac730d Quelques commentaires supplementaires.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@1352 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1997-03-09 18:42:51 +00:00
Jérôme Vouillon 751dcd48cc Nettoyage de nondep_type.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@1351 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1997-03-09 18:40:54 +00:00
Jérôme Vouillon 57ae4bb09b Nettoyage de nondep_type.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@1350 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1997-03-09 16:52:49 +00:00
Jérôme Vouillon 0e43b8c79f Bug d'affichage des variables non generiques.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@1349 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1997-03-09 14:22:24 +00:00
Jérôme Vouillon be33766263 Nettoyage de moregeneral et non_recursive_abbrev.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@1348 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1997-03-08 22:05:39 +00:00
Jérôme Vouillon 9198297d2a Composants mis dans le meme ordre que dans ctype.ml
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@1347 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1997-03-08 22:04:36 +00:00
Jérôme Vouillon faa7f35ec9 Ctype.make_nongen applique egalement sur le type des expressions
toplevel non generalisable, afin que les niveaux soient corrects lors
des appels de Ctype.moregeneral durant l'affichage du resultat de
l'evaluation.


git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@1346 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1997-03-08 22:03:32 +00:00
Xavier Leroy b72e959744 Suppression du ; optionnel, trop ambigu. La syntaxe est suffisamment confuse comme ca.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@1340 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1997-03-08 12:14:57 +00:00
Jérôme Vouillon 4dd64117e7 Info de debugage oubliee...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@1339 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1997-03-07 23:20:13 +00:00
Jérôme Vouillon 9ef5d04c53 check_nongen_schemes generalise egalement completement les types (tous les
niveaux mis a generique).


git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@1338 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1997-03-07 22:54:04 +00:00
Jérôme Vouillon 57fcf1fe2b Ctype.expand_root renomme en Ctype.expand_head
Ctype.closed_schema prend un parametre supplementaire (possibilite de
generaliser completement un type au passage)
Fonction is_generic et exception Nonlinear_abbrev supprimees


git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@1337 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1997-03-07 22:49:24 +00:00
Jérôme Vouillon 7c9257ee69 Plus de compression de chemin dans repr
Correction d'un bug de update_level
Ctype.expand_root renomme en Ctype.expand_head
Nettoyage de occur
Nettoyage (partiel) de moregeneral
Nettoyage de closed_schema. Prend maintenant un parametre
supplementaire (possibilite de generaliser completement un type au
passage)
Fonction is_generic et exception Nonlinear_abbrev supprimees


git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@1336 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1997-03-07 22:44:02 +00:00
Jérôme Vouillon b40b97137e Ctype.expand_root renomme en Ctype.expand_head
Les contraintes doivent etre de la forme 'a = t ou 'a est
effectivement un parametre
Ctype.closed_schema a un parametre supplementaire


git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@1334 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1997-03-07 22:42:48 +00:00
Jérôme Vouillon ce62aef99a Les contraintes doivent etre de la forme 'a = t ou 'a est
effectivement un parametre


git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@1333 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1997-03-07 22:31:33 +00:00
Jérôme Vouillon 3a88e177ed L'alias (t as 'a) peut etre utilise avec tout type t (pas seulement
objet et type construit).


git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@1331 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1997-03-07 22:26:29 +00:00
Jérôme Vouillon 2a44439fcd Les identificateurs n'etaient pas identifies "dans le bon sens".
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@1330 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1997-03-07 22:12:23 +00:00
Jérôme Vouillon 48991be706 Bug de generalisation.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@1329 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1997-03-07 22:00:19 +00:00
Jérôme Vouillon a4eea9ac45 Les parametres des constructeurs de types peuvent etres
contraints. Par exemple :
  type 'a t = 'b * 'c constraint 'a = 'b -> 'c


git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@1285 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1997-02-20 20:39:02 +00:00
Daniel de Rauglaudre cc9c2b8841 - Ajout type "any"
- Test compatibilite version AST avec preprocesseur


git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@1262 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1997-02-11 18:24:47 +00:00
Pierre Weis a6c6120f14 Changement des boi^tes de pretty-print
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@1257 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1997-02-04 08:03:29 +00:00
Jérôme Vouillon c343ab7991 Quelques petits changements...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@1248 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1997-01-24 20:54:56 +00:00
Jérôme Vouillon b85a7d45f5 Correction de bugs.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@1247 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1997-01-23 12:46:46 +00:00
Jérôme Vouillon 6c452fe5f5 Modification de la maniere dont l'expansion des abbreviations est
memorisee.


git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@1245 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1997-01-21 17:43:53 +00:00
Jérôme Vouillon 66d9d41861 Encore des modifications de Ctype.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@1244 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1997-01-21 13:38:42 +00:00
Jérôme Vouillon 9b2a6f0119 Debut de simplification de Ctype.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@1242 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1997-01-20 17:11:47 +00:00
Xavier Leroy 3b92524aa9 Ajout du support pour le debugger
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@1211 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1996-11-29 18:36:42 +00:00
Xavier Leroy c226d38b4f Dans les declarations de la forme
type t = t' = A of ... | B of ...
substituer t par t' dans les ... afin de comparer correctement les
definitions de t et t' meme si elles sont recursives.
Aussi: meilleure verification que t et t' ont les memes parametres.


git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@1191 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1996-11-13 15:32:07 +00:00
Pierre Weis 975c4742fa Gestion des boi^tes ?
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@1179 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1996-11-08 13:38:34 +00:00
Xavier Leroy bfa250606e Misc.lowercase -> String.uncapitalize
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@1130 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1996-10-31 16:03:27 +00:00
Jérôme Vouillon ffcad91131 Unification sous prefixe : le test d'occurence ne traverse pas tout le
type. Il faut donc utiliser une fonction a part : `check_level'


git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@1113 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1996-10-28 17:51:55 +00:00
Jérôme Vouillon 6fbd844af1 `build_supertype' inutilise.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@1111 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1996-10-27 09:43:07 +00:00
Jérôme Vouillon d8ef8e4915 Type de methode maintenant optionnel dans interface de classe (permet
de passer de virtual a method sans avoir a preciser le type).


git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@1110 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1996-10-26 22:06:22 +00:00
Jérôme Vouillon 5c6cd7912c Correction d'un bug des classes recursives dans une interface.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@1107 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1996-10-26 20:16:31 +00:00
Jérôme Vouillon 352a42e6b6 Message d'erreur correct pour `(1 : int :> bool)'.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@1106 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1996-10-26 19:39:26 +00:00
Jérôme Vouillon 2462e1c7e2 Equivalent de type_expect pour les methodes.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@1105 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1996-10-26 16:44:51 +00:00
Jérôme Vouillon 845e4b0563 Revision de la fonction `occur' : accepte de nouveau les recursions a
travers des types construits qui ne sont pas des abreviations (e.g.:
unification de 'a list avec 'a).
Gestion correcte des abreviations du genre 'a t = int.


git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@1101 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1996-10-26 15:43:02 +00:00
Jérôme Vouillon ed9ca92aa8 Pour les sous-typage, il faut differencier les variables "libres" des
alias.


git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@1100 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1996-10-26 15:36:11 +00:00
Jérôme Vouillon 64c80892fc Bug dans check_unique_names : les classes produisent des abreviations...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@1099 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1996-10-25 21:34:25 +00:00
Xavier Leroy e4626b17e3 Meilleur traitement des abreviations dans Ctype.moregen et Ctype.moregen_occur
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@1098 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1996-10-25 13:40:04 +00:00
Jérôme Vouillon dfaf68d43f Typos.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@1062 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1996-10-08 17:12:42 +00:00
Xavier Leroy c540d67fde Deplacement d'un try...with dans expand_abbrev.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@1041 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1996-10-01 09:47:18 +00:00
Xavier Leroy 460673ebe1 Gestion des niveaux de variables revue dans les declarations de types.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@1021 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1996-09-24 15:45:58 +00:00
Jérôme Vouillon f82b5566e4 Garder autant que possible une abreviation lors de l'unification de
deux types #xxx.


git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@1014 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1996-09-23 17:15:59 +00:00
Jérôme Vouillon 2820a6f438 Interfaces de classes : normalisation des abreviations (unroll_abbrev).
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@1013 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1996-09-23 15:59:25 +00:00
Jérôme Vouillon 3de964308c Bug de lecture des types classes #xxx corrige.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@1012 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1996-09-23 15:58:05 +00:00
Jérôme Vouillon 8ebda1067b Correction d'un bug de moregeneral.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@1011 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1996-09-23 15:57:00 +00:00
Xavier Leroy 033ec5b736 Decoupage du module Typedtree en deux: Types et Typedtree.
Sauver l'environnement de typage en plus du type dans les a.s.t. de Typedtree.


git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@1008 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1996-09-23 11:33:27 +00:00
Jérôme Vouillon 1acce46d66 Un argument etait inutilise dans linear_abbrev.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@1001 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1996-09-21 12:02:42 +00:00
Jérôme Vouillon 1a196e07ea Reecriture de correct_abbrev, qui etait beaucoup trop lent dans
certains cas.


git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@1000 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1996-09-20 21:29:50 +00:00
Jérôme Vouillon 55bac22ba5 Ctype.init_def manquant pour typage des interfaces de classes.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@999 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1996-09-20 21:28:13 +00:00
Jérôme Vouillon 872ef330f4 open_hovbox remplace par open_box
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@945 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1996-08-13 15:07:44 +00:00
Jérôme Vouillon 7d0913093b Affichage de type recursif qui bouclait.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@944 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1996-08-13 15:04:24 +00:00
Xavier Leroy df42185ca0 Typage plus strict de "SIG with ..."
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@943 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1996-07-25 13:18:53 +00:00
Xavier Leroy 3ed970ddd8 Bug d'unification sous prefixe dans le typage des signatures.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@934 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1996-07-18 08:33:23 +00:00
Xavier Leroy 3b14330560 Ident: ajout de Ident.iter.
Autres: unification sous prefixe lors de l'inference de types, corrige
le bug de Russo:
let x = ref [];; module F(X) = struct type t let _ = (x:t list ref) ... end;;


git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@930 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1996-07-15 16:35:35 +00:00
Jérôme Vouillon c5bbe99551 Correction d'un bug (occur check qui bouclait parfois).
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@867 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1996-06-10 11:26:54 +00:00
Jérôme Vouillon eae90e28b1 Methodes concretes representees par Set.t plutot que string list.
Correction d'un bug au passage.


git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@859 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1996-06-03 16:26:27 +00:00
Jérôme Vouillon 6366bf1239 Bug : pas de verification du nombre de parametres de type lors de
l'heritage dans les class types...


git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@858 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1996-05-31 12:33:59 +00:00
Xavier Leroy b2d9978b17 Erreur dans la "location" de if...then...else
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@857 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1996-05-31 12:30:26 +00:00
Jérôme Vouillon 2a073e5ee9 Comparaison de la longeur des listes avant de faire List.iter2.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@856 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1996-05-31 12:27:03 +00:00
Jérôme Vouillon 012f9feca5 Modification du calcul d'un sous-type pour (e :> t).
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@849 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1996-05-28 14:30:52 +00:00
Jérôme Vouillon ed1cdeebcf Amelioration de quelques messages d'erreur.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@840 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1996-05-26 13:42:34 +00:00
Xavier Leroy d4335c35dc typecore: indentation...
typemod: traitement plus souple des variables non generalisees.


git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@835 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1996-05-22 16:22:33 +00:00
Jérôme Vouillon d6770a9231 Amelioration des messages d'erreurs d'unification (expansion des
abbreviations).
Typeclass: correction d'un bug de typage.


git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@828 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1996-05-20 16:43:29 +00:00
Jérôme Vouillon 064465320e Nettoyage : Label.t remplace par string.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@824 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1996-05-16 16:10:16 +00:00
Xavier Leroy 77d13ee8d2 Printtyp: simplifications.
Subst: attention aux conflits entre variables substituees et variables liees


git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@819 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1996-05-16 14:16:34 +00:00
Jérôme Vouillon 1acf888842 Correction de l'affichage des types de classes.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@812 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1996-05-14 15:41:13 +00:00
Jérôme Vouillon 7ca9675878 type_mutable et type_immutable ne sont plus utilises.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@811 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1996-05-14 15:40:00 +00:00
Jérôme Vouillon de40cbf0b6 On peut maintenant masquer des variables d'instances dans les interfaces.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@810 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1996-05-14 15:38:36 +00:00
Jérôme Vouillon 6de5fc3e39 Il faut prendre des instances des types predefinis et non les utiliser
directement...


git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@809 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1996-05-13 12:19:20 +00:00
Xavier Leroy 3f1e6a86e7 Utiliser des vbox au lieu de hvbox pour les classes.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@793 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1996-05-07 08:15:26 +00:00
Xavier Leroy 2301d778e7 Renommage en Objective Caml
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@782 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1996-04-30 14:53:58 +00:00
Xavier Leroy d4d799ee8f Rendons a Cesar...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@771 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1996-04-29 13:24:25 +00:00
Jérôme Vouillon bc19852852 Modification de la syntaxe des classe.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@760 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1996-04-25 10:35:04 +00:00
Jérôme Vouillon 7974a9d8b1 Extension objets.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@756 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1996-04-22 11:15:41 +00:00
Xavier Leroy 93f450d403 Correction du test d'equivalence entre deux declarations de modtypes
manifestes. (Double inclusion + coercions triviales.)


git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@651 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1996-02-22 10:23:33 +00:00
Xavier Leroy a76589a552 Meilleur message d'erreur pour Illegal_renaming.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@649 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1996-02-20 11:01:45 +00:00
Xavier Leroy 38d157123c Une bonne fois pour toute: let_bound_idents renvoie sa liste dans l'ordre gauche-droite
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@643 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1996-02-18 14:45:54 +00:00
Xavier Leroy f1fcc1fd92 On permet match C(1,2) with C _ -> ...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@587 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1996-01-04 12:50:52 +00:00
Xavier Leroy 6b49da1f2f Remise a zero des niveaux de variables au debut de chaque definition.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@572 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1995-12-22 10:54:36 +00:00
Xavier Leroy cf1616269a Meilleur typage du letrec
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@456 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1995-11-19 16:53:56 +00:00
Xavier Leroy a620df2a84 Bug dans Ctype.moregeneral corrige.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@453 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1995-11-16 13:27:53 +00:00
Xavier Leroy 7ad471596e moregeneral ne tenait pas bien compte des variables non generalisees
dans le schema le plus general.


git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@443 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1995-11-13 14:25:55 +00:00
Xavier Leroy 083af27a36 Env.find_ font raise Not_found au lieu d'une erreur si le path n'est
pas trouve (p.ex. parce que un .cmi n'est pas disponible).


git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@394 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1995-11-03 13:23:03 +00:00
Xavier Leroy 3db4ca0de1 Les variables 'a dans les contraintes de types sont considerees liees
au debut de la phrase (on leur donne le niveau 1).


git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@384 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1995-10-31 15:58:31 +00:00
Xavier Leroy e772ecf7cb Les definitions de primitives ne generent plus de code.
En consequence, un champ valeur primitive d'une structure n'occupe
plus de place dans le tuple la representant.


git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@351 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1995-10-23 16:59:41 +00:00
Xavier Leroy 1f451d888e Detection des abbrev recursives corrigee (algorithme dit "du rho").
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@343 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1995-10-19 16:28:44 +00:00
Xavier Leroy 5d2a1f2b9a Simplification/correction de nondep_supertype sur les declarations de types.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@341 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1995-10-18 15:33:15 +00:00
Xavier Leroy 877b49ccca nondep_supertype ne se permet plus de faire disparaitre des
composantes de structure en position covariante. On se permet quand
meme de transformer type t = ty en type t, comme en SML.


git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@338 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1995-10-17 10:02:47 +00:00
Xavier Leroy febeecacd0 Meilleur message d'erreur dans Env quand .cmi pas trouve.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@327 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1995-10-09 17:39:41 +00:00
Xavier Leroy eda2f6449b Nouveau format de .cmo (utilisation de MD5, detection unsafe)
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@326 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1995-10-09 13:37:11 +00:00
Francois Rouaix f8d5b20bd7 Moins de contraintes sur with type
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@325 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1995-10-09 12:13:42 +00:00
Xavier Leroy c3d81e3f2f Locations dans les structure_item.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@323 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1995-10-05 15:22:23 +00:00
Xavier Leroy 6ad9216c04 ident: identify rend aussi egaux les noms en plus des stamps
typecore: detection des formats errones en fin de chaine.


git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@321 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1995-10-05 12:29:40 +00:00
Xavier Leroy d1c255478f Cas particulier pour "type t = t"
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@315 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1995-10-03 14:06:45 +00:00
Xavier Leroy db7e46b25c Introduction de "S with module ... = ..."
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@306 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1995-10-01 13:39:43 +00:00
Xavier Leroy 93e0aa31ec Contraintes "with" revues.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@300 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1995-09-28 10:42:38 +00:00
Xavier Leroy 371c25886c Possibilite de rendre manifestes des types variant ou record
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@290 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1995-09-26 20:23:29 +00:00
Xavier Leroy b52bf653d5 Correction de Env.components_of_module pour le cas ou on reference un
modtype manifeste defini precedemment dans la meme structure.


git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@285 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1995-09-23 09:08:18 +00:00
Xavier Leroy a6a66821bd Rectification de add_signature pour qu'elle respecte l'ordre
gauche-droite des composantes.


git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@278 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1995-09-19 13:33:39 +00:00
Xavier Leroy 83bd2f350d Affichage des erreurs dans l'ordre inverse.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@246 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1995-09-04 12:07:32 +00:00
Xavier Leroy 7e691c81a6 Meilleur traitement des variables non generalisables.
Divers nettoyages pendant l'ecriture de la doc.


git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@239 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1995-09-02 18:55:37 +00:00
Xavier Leroy 3471bdb395 Verification de l'unicite des noms dans les structures.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@228 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1995-08-28 11:23:33 +00:00
Xavier Leroy d6326b99c2 Nettoyage d'un commentaire pour eviter boucle dans dependances...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@213 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1995-08-24 13:25:04 +00:00
Xavier Leroy 90fc1c2cf4 Foncteurs applicatifs.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@205 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1995-08-23 11:55:54 +00:00
Xavier Leroy e4066357b1 Ajout des notices de copyright
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@195 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1995-08-09 15:06:35 +00:00
Xavier Leroy 6d211f7692 Creation du module primitive
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@160 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1995-07-27 17:47:52 +00:00
Xavier Leroy 5c6922e9a2 Isolement des descriptions de primitives dans le module Primitive.
Detection des records de flottants.


git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@158 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1995-07-27 17:46:55 +00:00
Xavier Leroy d1e2b83c19 Changement representation des primitives.
Introduction de datarepr.


git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@146 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1995-07-25 11:40:07 +00:00
Xavier Leroy a14b23fd2d Bidouillage d'un commentaire pour que camldep ne produise pas de
dependance circulaire.


git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@97 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1995-07-12 15:32:54 +00:00
Xavier Leroy cd93956a7b Curryfication de Format.print_break.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@67 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1995-07-07 12:09:01 +00:00
Xavier Leroy 0c9e80f2c8 Nouvelle technique de construction du CRC pour les .cmi.
List.combine maintenant decurryfiee.
Introduction de Ident.unique_name.


git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@59 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1995-07-02 16:50:08 +00:00
Xavier Leroy 9f46afb0f4 Changement de la representation des constructeurs constants.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@45 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1995-06-18 14:47:12 +00:00
Xavier Leroy f8b0d59e5c Correction de la declaration de Match_failure (1 argument qui est un
triplet, pas 3 arguments).


git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@27 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1995-06-05 15:56:44 +00:00
Xavier Leroy 39104f333c typecore: [||] est generique
includemod: rectification message d'erreur "Missing field".


git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@24 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1995-06-05 13:43:38 +00:00
Xavier Leroy e57ef00576 Remplacement de Cset par Set
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@20 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1995-05-30 13:36:40 +00:00
Xavier Leroy ec675d2f9a Detection des types sommes avec trop de constructeurs.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@18 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1995-05-22 15:43:44 +00:00
Xavier Leroy 6b4c07d323 Correction bug dans nondep_supertype.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@16 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1995-05-22 11:58:12 +00:00
Xavier Leroy 997fb206a7 Printf.sprintf et String.concat dans stdlib
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@5 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1995-05-05 10:05:18 +00:00
Xavier Leroy 61bd8ace6b Passage a la version bootstrappee (franchissement du Rubicon)
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@2 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1995-05-04 10:15:53 +00:00