On 08/06/12 23:02, Paul Ishenin wrote: > > Class variable is stored the same way as a regular variable and has the > only difference is that it can be accessible with the class name prefix. > The thing you need requires different implementation - something like > storing a virtual class variable in VMT. There is no implementation for > that. > > Best regards, > Paul Ishenin
What is the current implementation? I would guess that class vars are stored in the vmt already... Please correct me if I've got this wrong. Current classes have a structure containing partially the following: TClassInstance = record vmt: Pointer; {Space for parent class variables are stored here followed by variables declared for this object} variable1: SomeType; variable2: SomeType; etc. end; TClassVMT = record parent_class_vmt: Pointer; virtual_procs: array[0..n] of pointer; class_var_1: Sometype; class_var_2: Sometype; etc... end; Is this right? Thanks, Andrew _______________________________________________ fpc-pascal maillist - fpc-pascal@lists.freepascal.org http://lists.freepascal.org/mailman/listinfo/fpc-pascal