The org.multijava.mjc.CClassType equals method really
isn't pure, but JML requires that it is pure. I put a
FIXME comment in the code for CClassType and
commented out the JML specification of the side
effects, but this doesn't fix the problem.
Logged In: YES
user_id=633675
We have started a new branch equals-not-pure to address
this issue. Doing this depends on jmlc handling the refine
clause.
Logged In: YES
user_id=633675
The idea behind this branch no longer works. But David Cok
and I are working on a language extension that should allow
a nice solution to this problem.
Logged In: YES
user_id=633675
Originator: YES
Gabriela Montoya also raised a question of whether clone should be pure.
The idea David Cok and I have is based on the work of Naumann and Barnett, which is to allow "query" methods with hidden side effects.