From: Jocelyn <li...@dj...> - 2009-01-23 10:05:23
|
The following invariant is wrong regarding the code related to `attribute_types' invariant attribute_types_not_void: attribute_types /= Void However the implementation of the creation procedure `make' does not guarantee `attribute_types' is not Void Indeed if you check the implementation the `attribute_types' is only set by feature `set_xpointer', and not by `set_no_filtering' Suggestion: correct the invariant with the following contracts attribute_types_not_void: is_filtering implies attribute_types /= Void And maybe precise the contract between is_filtering and is_forwarding to prevent trouble in `on_attribute' I guess that is_forwarding implies is_filtering Regards, Jocelyn |