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

Obscure compilation message error "Illegal permutation of structure fields" #4136

Closed
vicuna opened this Issue Oct 16, 2006 · 1 comment

Comments

Projects
None yet
1 participant
@vicuna
Copy link
Collaborator

vicuna commented Oct 16, 2006

Original bug ID: 4136
Reporter: Guillaume Bonfante
Status: closed (set by @garrigue on 2010-04-30T04:44:53Z)
Resolution: fixed
Priority: normal
Severity: minor
Version: 3.09.2
Fixed in version: 3.12.0+dev
Category: ~DO NOT USE (was: OCaml general)
Has duplicate: #4296

Bug description

when compiling the following programs,

simple.mli :
module type X =
sig
val t : int
val t : int
end

simple.ml :
module type X =
sig
val t : int
val t : int
end

one gets a message :


The implementation simple.ml does not match the interface simple.cmi:
Module type declarations do not match:
module type X = sig val t : int val t : int end
does not match
module type X = sig val t : int val t : int end
Illegal permutation of structure fields


which is not really informative. With one thousand line of code, it becomes hard to recover the mistake.

File attachments

@vicuna

This comment has been minimized.

Copy link
Collaborator Author

vicuna commented Apr 30, 2010

Comment author: @garrigue

Fixed by revision 10263 (do not generate such module types).

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
You can’t perform that action at this time.