-
Notifications
You must be signed in to change notification settings - Fork 42
Open
Description
Invariants can only be extended for the local class or all final classes and there is no good reason for this restriction. Hence we suggest to lift this restriction.
Underlying problem
In reality, knowing about invariants should not be limited to final classes. The generated taclets are guarded by an exactInstance expression making the scenario sound.
The restriction seems rather arbitrary.
Estimated effort
Well, it seems the 3 lines below could easily be removed.
... We should just think about it to make sure it is sound and does not compromise automation.
Additional context
key/key.core/src/main/java/de/uka/ilkd/key/proof/mgt/SpecificationRepository.java
Lines 1049 to 1052 in ae75e81
| for (KeYJavaType kjt : services.getJavaInfo().getAllKeYJavaTypes()) { | |
| if (kjt != selfKjt && !ji.isFinal(kjt)) { | |
| continue; // only final classes | |
| } |
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
No labels