Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

A tiny bug in type checking recursive modules #4134

Open
vicuna opened this issue Oct 12, 2006 · 2 comments
Open

A tiny bug in type checking recursive modules #4134

vicuna opened this issue Oct 12, 2006 · 2 comments

Comments

@vicuna
Copy link

vicuna commented Oct 12, 2006

Original bug ID: 4134
Reporter: Keiko NAKATA
Status: acknowledged (set by @damiendoligez on 2006-11-15T15:10:34Z)
Resolution: open
Priority: normal
Severity: minor
Version: 3.09.3
Target version: later
Category: typing
Tags: recmod
Related to: #5818

Bug description

A tiny bug in type checking recursive modules.

module rec M : sig type t = N.s = A end = struct type t = N.s = A end
and N : sig type s = A end = struct type s = A end;;

The type checker reports :

   module rec M : sig type t = N.s = A end = struct type t = N.s = A end
                      ^^^^^^^^^^^^^^^^
   The variant or record definition does not match that of type N.s

This seems easy to fix.
When building signatures of recursive modules for the fist time
with approximated signatures in the type environment,
you need not to check re-exportation when calling typing.transl_type_decl.
The type system checks that re-exportation is correct
when building the signatures for the second time, anyway.

Best regards,
Keiko.

@mshinwell
Copy link
Contributor

Confirmed that this still exists with 4.10.

@github-actions github-actions bot removed the Stale label Jun 26, 2020
@github-actions github-actions bot added the Stale label Oct 18, 2021
@garrigue garrigue removed the Stale label Nov 24, 2021
@garrigue
Copy link
Contributor

The bug is still in trunk (5.00)

@garrigue garrigue reopened this Nov 24, 2021
@github-actions github-actions bot added the Stale label Nov 28, 2022
@Octachron Octachron removed the Stale label Nov 28, 2022
@ocaml ocaml deleted a comment from github-actions bot Jan 13, 2023
@ocaml ocaml deleted a comment from github-actions bot Jan 13, 2023
@ocaml ocaml deleted a comment from github-actions bot Jan 13, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

5 participants