-
Notifications
You must be signed in to change notification settings - Fork 8
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
Troubles getting cameleer to parse a file #9
Comments
How did you manage to go around the GADT for type |
I just changed the My attempts to fix it are here: https://github.com/talex5/ocaml-uring/commits/cameleer Ideally though it would handle the original version. |
The error you get about instantiation of pure type variable is due to the fact that you are trying to build an array containing mutable elements. Why3 does not allow you to build such an array, i.e., the elements stored in an array cannot contain mutable fields (this would violate some of the memory static guarantees enforced by Why3). In the particular case of your data structure, this happens since type I have pushed a new version of this implementation, accepted by Cameleer: mariojppereira/ocaml-uring@7475772 Please note there are also two other minor changes, due to namespace management:
The latter happens since Why3 does not allow two symbols in the same namespace to have the same name ( |
Ah, thanks. The I still get an error though:
I also tried updating to the latest cameleer, but got |
Sorry. There was an update on the GOSPEL side and forgot to update the Any way to make this process more developer-friendly? Or does one really needs to update the |
Well, something has to update if Cameleer changes to need a newer version of GOSPEL. An alternative to pin-depends is to add it as a Git submodule. Then it's just a BTW, the current version still fails to build ( |
Sorry for the late response. This should now be fixed in master. |
Thanks - it parses now! |
I'm trying to use cameleer to verify https://github.com/ocaml-multicore/ocaml-uring/blob/main/lib/uring/heap.ml
It's a fairly simple data-structure that allocates numbered slots to callers (basically, it allows allocating and freeing unique IDs).
I'm having a hard time getting cameleer to parse it, though. Each time I try to simplify it a bit, I get another error. Here's the sequence I got:
Any suggestions on how to get it to accept this? I removed all the polymorphism by the end, so I don't know where it's getting the
'a
from.The text was updated successfully, but these errors were encountered: