Discussions related to Visual Prolog
Martin Meyer
VIP Member
Posts: 328
Joined: 14 Nov 2002 0:01

Generic property problem

Unread post by Martin Meyer »

Hello Thomas,

please check this construction. The compiler (build 7501) throws fatal error c098 : Not synchronized lists for fixed parameters (integer) on it and dumps:

Code: Select all

interface myObject{@Type}     open core       properties         value : @Type.       properties         create : function{myObject{LocalType}} (o).   end interface myObject   %---   class myObject{@Type} : myObject{@Type} end class myObject   %---   implement myObject{@Type}       facts         value : @Type := erroneous.       clauses         create() = myObject{LocalType}::new.   end implement myObject   %===   implement main     open core   clauses     run() :-         StringObj = myObject{string}::new(),         IntegerObj = StringObj:create(),         IntegerObj:value := -3.   end implement main
But when replacing the property by a predicate, it works fine:

Code: Select all

interface myObject{@Type}     open core       properties         value : @Type.       predicates         getCreator : () -> function{myObject{LocalType}}.   end interface myObject   %---   class myObject{@Type} : myObject{@Type} end class myObject   %---   implement myObject{@Type}       facts         value : @Type := erroneous.       clauses         getCreator() = myObject{LocalType}::new.   end implement myObject   %===   implement main     open core   clauses     run() :-         StringObj = myObject{string}::new(),         CreateIntegerObj = StringObj:getCreator(),         IntegerObj = CreateIntegerObj(),         IntegerObj:value := -3.   end implement main
Best regards
Martin
User avatar
Thomas Linder Puls
VIP Member
Posts: 1398
Joined: 28 Feb 2000 0:01

Unread post by Thomas Linder Puls »

Thank you, we will look at it.
Regards Thomas Linder Puls
PDC
Post Reply