|
@@ -29,7 +29,7 @@ interface
|
|
cclasses,
|
|
cclasses,
|
|
aasmbase,
|
|
aasmbase,
|
|
symbase,symconst,symtype,symdef;
|
|
symbase,symconst,symtype,symdef;
|
|
-
|
|
|
|
|
|
+
|
|
type
|
|
type
|
|
|
|
|
|
{ TRTTIWriter }
|
|
{ TRTTIWriter }
|
|
@@ -54,8 +54,8 @@ interface
|
|
|
|
|
|
var
|
|
var
|
|
RTTIWriter : TRTTIWriter;
|
|
RTTIWriter : TRTTIWriter;
|
|
-
|
|
|
|
-
|
|
|
|
|
|
+
|
|
|
|
+
|
|
implementation
|
|
implementation
|
|
|
|
|
|
uses
|
|
uses
|
|
@@ -69,7 +69,7 @@ implementation
|
|
|
|
|
|
const
|
|
const
|
|
rttidefopt : array[trttitype] of tdefoption = (df_has_rttitable,df_has_inittable);
|
|
rttidefopt : array[trttitype] of tdefoption = (df_has_rttitable,df_has_inittable);
|
|
-
|
|
|
|
|
|
+
|
|
type
|
|
type
|
|
TPropNameListItem = class(TFPHashObject)
|
|
TPropNameListItem = class(TFPHashObject)
|
|
propindex : longint;
|
|
propindex : longint;
|
|
@@ -557,7 +557,7 @@ implementation
|
|
end;
|
|
end;
|
|
|
|
|
|
|
|
|
|
- procedure procvar_rtti(def:tprocvardef);
|
|
|
|
|
|
+ procedure procvardef_rtti(def:tprocvardef);
|
|
|
|
|
|
procedure write_para(parasym:tparavarsym);
|
|
procedure write_para(parasym:tparavarsym);
|
|
var
|
|
var
|
|
@@ -794,6 +794,8 @@ implementation
|
|
floatdef_rtti(tfloatdef(def));
|
|
floatdef_rtti(tfloatdef(def));
|
|
setdef :
|
|
setdef :
|
|
setdef_rtti(tsetdef(def));
|
|
setdef_rtti(tsetdef(def));
|
|
|
|
+ procvardef :
|
|
|
|
+ procvardef_rtti(tprocvardef(def));
|
|
arraydef :
|
|
arraydef :
|
|
begin
|
|
begin
|
|
if ado_IsBitPacked in tarraydef(def).arrayoptions then
|
|
if ado_IsBitPacked in tarraydef(def).arrayoptions then
|
|
@@ -843,8 +845,8 @@ implementation
|
|
internalerror(200611037);
|
|
internalerror(200611037);
|
|
result:=current_asmdata.RefAsmSymbol(def.rtti_mangledname(rt));
|
|
result:=current_asmdata.RefAsmSymbol(def.rtti_mangledname(rt));
|
|
end;
|
|
end;
|
|
-
|
|
|
|
-
|
|
|
|
|
|
+
|
|
|
|
+
|
|
procedure TRTTIWriter.write_rtti(def:tdef;rt:trttitype);
|
|
procedure TRTTIWriter.write_rtti(def:tdef;rt:trttitype);
|
|
var
|
|
var
|
|
rttilab : tasmsymbol;
|
|
rttilab : tasmsymbol;
|