|
@@ -544,6 +544,13 @@ type
|
|
Name: ShortString;
|
|
Name: ShortString;
|
|
end;
|
|
end;
|
|
|
|
|
|
|
|
+{$ifdef VER3_0}
|
|
|
|
+ PersistentClassRef = TPersistentClass;
|
|
|
|
+{$else VER3_0}
|
|
|
|
+ PPersistentClass = ^TPersistentClass;
|
|
|
|
+ PersistentClassRef = PPersistentClass;
|
|
|
|
+{$endif VER3_0}
|
|
|
|
+
|
|
PFieldClassTable = ^TFieldClassTable;
|
|
PFieldClassTable = ^TFieldClassTable;
|
|
TFieldClassTable =
|
|
TFieldClassTable =
|
|
{$ifndef FPC_REQUIRES_PROPER_ALIGNMENT}
|
|
{$ifndef FPC_REQUIRES_PROPER_ALIGNMENT}
|
|
@@ -551,7 +558,7 @@ type
|
|
{$endif FPC_REQUIRES_PROPER_ALIGNMENT}
|
|
{$endif FPC_REQUIRES_PROPER_ALIGNMENT}
|
|
record
|
|
record
|
|
Count: Word;
|
|
Count: Word;
|
|
- Entries: array[{$ifdef cpu16}0..16384 div sizeof(TPersistentClass){$else}Word{$endif}] of TPersistentClass;
|
|
|
|
|
|
+ Entries: array[{$ifdef cpu16}0..16384 div sizeof(PersistentClassRef){$else}Word{$endif}] of PersistentClassRef;
|
|
end;
|
|
end;
|
|
|
|
|
|
PFieldTable = ^TFieldTable;
|
|
PFieldTable = ^TFieldTable;
|
|
@@ -584,7 +591,7 @@ begin
|
|
ClassTable := FieldTable^.ClassTable;
|
|
ClassTable := FieldTable^.ClassTable;
|
|
for i := 0 to ClassTable^.Count - 1 do
|
|
for i := 0 to ClassTable^.Count - 1 do
|
|
begin
|
|
begin
|
|
- Result := ClassTable^.Entries[i];
|
|
|
|
|
|
+ Result := ClassTable^.Entries[i]{$ifndef VER3_0}^{$endif};
|
|
if Result.ClassNameIs(ShortClassName) then
|
|
if Result.ClassNameIs(ShortClassName) then
|
|
exit;
|
|
exit;
|
|
end;
|
|
end;
|
|
@@ -1701,7 +1708,7 @@ var
|
|
FieldClassTable := FieldTable^.ClassTable;
|
|
FieldClassTable := FieldTable^.ClassTable;
|
|
for i := 0 to FieldClassTable^.Count -1 do
|
|
for i := 0 to FieldClassTable^.Count -1 do
|
|
begin
|
|
begin
|
|
- Entry := FieldClassTable^.Entries[i];
|
|
|
|
|
|
+ Entry := FieldClassTable^.Entries[i]{$ifndef VER3_0}^{$endif};
|
|
//writeln(format('Looking for %s in field table of class %s. Found %s',
|
|
//writeln(format('Looking for %s in field table of class %s. Found %s',
|
|
//[AClassName, ComponentClassType.ClassName, Entry.ClassName]));
|
|
//[AClassName, ComponentClassType.ClassName, Entry.ClassName]));
|
|
if Entry.ClassNameIs(ShortClassName) and
|
|
if Entry.ClassNameIs(ShortClassName) and
|