-
Notifications
You must be signed in to change notification settings - Fork 233
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
Spurious warning on mutually recursive functions #3220
Comments
With $ fstar.exe -v
F* 2024.01.13~dev
platform=Darwin_arm64
compiler=OCaml 4.14.1
date=2024-02-26 06:11:44 -0800
commit=a48722f90e14be69b850f093b41fbbdfee7f6eb9 the warnings go away if decreases clauses are added thus: module Foo
type value = bool
let rec array_cmp (l1:list value) (l2:list value) : Tot bool (decreases l1)=
match l1, l2 with
| hd1::tl1, hd2::tl2 -> array_cmp tl1 tl2
| _ -> false
and cmp (v1:value) (v2:value) : Tot bool (decreases v1)=
false |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Produces
I think I've noticed this before from inferred decreases clauses, but this warning remains even if you add explicit decreases annotations.
Thanks to @anakrish
The text was updated successfully, but these errors were encountered: