Skip to content

accessible clauses for methods called in preconditions #56

Description

@davidcok

How should one think about the accessible-clause footprint for a method that calls a pure but not heap-free method in its precondition.

Perhaps the reads-footprint of methods called in specifications of Method M are ignored for method M's own footprint?
After all, the reads-footprint of M contains all heap memory locations that affect the result and side-effects of M -- and anything called in specifications does not affect the result and side-effects.

That is the reads-footprint of a method only contains (a superset of) the locations read in the implementation, and not the specification.

And ditto for callable clauses. Except there we have to worry about termination, so perhaps callable clauses are more complicated. A non-terminating call in a specification would clearly be not-well-defined, but I at least have not thought about how to check/prove such termination (if it is even any different from termination of the implementation).

This does not arise for assignable clauses because they have to be pure in any case.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

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