hax icon indicating copy to clipboard operation
hax copied to clipboard

F*: interface mode: missed binders

Open W95Psp opened this issue 2 years ago • 2 comments

In F*, binders val declarations cannot be patterns. In the interface mode, we generate val declarations out of Rust functions possibly annotated with pre- or post-conditions.

Rust functions accept any pattern on function inputs. If a binding introduced by a pattern happens to be used in a post or a pre, currently, this produces bad F* code.

We should give non-trivial patterns (e.g. not variable patterns) names and rewrite pre and post-condition.

W95Psp avatar Dec 21 '23 16:12 W95Psp

This issue has been marked as stale due to a lack of activity for 60 days. If you believe this issue is still relevant, please provide an update or comment to keep it open. Otherwise, it will be closed in 7 days.

github-actions[bot] avatar Oct 03 '24 02:10 github-actions[bot]

This is still relevant. This transformation should be done outside of the backend, as a phase.

W95Psp avatar Oct 07 '24 06:10 W95Psp

This issue has been marked as stale due to a lack of activity for 60 days. If you believe this issue is still relevant, please provide an update or comment to keep it open. Otherwise, it will be closed in 7 days.

github-actions[bot] avatar Dec 08 '24 02:12 github-actions[bot]

This issue has been closed due to a lack of activity since being marked as stale. If you believe this issue is still relevant, please reopen it with an update or comment.

github-actions[bot] avatar Dec 16 '24 02:12 github-actions[bot]

This issue has been marked as stale due to a lack of activity for 60 days. If you believe this issue is still relevant, please provide an update or comment to keep it open. Otherwise, it will be closed in 7 days.

github-actions[bot] avatar Mar 06 '25 01:03 github-actions[bot]

@W95Psp please add a reproducer

franziskuskiefer avatar Mar 06 '25 12:03 franziskuskiefer

W95Psp avatar Mar 12 '25 08:03 W95Psp