-
Notifications
You must be signed in to change notification settings - Fork 1
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
Error on core::cmp::min
call
#49
Comments
core::cmp::min
call
Nice repro, thanks, I'll take a look |
Right so this is due to the fact that the body of definitions from core is not in scope. This ties in to AeneasVerif/charon#214 where we really need a language to specify what to extract, otherwise, extracting the entire universe is certain to trip Eurydice. In the meanwhile, the only thing I can offer is for you to redefine your Alternatively, I guess I could add a baked in definition but that's only if this is a major headache, as it would be hard to maintain going forward. Thanks. |
This is a mix of two issues: one is indeed AeneasVerif/charon#214 which is about to be fixed. The other is that |
Thanks @Nadrieril . I wonder if we should have a list of baked in definitions at the charon level (or better, the hax-frontend level) so that we don't end up maintaining a set of "primitive" definitions that are hardcoded in abstract syntax in each of eurydice, aeneas, etc. |
It would indeed make sense for Charon to have a list of basic |
@Nadrieril any chance of being able to allow-list a set of useful functions from std that we would like to extract via charon? I'm bumping into min-related issues again. Thanks. |
There are three issues at play here as far as I can tell:
1 is on my list but is not easy so I haven't made much progress lately. I'll get back to it, @sonmarcho has been requesting it too. 2. seems reasonable to improve but we'd have to discuss what the exact goal is. 3. I'm mildly opposed to, that's what the name matcher is for. |
I'm actually using the name matcher for this and it's totally fine, no? This: https://github.com/AeneasVerif/eurydice/blob/main/lib/AstOfLlbc.ml#L182 maintains a mapping from trait impls / functions / etc. to builtin versions. |
So my comment is, yes, I do care about 1. and 2. but I think I don't care so much about 3. (unless I misunderstood) |
Ok perfect, we're aligned then :) Next step is provided methods then |
The following causes eurydice to error out:
I ran it like so, perhaps I made a mistake here?
The output I get is the following:
The text was updated successfully, but these errors were encountered: