-
Notifications
You must be signed in to change notification settings - Fork 63
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
parse_core panics on SAW core terms with types not supported by Cryptol #1479
Comments
One really straightforward solution is to wrap the call to the simulator in
|
Ok, scratch that: wrapping the call to the simulator in |
Aha, this is because the above function definition does not evaluate
|
Of course, it would probably be better if the simulator itself could handle unknown type constructors like |
This should be fixable because the saw-script |
The immediate problem here is that the simulator doesn't have a representation for the |
Well, unless we can guarantee that the simulator won't panic on any well-typed SAW core terms, however arbitrarily complex they are, then it is always possible that this call to the simulator could panic, because it is passed an arbitrary SAW core term. If the simulator panics here, it just means that the input SAW core term is outside the scope of what it can handle, which IMHO means that the function should return |
I think this is the same as #780. |
Note that #1552 added the exception-catching hack proposed in #1479 (comment), so the example above no longer panics. There is still work to be done to figure out how to improve the error-handling story so that we do not need to resort to such a hack. |
The following leads to a panic:
Interestingly enough, the following does not, and successfully prints out the corresponding SAW core term when this is inputted into the prompt:
But, if you try to perform a computation on the Cryptol type of the resulting term, you then get the panic again. E.g., this again leads to a panic:
The text was updated successfully, but these errors were encountered: