# HG changeset patch
# User Sylvain Thenault <sylvain.thenault@logilab.fr>
# Date 1223375906 -7200
#      Tue Oct 07 12:38:26 2008 +0200
# Node ID e7352ff4b48826899b1e38ac13bf4ca658aeb038
# Parent  71eda622760b0ff4b5ff465bd2ab11224f9bb630
should not considered neged non final relation when computing all possible types

diff --git a/analyze.py b/analyze.py
--- a/analyze.py
+++ b/analyze.py
@@ -338,6 +338,12 @@
     def visit_type_restriction(self, relation, constraints):
         pass
     
+    def visit_not(self, et, constraints):
+        child = et.children[0]
+        if isinstance(child, nodes.Relation) and \
+           not self.schema.rschema(child.r_type).is_final():
+            return True
+    
 # ==========================================================
 
 class UnifyError(Exception):