| Anonymous | Login | Signup for a new account | 2013-06-19 23:37 CEST | ![]() |
| Main | My View | View Issues | Change Log | Roadmap |
| View Issue Details [ Jump to Notes ] | [ Issue History ] [ Print ] | |||||||
| ID | Project | Category | View Status | Date Submitted | Last Update | |||
| 0004000 | OCaml | OCaml general | public | 2006-04-11 16:53 | 2006-06-26 11:41 | |||
| Reporter | frisch | |||||||
| Assigned To | garrigue | |||||||
| Priority | normal | Severity | minor | Reproducibility | always | |||
| Status | closed | Resolution | fixed | |||||
| Platform | OS | OS Version | ||||||
| Product Version | 3.09.1 | |||||||
| Target Version | Fixed in Version | 3.10+dev | ||||||
| Summary | 0004000: Typage sans -rectypes quand une interface a été compilée avec -rectypes: problème et suggestion | |||||||
| Description | Soit un module A compilé avec -rectypes et qui définit uniquement: type t = t -> t Alors, si on compile sans -rectypes let f x = ((x : A.t), x = [x]) ça marche, mais avec: let f x = (x = [x], (x : A.t)) ça échoue. Le Dogme a été transgressé. Plus généralement, il faudrait définir ce qu'il se passe lorsqu'une interface compilée -rectypes est utilisée par un module compilé sans -rectypes. Suite à une discussion avec Didier, deux propositions: - lorsque l'on déroule une abbreviation, vérifier que l'on n'est pas en train d'ouvrir un cycle; - interdire de compiler un module sans -rectypes s'il utilise une interface compilée avec -rectypes. -- Alain | |||||||
| Tags | No tags attached. | |||||||
| Attached Files | ||||||||
Notes |
|
|
(0003617) frisch (developer) 2006-04-16 09:16 |
Euh, évidemment, c'est "type t = t list"... |
|
(0003618) garrigue (manager) 2006-04-16 10:14 |
Je ne vois pas immediatement comment implementer la premiere suggestion (verification de la presence d'un cycle lorsqu'on deroule un abbreviation pre-existente.) La deuxieme option est evidemment plus simple, et relativement naturelle. Mais ca peut compliquer les Makefiles. |
|
(0003696) garrigue (manager) 2006-06-26 11:41 |
Solved following the second option: -rectypes is now required for compiling any dependency of an interface compiled with -rectypes. |
Issue History |
|||
| Date Modified | Username | Field | Change |
| 2006-04-11 16:53 | frisch | New Issue | |
| 2006-04-16 09:16 | frisch | Note Added: 0003617 | |
| 2006-04-16 10:14 | garrigue | Note Added: 0003618 | |
| 2006-06-23 02:55 | garrigue | Status | new => assigned |
| 2006-06-23 02:55 | garrigue | Assigned To | => garrigue |
| 2006-06-26 11:41 | garrigue | Status | assigned => closed |
| 2006-06-26 11:41 | garrigue | Note Added: 0003696 | |
| 2006-06-26 11:41 | garrigue | Resolution | open => fixed |
| 2006-06-26 11:41 | garrigue | Fixed in Version | => 3.10+dev |
| Copyright © 2000 - 2011 MantisBT Group |