Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Conditionals are used to guard unfolding of recursive functions. This is, as shown in #6304, incompatible with the case where recursive functions are used inside if-then-else guards. We address this by disabling if-conditions as guards if they contain a recursive definition. The approach is simplistic: if a recursive function, defined prior (not mutually recursive) is used in a guard it should be fine and the condition can guard the current recursive unfolding.
- Loading branch information