Mantis Bug Tracker

View Issue Details Jump to Notes ] Issue History ] Print ]
IDProjectCategoryView StatusDate SubmittedLast Update
0004974OCamlOCaml generalpublic2010-02-08 11:532010-12-13 13:09
Reporterdoligez 
Assigned To 
PrioritynormalSeverityminorReproducibilityalways
StatusclosedResolutionfixed 
PlatformOSOS Version
Product Version3.11.2 
Target VersionFixed in Version3.12.0 
Summary0004974: manque de verifications dans les .mli
DescriptionLe compilateur accepte des declarations redondantes (et meme contradictoires) dans les .mli:

val x : int -> int;;
val x : int;;

Evidemment, une telle signature n'est pas satisfiable, donc il vaudrait mieux signaler une
erreur. Le probleme se pose surtout si les deux types sont les memes, ce qui peut arriver
en cas de bug dans un copier-coller.

Voir le PR#4971 pour des exemples illustrant ce probleme. Pierre a aussi eu le cas dans
format.mli.
TagsNo tags attached.
Attached Files

- Relationships
related to 0001441closed Inclusion d'une structure dans une signature 
related to 0004971closed some minor bugs 
related to 0005037closed 3.12.0+dev18: "module type of" produces unusable signatures for repeated definitions 
related to 0005061acknowledged mutiple value components in signatures should produce a warning or an error 

-  Notes
(0005240)
Julien Signoles (reporter)
2010-02-09 13:03

Voir aussi la vieille fiche 0001441 qui signalait un problème similaire avec les "module type".
(0005738)
garrigue (manager)
2010-12-13 13:09

Depuis 3.12.0, ce type de signature est devenu satisfiable, car on ne garde que la
dernière déclaration (comme on le ferait dans un .ml).
Je pense que ça résoud le problème, même si certains trouve que ce comportement
est laxiste. Il y a des applications concrètes quand on le combine avec include: on
peut maintenant hériter d'une signature tout en modifiant des définitions.

- Issue History
Date Modified Username Field Change
2010-02-08 11:53 doligez New Issue
2010-02-09 13:03 Julien Signoles Note Added: 0005240
2010-02-09 14:46 doligez Relationship added related to 0001441
2010-04-30 17:23 doligez Relationship added related to 0005037
2010-04-30 17:24 doligez Relationship added related to 0004971
2010-05-21 13:50 doligez Status new => acknowledged
2010-05-28 17:22 frisch Relationship added related to 0005061
2010-12-13 13:09 garrigue Note Added: 0005738
2010-12-13 13:09 garrigue Status acknowledged => closed
2010-12-13 13:09 garrigue Resolution open => fixed
2010-12-13 13:09 garrigue Fixed in Version => 3.12.0


Copyright © 2000 - 2011 MantisBT Group
Powered by Mantis Bugtracker