diff -r cc4b8021bdf3 -r 365e5a0287d6 schema.py --- a/schema.py Mon Feb 02 22:05:00 2015 +0100 +++ b/schema.py Mon Feb 02 23:17:15 2015 +0100 @@ -1072,6 +1072,7 @@ for rdef in self.iter_computed_attributes(): rqlst = parse(rdef.formula) select = rqlst.children[0] + select.add_type_restriction(select.defined_vars['X'], str(rdef.subject)) analyzer.visit(select) _check_valid_formula(rdef, rqlst) rdef.formula_select = select # avoid later recomputation