diff --git a/tiramisu/option/baseoption.py b/tiramisu/option/baseoption.py index df95edc..6137b9a 100644 --- a/tiramisu/option/baseoption.py +++ b/tiramisu/option/baseoption.py @@ -723,7 +723,7 @@ class Option(OnlyOption): "accesses the Option's doc" return self.impl_get_information('doc') - def _valid_consistencies(self, other_opts, init=True): + def _valid_consistencies(self, other_opts, init=True, func=None): if self._is_subdyn(): dynod = self._impl_getsubdyn() else: @@ -753,8 +753,9 @@ class Option(OnlyOption): raise ConfigError(_('every options in consistency must be ' 'multi or none')) if init: - #consistency could generate warnings or errors - opt._set_has_dependency() + # FIXME + if func != 'not_equal': + opt._set_has_dependency() def impl_add_consistency(self, func, *other_opts, **params): """Add consistency means that value will be validate with other_opts @@ -771,7 +772,7 @@ class Option(OnlyOption): " read-only").format( self.__class__.__name__, self.impl_getname())) - self._valid_consistencies(other_opts) + self._valid_consistencies(other_opts, func=func) func = '_cons_{0}'.format(func) if func not in dir(self): raise ConfigError(_('consistency {0} not available for this option').format(func)) @@ -789,8 +790,9 @@ class Option(OnlyOption): for opt in all_cons_opts: if getattr(opt, '_unique', undefined) == undefined: opt._unique = True - #consistency could generate warnings or errors - self._set_has_dependency() + if func != '_cons_not_equal': + #consistency could generate warnings or errors + self._set_has_dependency() def _valid_consistency(self, option, value, context, index, submulti_idx, display_warnings, display_error):