Skip to content

Figure out the interplay between recursion and issue reporting #110

@mniip

Description

@mniip

Currently during fixpoint finding we blindly substitute Result (meaning "ok") into the formula, and if any issues arose we blindly assume that they are the same issue that would be rethrown if we substituted them into the formula. However in presence of mapErrors that condition can be violated.

Furthermore we do violate this condition because when we memoize compatibility, we rethrow the errors with the appropriate behaviors, so a recursively thrown compatibility issue would have a different behavior on it. A recursive structure thus could have an infinite number of errors with progressively deeper and deeper behaviors.

We should figure out a consistent choice of what we do in this situation, document it and make sure it's implemented correctly.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions