please have a look at this construction. It throws error c504: The expression has type 'syntaxDomains::tree{@Type}', which is incompatible with the type 'syntaxDomains::tree{::unsigned}' in (VIP 7502):
Code: Select all
interface syntaxDomains{@Type}
domains
tree = tree(subTree* SubTreeList).
subTree =
leaf(@Type Value);
branch(tree Tree).
end interface syntaxDomains
implement main
open syntaxDomains{unsigned}
clauses
run() :-
Tree1 = tree([]),
Tree2 = tree([]),
_Result = toBoolean(Tree1 = Tree2). %the error is here
end implement main
Regards
Martin