diff --git a/compiler/alpha/symcpu.pas b/compiler/alpha/symcpu.pas index f8a126a1b2..5063b90f3c 100644 --- a/compiler/alpha/symcpu.pas +++ b/compiler/alpha/symcpu.pas @@ -32,103 +32,136 @@ type { defs } tcpufiledef = class(tfiledef) end; + tcpufiledefclass = class of tcpufiledef; tcpuvariantdef = class(tvariantdef) end; + tcpuvariantdefclass = class of tcpuvariantdef; tcpuformaldef = class(tformaldef) end; + tcpuformaldefclass = class of tcpuformaldef; tcpuforwarddef = class(tforwarddef) end; + tcpuforwarddefclass = class of tcpuforwarddef; tcpuundefineddef = class(tundefineddef) end; + tcpuundefineddefclass = class of tcpuundefineddef; tcpuerrordef = class(terrordef) end; + tcpuerrordefclass = class of tcpuerrordef; tcpupointerdef = class(tpointerdef) end; + tcpupointerdefclass = class of tcpupointerdef; tcpurecorddef = class(trecorddef) end; + tcpurecorddefclass = class of tcpurecorddef; tcpuimplementedinterface = class(timplementedinterface) end; + tcpuimplementedinterfaceclass = class of tcpuimplementedinterface; tcpuobjectdef = class(tobjectdef) end; + tcpuobjectdefclass = class of tcpuobjectdef; tcpuclassrefdef = class(tclassrefdef) end; + tcpuclassrefdefclass = class of tcpuclassrefdef; tcpuarraydef = class(tarraydef) end; + tcpuarraydefclass = class of tcpuarraydef; tcpuorddef = class(torddef) end; + tcpuorddefclass = class of tcpuorddef; tcpufloatdef = class(tfloatdef) end; + tcpufloatdefclass = class of tcpufloatdef; tcpuprocvardef = class(tprocvardef) end; + tcpuprocvardefclass = class of tcpuprocvardef; tcpuprocdef = class(tprocdef) end; + tcpuprocdefclass = class of tcpuprocdef; tcpustringdef = class(tstringdef) end; + tcpustringdefclass = class of tcpustringdef; tcpuenumdef = class(tenumdef) end; + tcpuenumdefclass = class of tcpuenumdef; tcpusetdef = class(tsetdef) end; + tcpusetdefclass = class of tcpusetdef; { syms } tcpulabelsym = class(tlabelsym) end; + tcpulabelsymclass = class of tcpulabelsym; tcpuunitsym = class(tunitsym) end; + tcpuunitsymclass = class of tcpuunitsym; tcpunamespacesym = class(tnamespacesym) end; + tcpunamespacesymclass = class of tcpunamespacesym; tcpuprocsym = class(tprocsym) end; + tcpuprocsymclass = class of tcpuprocsym; tcpuypesym = class(ttypesym) end; + tcpuypesymclass = class of tcpuypesym; tcpufieldvarsym = class(tfieldvarsym) end; + tcpufieldvarsymclass = class of tcpufieldvarsym; tcpulocalvarsym = class(tlocalvarsym) end; + tcpulocalvarsymclass = class of tcpulocalvarsym; tcpuparavarsym = class(tparavarsym) end; + tcpuparavarsymclass = class of tcpuparavarsym; tcpustaticvarsym = class(tstaticvarsym) end; + tcpustaticvarsymclass = class of tcpustaticvarsym; tcpuabsolutevarsym = class(tabsolutevarsym) end; + tcpuabsolutevarsymclass = class of tcpuabsolutevarsym; tcpupropertysym = class(tpropertysym) end; + tcpupropertysymclass = class of tcpupropertysym; tcpuconstsym = class(tconstsym) end; + tcpuconstsymclass = class of tcpuconstsym; tcpuenumsym = class(tenumsym) end; + tcpuenumsymclass = class of tcpuenumsym; tcpusyssym = class(tsyssym) end; + tcpusyssymclass = class of tcpusyssym; implementation diff --git a/compiler/arm/symcpu.pas b/compiler/arm/symcpu.pas index 27ac94790b..2728baa3be 100644 --- a/compiler/arm/symcpu.pas +++ b/compiler/arm/symcpu.pas @@ -32,103 +32,136 @@ type { defs } tcpufiledef = class(tfiledef) end; + tcpufiledefclass = class of tcpufiledef; tcpuvariantdef = class(tvariantdef) end; + tcpuvariantdefclass = class of tcpuvariantdef; tcpuformaldef = class(tformaldef) end; + tcpuformaldefclass = class of tcpuformaldef; tcpuforwarddef = class(tforwarddef) end; + tcpuforwarddefclass = class of tcpuforwarddef; tcpuundefineddef = class(tundefineddef) end; + tcpuundefineddefclass = class of tcpuundefineddef; tcpuerrordef = class(terrordef) end; + tcpuerrordefclass = class of tcpuerrordef; tcpupointerdef = class(tpointerdef) end; + tcpupointerdefclass = class of tcpupointerdef; tcpurecorddef = class(trecorddef) end; + tcpurecorddefclass = class of tcpurecorddef; tcpuimplementedinterface = class(timplementedinterface) end; + tcpuimplementedinterfaceclass = class of tcpuimplementedinterface; tcpuobjectdef = class(tobjectdef) end; + tcpuobjectdefclass = class of tcpuobjectdef; tcpuclassrefdef = class(tclassrefdef) end; + tcpuclassrefdefclass = class of tcpuclassrefdef; tcpuarraydef = class(tarraydef) end; + tcpuarraydefclass = class of tcpuarraydef; tcpuorddef = class(torddef) end; + tcpuorddefclass = class of tcpuorddef; tcpufloatdef = class(tfloatdef) end; + tcpufloatdefclass = class of tcpufloatdef; tcpuprocvardef = class(tprocvardef) end; + tcpuprocvardefclass = class of tcpuprocvardef; tcpuprocdef = class(tprocdef) end; + tcpuprocdefclass = class of tcpuprocdef; tcpustringdef = class(tstringdef) end; + tcpustringdefclass = class of tcpustringdef; tcpuenumdef = class(tenumdef) end; + tcpuenumdefclass = class of tcpuenumdef; tcpusetdef = class(tsetdef) end; + tcpusetdefclass = class of tcpusetdef; { syms } tcpulabelsym = class(tlabelsym) end; + tcpulabelsymclass = class of tcpulabelsym; tcpuunitsym = class(tunitsym) end; + tcpuunitsymclass = class of tcpuunitsym; tcpunamespacesym = class(tnamespacesym) end; + tcpunamespacesymclass = class of tcpunamespacesym; tcpuprocsym = class(tprocsym) end; + tcpuprocsymclass = class of tcpuprocsym; tcpuypesym = class(ttypesym) end; + tcpuypesymclass = class of tcpuypesym; tcpufieldvarsym = class(tfieldvarsym) end; + tcpufieldvarsymclass = class of tcpufieldvarsym; tcpulocalvarsym = class(tlocalvarsym) end; + tcpulocalvarsymclass = class of tcpulocalvarsym; tcpuparavarsym = class(tparavarsym) end; + tcpuparavarsymclass = class of tcpuparavarsym; tcpustaticvarsym = class(tstaticvarsym) end; + tcpustaticvarsymclass = class of tcpustaticvarsym; tcpuabsolutevarsym = class(tabsolutevarsym) end; + tcpuabsolutevarsymclass = class of tcpuabsolutevarsym; tcpupropertysym = class(tpropertysym) end; + tcpupropertysymclass = class of tcpupropertysym; tcpuconstsym = class(tconstsym) end; + tcpuconstsymclass = class of tcpuconstsym; tcpuenumsym = class(tenumsym) end; + tcpuenumsymclass = class of tcpuenumsym; tcpusyssym = class(tsyssym) end; + tcpusyssymclass = class of tcpusyssym; implementation diff --git a/compiler/avr/symcpu.pas b/compiler/avr/symcpu.pas index dc9f73c938..1379dc163c 100644 --- a/compiler/avr/symcpu.pas +++ b/compiler/avr/symcpu.pas @@ -32,103 +32,136 @@ type { defs } tcpufiledef = class(tfiledef) end; + tcpufiledefclass = class of tcpufiledef; tcpuvariantdef = class(tvariantdef) end; + tcpuvariantdefclass = class of tcpuvariantdef; tcpuformaldef = class(tformaldef) end; + tcpuformaldefclass = class of tcpuformaldef; tcpuforwarddef = class(tforwarddef) end; + tcpuforwarddefclass = class of tcpuforwarddef; tcpuundefineddef = class(tundefineddef) end; + tcpuundefineddefclass = class of tcpuundefineddef; tcpuerrordef = class(terrordef) end; + tcpuerrordefclass = class of tcpuerrordef; tcpupointerdef = class(tpointerdef) end; + tcpupointerdefclass = class of tcpupointerdef; tcpurecorddef = class(trecorddef) end; + tcpurecorddefclass = class of tcpurecorddef; tcpuimplementedinterface = class(timplementedinterface) end; + tcpuimplementedinterfaceclass = class of tcpuimplementedinterface; tcpuobjectdef = class(tobjectdef) end; + tcpuobjectdefclass = class of tcpuobjectdef; tcpuclassrefdef = class(tclassrefdef) end; + tcpuclassrefdefclass = class of tcpuclassrefdef; tcpuarraydef = class(tarraydef) end; + tcpuarraydefclass = class of tcpuarraydef; tcpuorddef = class(torddef) end; + tcpuorddefclass = class of tcpuorddef; tcpufloatdef = class(tfloatdef) end; + tcpufloatdefclass = class of tcpufloatdef; tcpuprocvardef = class(tprocvardef) end; + tcpuprocvardefclass = class of tcpuprocvardef; tcpuprocdef = class(tprocdef) end; + tcpuprocdefclass = class of tcpuprocdef; tcpustringdef = class(tstringdef) end; + tcpustringdefclass = class of tcpustringdef; tcpuenumdef = class(tenumdef) end; + tcpuenumdefclass = class of tcpuenumdef; tcpusetdef = class(tsetdef) end; + tcpusetdefclass = class of tcpusetdef; { syms } tcpulabelsym = class(tlabelsym) end; + tcpulabelsymclass = class of tcpulabelsym; tcpuunitsym = class(tunitsym) end; + tcpuunitsymclass = class of tcpuunitsym; tcpunamespacesym = class(tnamespacesym) end; + tcpunamespacesymclass = class of tcpunamespacesym; tcpuprocsym = class(tprocsym) end; + tcpuprocsymclass = class of tcpuprocsym; tcpuypesym = class(ttypesym) end; + tcpuypesymclass = class of tcpuypesym; tcpufieldvarsym = class(tfieldvarsym) end; + tcpufieldvarsymclass = class of tcpufieldvarsym; tcpulocalvarsym = class(tlocalvarsym) end; + tcpulocalvarsymclass = class of tcpulocalvarsym; tcpuparavarsym = class(tparavarsym) end; + tcpuparavarsymclass = class of tcpuparavarsym; tcpustaticvarsym = class(tstaticvarsym) end; + tcpustaticvarsymclass = class of tcpustaticvarsym; tcpuabsolutevarsym = class(tabsolutevarsym) end; + tcpuabsolutevarsymclass = class of tcpuabsolutevarsym; tcpupropertysym = class(tpropertysym) end; + tcpupropertysymclass = class of tcpupropertysym; tcpuconstsym = class(tconstsym) end; + tcpuconstsymclass = class of tcpuconstsym; tcpuenumsym = class(tenumsym) end; + tcpuenumsymclass = class of tcpuenumsym; tcpusyssym = class(tsyssym) end; + tcpusyssymclass = class of tcpusyssym; implementation diff --git a/compiler/generic/symcpu.pas b/compiler/generic/symcpu.pas index 2c968295cd..1a9b3e19e4 100644 --- a/compiler/generic/symcpu.pas +++ b/compiler/generic/symcpu.pas @@ -32,103 +32,136 @@ type { defs } tcpufiledef = class(tfiledef) end; + tcpufiledefclass = class of tcpufiledef; tcpuvariantdef = class(tvariantdef) end; + tcpuvariantdefclass = class of tcpuvariantdef; tcpuformaldef = class(tformaldef) end; + tcpuformaldefclass = class of tcpuformaldef; tcpuforwarddef = class(tforwarddef) end; + tcpuforwarddefclass = class of tcpuforwarddef; tcpuundefineddef = class(tundefineddef) end; + tcpuundefineddefclass = class of tcpuundefineddef; tcpuerrordef = class(terrordef) end; + tcpuerrordefclass = class of tcpuerrordef; tcpupointerdef = class(tpointerdef) end; + tcpupointerdefclass = class of tcpupointerdef; tcpurecorddef = class(trecorddef) end; + tcpurecorddefclass = class of tcpurecorddef; tcpuimplementedinterface = class(timplementedinterface) end; + tcpuimplementedinterfaceclass = class of tcpuimplementedinterface; tcpuobjectdef = class(tobjectdef) end; + tcpuobjectdefclass = class of tcpuobjectdef; tcpuclassrefdef = class(tclassrefdef) end; + tcpuclassrefdefclass = class of tcpuclassrefdef; tcpuarraydef = class(tarraydef) end; + tcpuarraydefclass = class of tcpuarraydef; tcpuorddef = class(torddef) end; + tcpuorddefclass = class of tcpuorddef; tcpufloatdef = class(tfloatdef) end; + tcpufloatdefclass = class of tcpufloatdef; tcpuprocvardef = class(tprocvardef) end; + tcpuprocvardefclass = class of tcpuprocvardef; tcpuprocdef = class(tprocdef) end; + tcpuprocdefclass = class of tcpuprocdef; tcpustringdef = class(tstringdef) end; + tcpustringdefclass = class of tcpustringdef; tcpuenumdef = class(tenumdef) end; + tcpuenumdefclass = class of tcpuenumdef; tcpusetdef = class(tsetdef) end; + tcpusetdefclass = class of tcpusetdef; { syms } tcpulabelsym = class(tlabelsym) end; + tcpulabelsymclass = class of tcpulabelsym; tcpuunitsym = class(tunitsym) end; + tcpuunitsymclass = class of tcpuunitsym; tcpunamespacesym = class(tnamespacesym) end; + tcpunamespacesymclass = class of tcpunamespacesym; tcpuprocsym = class(tprocsym) end; + tcpuprocsymclass = class of tcpuprocsym; tcpuypesym = class(ttypesym) end; + tcpuypesymclass = class of tcpuypesym; tcpufieldvarsym = class(tfieldvarsym) end; + tcpufieldvarsymclass = class of tcpufieldvarsym; tcpulocalvarsym = class(tlocalvarsym) end; + tcpulocalvarsymclass = class of tcpulocalvarsym; tcpuparavarsym = class(tparavarsym) end; + tcpuparavarsymclass = class of tcpuparavarsym; tcpustaticvarsym = class(tstaticvarsym) end; + tcpustaticvarsymclass = class of tcpustaticvarsym; tcpuabsolutevarsym = class(tabsolutevarsym) end; + tcpuabsolutevarsymclass = class of tcpuabsolutevarsym; tcpupropertysym = class(tpropertysym) end; + tcpupropertysymclass = class of tcpupropertysym; tcpuconstsym = class(tconstsym) end; + tcpuconstsymclass = class of tcpuconstsym; tcpuenumsym = class(tenumsym) end; + tcpuenumsymclass = class of tcpuenumsym; tcpusyssym = class(tsyssym) end; + tcpusyssymclass = class of tcpusyssym; implementation diff --git a/compiler/i386/symcpu.pas b/compiler/i386/symcpu.pas index 54d34cc6b3..059074c798 100644 --- a/compiler/i386/symcpu.pas +++ b/compiler/i386/symcpu.pas @@ -32,103 +32,136 @@ type { defs } tcpufiledef = class(tfiledef) end; + tcpufiledefclass = class of tcpufiledef; tcpuvariantdef = class(tvariantdef) end; + tcpuvariantdefclass = class of tcpuvariantdef; tcpuformaldef = class(tformaldef) end; + tcpuformaldefclass = class of tcpuformaldef; tcpuforwarddef = class(tforwarddef) end; + tcpuforwarddefclass = class of tcpuforwarddef; tcpuundefineddef = class(tundefineddef) end; + tcpuundefineddefclass = class of tcpuundefineddef; tcpuerrordef = class(terrordef) end; + tcpuerrordefclass = class of tcpuerrordef; tcpupointerdef = class(tpointerdef) end; + tcpupointerdefclass = class of tcpupointerdef; tcpurecorddef = class(trecorddef) end; + tcpurecorddefclass = class of tcpurecorddef; tcpuimplementedinterface = class(timplementedinterface) end; + tcpuimplementedinterfaceclass = class of tcpuimplementedinterface; tcpuobjectdef = class(tobjectdef) end; + tcpuobjectdefclass = class of tcpuobjectdef; tcpuclassrefdef = class(tclassrefdef) end; + tcpuclassrefdefclass = class of tcpuclassrefdef; tcpuarraydef = class(tarraydef) end; + tcpuarraydefclass = class of tcpuarraydef; tcpuorddef = class(torddef) end; + tcpuorddefclass = class of tcpuorddef; tcpufloatdef = class(tfloatdef) end; + tcpufloatdefclass = class of tcpufloatdef; tcpuprocvardef = class(tprocvardef) end; + tcpuprocvardefclass = class of tcpuprocvardef; tcpuprocdef = class(tprocdef) end; + tcpuprocdefclass = class of tcpuprocdef; tcpustringdef = class(tstringdef) end; + tcpustringdefclass = class of tcpustringdef; tcpuenumdef = class(tenumdef) end; + tcpuenumdefclass = class of tcpuenumdef; tcpusetdef = class(tsetdef) end; + tcpusetdefclass = class of tcpusetdef; { syms } tcpulabelsym = class(tlabelsym) end; + tcpulabelsymclass = class of tcpulabelsym; tcpuunitsym = class(tunitsym) end; + tcpuunitsymclass = class of tcpuunitsym; tcpunamespacesym = class(tnamespacesym) end; + tcpunamespacesymclass = class of tcpunamespacesym; tcpuprocsym = class(tprocsym) end; + tcpuprocsymclass = class of tcpuprocsym; tcpuypesym = class(ttypesym) end; + tcpuypesymclass = class of tcpuypesym; tcpufieldvarsym = class(tfieldvarsym) end; + tcpufieldvarsymclass = class of tcpufieldvarsym; tcpulocalvarsym = class(tlocalvarsym) end; + tcpulocalvarsymclass = class of tcpulocalvarsym; tcpuparavarsym = class(tparavarsym) end; + tcpuparavarsymclass = class of tcpuparavarsym; tcpustaticvarsym = class(tstaticvarsym) end; + tcpustaticvarsymclass = class of tcpustaticvarsym; tcpuabsolutevarsym = class(ti86absolutevarsym) end; + tcpuabsolutevarsymclass = class of tcpuabsolutevarsym; tcpupropertysym = class(tpropertysym) end; + tcpupropertysymclass = class of tcpupropertysym; tcpuconstsym = class(tconstsym) end; + tcpuconstsymclass = class of tcpuconstsym; tcpuenumsym = class(tenumsym) end; + tcpuenumsymclass = class of tcpuenumsym; tcpusyssym = class(tsyssym) end; + tcpusyssymclass = class of tcpusyssym; implementation diff --git a/compiler/i8086/symcpu.pas b/compiler/i8086/symcpu.pas index c06c49260d..f28a13a724 100644 --- a/compiler/i8086/symcpu.pas +++ b/compiler/i8086/symcpu.pas @@ -33,88 +33,116 @@ type { defs } tcpufiledef = class(tfiledef) end; + tcpufiledefclass = class of tcpufiledef; tcpuvariantdef = class(tvariantdef) end; + tcpuvariantdefclass = class of tcpuvariantdef; tcpuformaldef = class(tformaldef) end; + tcpuformaldefclass = class of tcpuformaldef; tcpuforwarddef = class(tforwarddef) end; + tcpuforwarddefclass = class of tcpuforwarddef; tcpuundefineddef = class(tundefineddef) end; + tcpuundefineddefclass = class of tcpuundefineddef; tcpuerrordef = class(terrordef) end; + tcpuerrordefclass = class of tcpuerrordef; tcpupointerdef = class(tpointerdef) end; + tcpupointerdefclass = class of tcpupointerdef; tcpurecorddef = class(trecorddef) end; + tcpurecorddefclass = class of tcpurecorddef; tcpuimplementedinterface = class(timplementedinterface) end; + tcpuimplementedinterfaceclass = class of tcpuimplementedinterface; tcpuobjectdef = class(tobjectdef) end; + tcpuobjectdefclass = class of tcpuobjectdef; tcpuclassrefdef = class(tclassrefdef) end; + tcpuclassrefdefclass = class of tcpuclassrefdef; tcpuarraydef = class(tarraydef) end; + tcpuarraydefclass = class of tcpuarraydef; tcpuorddef = class(torddef) end; + tcpuorddefclass = class of tcpuorddef; tcpufloatdef = class(tfloatdef) end; + tcpufloatdefclass = class of tcpufloatdef; tcpuprocvardef = class(tprocvardef) end; + tcpuprocvardefclass = class of tcpuprocvardef; tcpuprocdef = class(tprocdef) end; + tcpuprocdefclass = class of tcpuprocdef; tcpustringdef = class(tstringdef) end; + tcpustringdefclass = class of tcpustringdef; tcpuenumdef = class(tenumdef) end; + tcpuenumdefclass = class of tcpuenumdef; tcpusetdef = class(tsetdef) end; + tcpusetdefclass = class of tcpusetdef; { syms } tcpulabelsym = class(tlabelsym) end; + tcpulabelsymclass = class of tcpulabelsym; tcpuunitsym = class(tunitsym) end; + tcpuunitsymclass = class of tcpuunitsym; tcpunamespacesym = class(tnamespacesym) end; + tcpunamespacesymclass = class of tcpunamespacesym; tcpuprocsym = class(tprocsym) end; + tcpuprocsymclass = class of tcpuprocsym; tcpuypesym = class(ttypesym) end; + tcpuypesymclass = class of tcpuypesym; tcpufieldvarsym = class(tfieldvarsym) end; + tcpufieldvarsymclass = class of tcpufieldvarsym; tcpulocalvarsym = class(tlocalvarsym) end; + tcpulocalvarsymclass = class of tcpulocalvarsym; tcpuparavarsym = class(tparavarsym) end; + tcpuparavarsymclass = class of tcpuparavarsym; tcpustaticvarsym = class(tstaticvarsym) end; + tcpustaticvarsymclass = class of tcpustaticvarsym; tcpuabsolutevarsym = class(ti86absolutevarsym) protected @@ -123,18 +151,23 @@ type public addrsegment : aword; end; + tcpuabsolutevarsymclass = class of tcpuabsolutevarsym; tcpupropertysym = class(tpropertysym) end; + tcpupropertysymclass = class of tcpupropertysym; tcpuconstsym = class(tconstsym) end; + tcpuconstsymclass = class of tcpuconstsym; tcpuenumsym = class(tenumsym) end; + tcpuenumsymclass = class of tcpuenumsym; tcpusyssym = class(tsyssym) end; + tcpusyssymclass = class of tcpusyssym; implementation diff --git a/compiler/ia64/symcpu.pas b/compiler/ia64/symcpu.pas index b31a721e4c..04265c09e3 100644 --- a/compiler/ia64/symcpu.pas +++ b/compiler/ia64/symcpu.pas @@ -32,103 +32,136 @@ type { defs } tcpufiledef = class(tfiledef) end; + tcpufiledefclass = class of tcpufiledef; tcpuvariantdef = class(tvariantdef) end; + tcpuvariantdefclass = class of tcpuvariantdef; tcpuformaldef = class(tformaldef) end; + tcpuformaldefclass = class of tcpuformaldef; tcpuforwarddef = class(tforwarddef) end; + tcpuforwarddefclass = class of tcpuforwarddef; tcpuundefineddef = class(tundefineddef) end; + tcpuundefineddefclass = class of tcpuundefineddef; tcpuerrordef = class(terrordef) end; + tcpuerrordefclass = class of tcpuerrordef; tcpupointerdef = class(tpointerdef) end; + tcpupointerdefclass = class of tcpupointerdef; tcpurecorddef = class(trecorddef) end; + tcpurecorddefclass = class of tcpurecorddef; tcpuimplementedinterface = class(timplementedinterface) end; + tcpuimplementedinterfaceclass = class of tcpuimplementedinterface; tcpuobjectdef = class(tobjectdef) end; + tcpuobjectdefclass = class of tcpuobjectdef; tcpuclassrefdef = class(tclassrefdef) end; + tcpuclassrefdefclass = class of tcpuclassrefdef; tcpuarraydef = class(tarraydef) end; + tcpuarraydefclass = class of tcpuarraydef; tcpuorddef = class(torddef) end; + tcpuorddefclass = class of tcpuorddef; tcpufloatdef = class(tfloatdef) end; + tcpufloatdefclass = class of tcpufloatdef; tcpuprocvardef = class(tprocvardef) end; + tcpuprocvardefclass = class of tcpuprocvardef; tcpuprocdef = class(tprocdef) end; + tcpuprocdefclass = class of tcpuprocdef; tcpustringdef = class(tstringdef) end; + tcpustringdefclass = class of tcpustringdef; tcpuenumdef = class(tenumdef) end; + tcpuenumdefclass = class of tcpuenumdef; tcpusetdef = class(tsetdef) end; + tcpusetdefclass = class of tcpusetdef; { syms } tcpulabelsym = class(tlabelsym) end; + tcpulabelsymclass = class of tcpulabelsym; tcpuunitsym = class(tunitsym) end; + tcpuunitsymclass = class of tcpuunitsym; tcpunamespacesym = class(tnamespacesym) end; + tcpunamespacesymclass = class of tcpunamespacesym; tcpuprocsym = class(tprocsym) end; + tcpuprocsymclass = class of tcpuprocsym; tcpuypesym = class(ttypesym) end; + tcpuypesymclass = class of tcpuypesym; tcpufieldvarsym = class(tfieldvarsym) end; + tcpufieldvarsymclass = class of tcpufieldvarsym; tcpulocalvarsym = class(tlocalvarsym) end; + tcpulocalvarsymclass = class of tcpulocalvarsym; tcpuparavarsym = class(tparavarsym) end; + tcpuparavarsymclass = class of tcpuparavarsym; tcpustaticvarsym = class(tstaticvarsym) end; + tcpustaticvarsymclass = class of tcpustaticvarsym; tcpuabsolutevarsym = class(tabsolutevarsym) end; + tcpuabsolutevarsymclass = class of tcpuabsolutevarsym; tcpupropertysym = class(tpropertysym) end; + tcpupropertysymclass = class of tcpupropertysym; tcpuconstsym = class(tconstsym) end; + tcpuconstsymclass = class of tcpuconstsym; tcpuenumsym = class(tenumsym) end; + tcpuenumsymclass = class of tcpuenumsym; tcpusyssym = class(tsyssym) end; + tcpusyssymclass = class of tcpusyssym; implementation diff --git a/compiler/jvm/symcpu.pas b/compiler/jvm/symcpu.pas index ffd5896333..19db48e0fd 100644 --- a/compiler/jvm/symcpu.pas +++ b/compiler/jvm/symcpu.pas @@ -35,45 +35,59 @@ type { defs } tcpufiledef = class(tfiledef) end; + tcpufiledefclass = class of tcpufiledef; tcpuvariantdef = class(tvariantdef) end; + tcpuvariantdefclass = class of tcpuvariantdef; tcpuformaldef = class(tformaldef) end; + tcpuformaldefclass = class of tcpuformaldef; tcpuforwarddef = class(tforwarddef) end; + tcpuforwarddefclass = class of tcpuforwarddef; tcpuundefineddef = class(tundefineddef) end; + tcpuundefineddefclass = class of tcpuundefineddef; tcpuerrordef = class(terrordef) end; + tcpuerrordefclass = class of tcpuerrordef; tcpupointerdef = class(tpointerdef) end; + tcpupointerdefclass = class of tcpupointerdef; tcpurecorddef = class(trecorddef) end; + tcpurecorddefclass = class of tcpurecorddef; tcpuimplementedinterface = class(timplementedinterface) end; + tcpuimplementedinterfaceclass = class of tcpuimplementedinterface; tcpuobjectdef = class(tobjectdef) end; + tcpuobjectdefclass = class of tcpuobjectdef; tcpuclassrefdef = class(tclassrefdef) end; + tcpuclassrefdefclass = class of tcpuclassrefdef; tcpuarraydef = class(tarraydef) end; + tcpuarraydefclass = class of tcpuarraydef; tcpuorddef = class(torddef) end; + tcpuorddefclass = class of tcpuorddef; tcpufloatdef = class(tfloatdef) end; + tcpufloatdefclass = class of tcpufloatdef; tcpuprocvardef = class(tprocvardef) protected @@ -87,6 +101,7 @@ type procedure deref;override; function getcopy: tstoreddef; override; end; + tcpuprocvardefclass = class of tcpuprocvardef; tcpuprocdef = class(tprocdef) { generated assembler code; used by JVM backend so it can afterwards @@ -96,62 +111,80 @@ type function mangledname: TSymStr; override; destructor destroy; override; end; + tcpuprocdefclass = class of tcpuprocdef; tcpustringdef = class(tstringdef) end; + tcpustringdefclass = class of tcpustringdef; tcpuenumdef = class(tenumdef) end; + tcpuenumdefclass = class of tcpuenumdef; tcpusetdef = class(tsetdef) end; + tcpusetdefclass = class of tcpusetdef; { syms } tcpulabelsym = class(tlabelsym) end; + tcpulabelsymclass = class of tcpulabelsym; tcpuunitsym = class(tunitsym) end; + tcpuunitsymclass = class of tcpuunitsym; tcpunamespacesym = class(tnamespacesym) end; + tcpunamespacesymclass = class of tcpunamespacesym; tcpuprocsym = class(tprocsym) end; + tcpuprocsymclass = class of tcpuprocsym; tcpuypesym = class(ttypesym) end; + tcpuypesymclass = class of tcpuypesym; tcpufieldvarsym = class(tfieldvarsym) procedure set_externalname(const s: string); override; function mangledname: TSymStr; override; end; + tcpufieldvarsymclass = class of tcpufieldvarsym; tcpulocalvarsym = class(tlocalvarsym) end; + tcpulocalvarsymclass = class of tcpulocalvarsym; tcpuparavarsym = class(tparavarsym) end; + tcpuparavarsymclass = class of tcpuparavarsym; tcpustaticvarsym = class(tstaticvarsym) procedure set_mangledname(const s: TSymStr); override; function mangledname: TSymStr; override; end; + tcpustaticvarsymclass = class of tcpustaticvarsym; tcpuabsolutevarsym = class(tabsolutevarsym) end; + tcpuabsolutevarsymclass = class of tcpuabsolutevarsym; tcpupropertysym = class(tpropertysym) end; + tcpupropertysymclass = class of tcpupropertysym; tcpuconstsym = class(tconstsym) end; + tcpuconstsymclass = class of tcpuconstsym; tcpuenumsym = class(tenumsym) end; + tcpuenumsymclass = class of tcpuenumsym; tcpusyssym = class(tsyssym) end; + tcpusyssymclass = class of tcpusyssym; implementation diff --git a/compiler/m68k/symcpu.pas b/compiler/m68k/symcpu.pas index 4457258508..2d6ce28f94 100644 --- a/compiler/m68k/symcpu.pas +++ b/compiler/m68k/symcpu.pas @@ -32,103 +32,136 @@ type { defs } tcpufiledef = class(tfiledef) end; + tcpufiledefclass = class of tcpufiledef; tcpuvariantdef = class(tvariantdef) end; + tcpuvariantdefclass = class of tcpuvariantdef; tcpuformaldef = class(tformaldef) end; + tcpuformaldefclass = class of tcpuformaldef; tcpuforwarddef = class(tforwarddef) end; + tcpuforwarddefclass = class of tcpuforwarddef; tcpuundefineddef = class(tundefineddef) end; + tcpuundefineddefclass = class of tcpuundefineddef; tcpuerrordef = class(terrordef) end; + tcpuerrordefclass = class of tcpuerrordef; tcpupointerdef = class(tpointerdef) end; + tcpupointerdefclass = class of tcpupointerdef; tcpurecorddef = class(trecorddef) end; + tcpurecorddefclass = class of tcpurecorddef; tcpuimplementedinterface = class(timplementedinterface) end; + tcpuimplementedinterfaceclass = class of tcpuimplementedinterface; tcpuobjectdef = class(tobjectdef) end; + tcpuobjectdefclass = class of tcpuobjectdef; tcpuclassrefdef = class(tclassrefdef) end; + tcpuclassrefdefclass = class of tcpuclassrefdef; tcpuarraydef = class(tarraydef) end; + tcpuarraydefclass = class of tcpuarraydef; tcpuorddef = class(torddef) end; + tcpuorddefclass = class of tcpuorddef; tcpufloatdef = class(tfloatdef) end; + tcpufloatdefclass = class of tcpufloatdef; tcpuprocvardef = class(tprocvardef) end; + tcpuprocvardefclass = class of tcpuprocvardef; tcpuprocdef = class(tprocdef) end; + tcpuprocdefclass = class of tcpuprocdef; tcpustringdef = class(tstringdef) end; + tcpustringdefclass = class of tcpustringdef; tcpuenumdef = class(tenumdef) end; + tcpuenumdefclass = class of tcpuenumdef; tcpusetdef = class(tsetdef) end; + tcpusetdefclass = class of tcpusetdef; { syms } tcpulabelsym = class(tlabelsym) end; + tcpulabelsymclass = class of tcpulabelsym; tcpuunitsym = class(tunitsym) end; + tcpuunitsymclass = class of tcpuunitsym; tcpunamespacesym = class(tnamespacesym) end; + tcpunamespacesymclass = class of tcpunamespacesym; tcpuprocsym = class(tprocsym) end; + tcpuprocsymclass = class of tcpuprocsym; tcpuypesym = class(ttypesym) end; + tcpuypesymclass = class of tcpuypesym; tcpufieldvarsym = class(tfieldvarsym) end; + tcpufieldvarsymclass = class of tcpufieldvarsym; tcpulocalvarsym = class(tlocalvarsym) end; + tcpulocalvarsymclass = class of tcpulocalvarsym; tcpuparavarsym = class(tparavarsym) end; + tcpuparavarsymclass = class of tcpuparavarsym; tcpustaticvarsym = class(tstaticvarsym) end; + tcpustaticvarsymclass = class of tcpustaticvarsym; tcpuabsolutevarsym = class(tabsolutevarsym) end; + tcpuabsolutevarsymclass = class of tcpuabsolutevarsym; tcpupropertysym = class(tpropertysym) end; + tcpupropertysymclass = class of tcpupropertysym; tcpuconstsym = class(tconstsym) end; + tcpuconstsymclass = class of tcpuconstsym; tcpuenumsym = class(tenumsym) end; + tcpuenumsymclass = class of tcpuenumsym; tcpusyssym = class(tsyssym) end; + tcpusyssymclass = class of tcpusyssym; implementation diff --git a/compiler/mips/symcpu.pas b/compiler/mips/symcpu.pas index 4c3ff37bf9..3f1f6278e0 100644 --- a/compiler/mips/symcpu.pas +++ b/compiler/mips/symcpu.pas @@ -32,103 +32,136 @@ type { defs } tcpufiledef = class(tfiledef) end; + tcpufiledefclass = class of tcpufiledef; tcpuvariantdef = class(tvariantdef) end; + tcpuvariantdefclass = class of tcpuvariantdef; tcpuformaldef = class(tformaldef) end; + tcpuformaldefclass = class of tcpuformaldef; tcpuforwarddef = class(tforwarddef) end; + tcpuforwarddefclass = class of tcpuforwarddef; tcpuundefineddef = class(tundefineddef) end; + tcpuundefineddefclass = class of tcpuundefineddef; tcpuerrordef = class(terrordef) end; + tcpuerrordefclass = class of tcpuerrordef; tcpupointerdef = class(tpointerdef) end; + tcpupointerdefclass = class of tcpupointerdef; tcpurecorddef = class(trecorddef) end; + tcpurecorddefclass = class of tcpurecorddef; tcpuimplementedinterface = class(timplementedinterface) end; + tcpuimplementedinterfaceclass = class of tcpuimplementedinterface; tcpuobjectdef = class(tobjectdef) end; + tcpuobjectdefclass = class of tcpuobjectdef; tcpuclassrefdef = class(tclassrefdef) end; + tcpuclassrefdefclass = class of tcpuclassrefdef; tcpuarraydef = class(tarraydef) end; + tcpuarraydefclass = class of tcpuarraydef; tcpuorddef = class(torddef) end; + tcpuorddefclass = class of tcpuorddef; tcpufloatdef = class(tfloatdef) end; + tcpufloatdefclass = class of tcpufloatdef; tcpuprocvardef = class(tprocvardef) end; + tcpuprocvardefclass = class of tcpuprocvardef; tcpuprocdef = class(tprocdef) end; + tcpuprocdefclass = class of tcpuprocdef; tcpustringdef = class(tstringdef) end; + tcpustringdefclass = class of tcpustringdef; tcpuenumdef = class(tenumdef) end; + tcpuenumdefclass = class of tcpuenumdef; tcpusetdef = class(tsetdef) end; + tcpusetdefclass = class of tcpusetdef; { syms } tcpulabelsym = class(tlabelsym) end; + tcpulabelsymclass = class of tcpulabelsym; tcpuunitsym = class(tunitsym) end; + tcpuunitsymclass = class of tcpuunitsym; tcpunamespacesym = class(tnamespacesym) end; + tcpunamespacesymclass = class of tcpunamespacesym; tcpuprocsym = class(tprocsym) end; + tcpuprocsymclass = class of tcpuprocsym; tcpuypesym = class(ttypesym) end; + tcpuypesymclass = class of tcpuypesym; tcpufieldvarsym = class(tfieldvarsym) end; + tcpufieldvarsymclass = class of tcpufieldvarsym; tcpulocalvarsym = class(tlocalvarsym) end; + tcpulocalvarsymclass = class of tcpulocalvarsym; tcpuparavarsym = class(tparavarsym) end; + tcpuparavarsymclass = class of tcpuparavarsym; tcpustaticvarsym = class(tstaticvarsym) end; + tcpustaticvarsymclass = class of tcpustaticvarsym; tcpuabsolutevarsym = class(tabsolutevarsym) end; + tcpuabsolutevarsymclass = class of tcpuabsolutevarsym; tcpupropertysym = class(tpropertysym) end; + tcpupropertysymclass = class of tcpupropertysym; tcpuconstsym = class(tconstsym) end; + tcpuconstsymclass = class of tcpuconstsym; tcpuenumsym = class(tenumsym) end; + tcpuenumsymclass = class of tcpuenumsym; tcpusyssym = class(tsyssym) end; + tcpusyssymclass = class of tcpusyssym; implementation diff --git a/compiler/powerpc/symcpu.pas b/compiler/powerpc/symcpu.pas index 191cddbb9d..ec8346971a 100644 --- a/compiler/powerpc/symcpu.pas +++ b/compiler/powerpc/symcpu.pas @@ -32,103 +32,136 @@ type { defs } tcpufiledef = class(tfiledef) end; + tcpufiledefclass = class of tcpufiledef; tcpuvariantdef = class(tvariantdef) end; + tcpuvariantdefclass = class of tcpuvariantdef; tcpuformaldef = class(tformaldef) end; + tcpuformaldefclass = class of tcpuformaldef; tcpuforwarddef = class(tforwarddef) end; + tcpuforwarddefclass = class of tcpuforwarddef; tcpuundefineddef = class(tundefineddef) end; + tcpuundefineddefclass = class of tcpuundefineddef; tcpuerrordef = class(terrordef) end; + tcpuerrordefclass = class of tcpuerrordef; tcpupointerdef = class(tpointerdef) end; + tcpupointerdefclass = class of tcpupointerdef; tcpurecorddef = class(trecorddef) end; + tcpurecorddefclass = class of tcpurecorddef; tcpuimplementedinterface = class(timplementedinterface) end; + tcpuimplementedinterfaceclass = class of tcpuimplementedinterface; tcpuobjectdef = class(tobjectdef) end; + tcpuobjectdefclass = class of tcpuobjectdef; tcpuclassrefdef = class(tclassrefdef) end; + tcpuclassrefdefclass = class of tcpuclassrefdef; tcpuarraydef = class(tarraydef) end; + tcpuarraydefclass = class of tcpuarraydef; tcpuorddef = class(torddef) end; + tcpuorddefclass = class of tcpuorddef; tcpufloatdef = class(tfloatdef) end; + tcpufloatdefclass = class of tcpufloatdef; tcpuprocvardef = class(tprocvardef) end; + tcpuprocvardefclass = class of tcpuprocvardef; tcpuprocdef = class(tprocdef) end; + tcpuprocdefclass = class of tcpuprocdef; tcpustringdef = class(tstringdef) end; + tcpustringdefclass = class of tcpustringdef; tcpuenumdef = class(tenumdef) end; + tcpuenumdefclass = class of tcpuenumdef; tcpusetdef = class(tsetdef) end; + tcpusetdefclass = class of tcpusetdef; { syms } tcpulabelsym = class(tlabelsym) end; + tcpulabelsymclass = class of tcpulabelsym; tcpuunitsym = class(tunitsym) end; + tcpuunitsymclass = class of tcpuunitsym; tcpunamespacesym = class(tnamespacesym) end; + tcpunamespacesymclass = class of tcpunamespacesym; tcpuprocsym = class(tprocsym) end; + tcpuprocsymclass = class of tcpuprocsym; tcpuypesym = class(ttypesym) end; + tcpuypesymclass = class of tcpuypesym; tcpufieldvarsym = class(tfieldvarsym) end; + tcpufieldvarsymclass = class of tcpufieldvarsym; tcpulocalvarsym = class(tlocalvarsym) end; + tcpulocalvarsymclass = class of tcpulocalvarsym; tcpuparavarsym = class(tparavarsym) end; + tcpuparavarsymclass = class of tcpuparavarsym; tcpustaticvarsym = class(tstaticvarsym) end; + tcpustaticvarsymclass = class of tcpustaticvarsym; tcpuabsolutevarsym = class(tabsolutevarsym) end; + tcpuabsolutevarsymclass = class of tcpuabsolutevarsym; tcpupropertysym = class(tpropertysym) end; + tcpupropertysymclass = class of tcpupropertysym; tcpuconstsym = class(tconstsym) end; + tcpuconstsymclass = class of tcpuconstsym; tcpuenumsym = class(tenumsym) end; + tcpuenumsymclass = class of tcpuenumsym; tcpusyssym = class(tsyssym) end; + tcpusyssymclass = class of tcpusyssym; implementation diff --git a/compiler/powerpc64/symcpu.pas b/compiler/powerpc64/symcpu.pas index 4680425ac0..e6c9922cef 100644 --- a/compiler/powerpc64/symcpu.pas +++ b/compiler/powerpc64/symcpu.pas @@ -32,103 +32,136 @@ type { defs } tcpufiledef = class(tfiledef) end; + tcpufiledefclass = class of tcpufiledef; tcpuvariantdef = class(tvariantdef) end; + tcpuvariantdefclass = class of tcpuvariantdef; tcpuformaldef = class(tformaldef) end; + tcpuformaldefclass = class of tcpuformaldef; tcpuforwarddef = class(tforwarddef) end; + tcpuforwarddefclass = class of tcpuforwarddef; tcpuundefineddef = class(tundefineddef) end; + tcpuundefineddefclass = class of tcpuundefineddef; tcpuerrordef = class(terrordef) end; + tcpuerrordefclass = class of tcpuerrordef; tcpupointerdef = class(tpointerdef) end; + tcpupointerdefclass = class of tcpupointerdef; tcpurecorddef = class(trecorddef) end; + tcpurecorddefclass = class of tcpurecorddef; tcpuimplementedinterface = class(timplementedinterface) end; + tcpuimplementedinterfaceclass = class of tcpuimplementedinterface; tcpuobjectdef = class(tobjectdef) end; + tcpuobjectdefclass = class of tcpuobjectdef; tcpuclassrefdef = class(tclassrefdef) end; + tcpuclassrefdefclass = class of tcpuclassrefdef; tcpuarraydef = class(tarraydef) end; + tcpuarraydefclass = class of tcpuarraydef; tcpuorddef = class(torddef) end; + tcpuorddefclass = class of tcpuorddef; tcpufloatdef = class(tfloatdef) end; + tcpufloatdefclass = class of tcpufloatdef; tcpuprocvardef = class(tprocvardef) end; + tcpuprocvardefclass = class of tcpuprocvardef; tcpuprocdef = class(tprocdef) end; + tcpuprocdefclass = class of tcpuprocdef; tcpustringdef = class(tstringdef) end; + tcpustringdefclass = class of tcpustringdef; tcpuenumdef = class(tenumdef) end; + tcpuenumdefclass = class of tcpuenumdef; tcpusetdef = class(tsetdef) end; + tcpusetdefclass = class of tcpusetdef; { syms } tcpulabelsym = class(tlabelsym) end; + tcpulabelsymclass = class of tcpulabelsym; tcpuunitsym = class(tunitsym) end; + tcpuunitsymclass = class of tcpuunitsym; tcpunamespacesym = class(tnamespacesym) end; + tcpunamespacesymclass = class of tcpunamespacesym; tcpuprocsym = class(tprocsym) end; + tcpuprocsymclass = class of tcpuprocsym; tcpuypesym = class(ttypesym) end; + tcpuypesymclass = class of tcpuypesym; tcpufieldvarsym = class(tfieldvarsym) end; + tcpufieldvarsymclass = class of tcpufieldvarsym; tcpulocalvarsym = class(tlocalvarsym) end; + tcpulocalvarsymclass = class of tcpulocalvarsym; tcpuparavarsym = class(tparavarsym) end; + tcpuparavarsymclass = class of tcpuparavarsym; tcpustaticvarsym = class(tstaticvarsym) end; + tcpustaticvarsymclass = class of tcpustaticvarsym; tcpuabsolutevarsym = class(tabsolutevarsym) end; + tcpuabsolutevarsymclass = class of tcpuabsolutevarsym; tcpupropertysym = class(tpropertysym) end; + tcpupropertysymclass = class of tcpupropertysym; tcpuconstsym = class(tconstsym) end; + tcpuconstsymclass = class of tcpuconstsym; tcpuenumsym = class(tenumsym) end; + tcpuenumsymclass = class of tcpuenumsym; tcpusyssym = class(tsyssym) end; + tcpusyssymclass = class of tcpusyssym; implementation diff --git a/compiler/sparc/symcpu.pas b/compiler/sparc/symcpu.pas index 13e2966739..cec5293b3c 100644 --- a/compiler/sparc/symcpu.pas +++ b/compiler/sparc/symcpu.pas @@ -32,103 +32,136 @@ type { defs } tcpufiledef = class(tfiledef) end; + tcpufiledefclass = class of tcpufiledef; tcpuvariantdef = class(tvariantdef) end; + tcpuvariantdefclass = class of tcpuvariantdef; tcpuformaldef = class(tformaldef) end; + tcpuformaldefclass = class of tcpuformaldef; tcpuforwarddef = class(tforwarddef) end; + tcpuforwarddefclass = class of tcpuforwarddef; tcpuundefineddef = class(tundefineddef) end; + tcpuundefineddefclass = class of tcpuundefineddef; tcpuerrordef = class(terrordef) end; + tcpuerrordefclass = class of tcpuerrordef; tcpupointerdef = class(tpointerdef) end; + tcpupointerdefclass = class of tcpupointerdef; tcpurecorddef = class(trecorddef) end; + tcpurecorddefclass = class of tcpurecorddef; tcpuimplementedinterface = class(timplementedinterface) end; + tcpuimplementedinterfaceclass = class of tcpuimplementedinterface; tcpuobjectdef = class(tobjectdef) end; + tcpuobjectdefclass = class of tcpuobjectdef; tcpuclassrefdef = class(tclassrefdef) end; + tcpuclassrefdefclass = class of tcpuclassrefdef; tcpuarraydef = class(tarraydef) end; + tcpuarraydefclass = class of tcpuarraydef; tcpuorddef = class(torddef) end; + tcpuorddefclass = class of tcpuorddef; tcpufloatdef = class(tfloatdef) end; + tcpufloatdefclass = class of tcpufloatdef; tcpuprocvardef = class(tprocvardef) end; + tcpuprocvardefclass = class of tcpuprocvardef; tcpuprocdef = class(tprocdef) end; + tcpuprocdefclass = class of tcpuprocdef; tcpustringdef = class(tstringdef) end; + tcpustringdefclass = class of tcpustringdef; tcpuenumdef = class(tenumdef) end; + tcpuenumdefclass = class of tcpuenumdef; tcpusetdef = class(tsetdef) end; + tcpusetdefclass = class of tcpusetdef; { syms } tcpulabelsym = class(tlabelsym) end; + tcpulabelsymclass = class of tcpulabelsym; tcpuunitsym = class(tunitsym) end; + tcpuunitsymclass = class of tcpuunitsym; tcpunamespacesym = class(tnamespacesym) end; + tcpunamespacesymclass = class of tcpunamespacesym; tcpuprocsym = class(tprocsym) end; + tcpuprocsymclass = class of tcpuprocsym; tcpuypesym = class(ttypesym) end; + tcpuypesymclass = class of tcpuypesym; tcpufieldvarsym = class(tfieldvarsym) end; + tcpufieldvarsymclass = class of tcpufieldvarsym; tcpulocalvarsym = class(tlocalvarsym) end; + tcpulocalvarsymclass = class of tcpulocalvarsym; tcpuparavarsym = class(tparavarsym) end; + tcpuparavarsymclass = class of tcpuparavarsym; tcpustaticvarsym = class(tstaticvarsym) end; + tcpustaticvarsymclass = class of tcpustaticvarsym; tcpuabsolutevarsym = class(tabsolutevarsym) end; + tcpuabsolutevarsymclass = class of tcpuabsolutevarsym; tcpupropertysym = class(tpropertysym) end; + tcpupropertysymclass = class of tcpupropertysym; tcpuconstsym = class(tconstsym) end; + tcpuconstsymclass = class of tcpuconstsym; tcpuenumsym = class(tenumsym) end; + tcpuenumsymclass = class of tcpuenumsym; tcpusyssym = class(tsyssym) end; + tcpusyssymclass = class of tcpusyssym; implementation diff --git a/compiler/x86_64/symcpu.pas b/compiler/x86_64/symcpu.pas index d84bb78164..dbab28a5bd 100644 --- a/compiler/x86_64/symcpu.pas +++ b/compiler/x86_64/symcpu.pas @@ -32,103 +32,136 @@ type { defs } tcpufiledef = class(tfiledef) end; + tcpufiledefclass = class of tcpufiledef; tcpuvariantdef = class(tvariantdef) end; + tcpuvariantdefclass = class of tcpuvariantdef; tcpuformaldef = class(tformaldef) end; + tcpuformaldefclass = class of tcpuformaldef; tcpuforwarddef = class(tforwarddef) end; + tcpuforwarddefclass = class of tcpuforwarddef; tcpuundefineddef = class(tundefineddef) end; + tcpuundefineddefclass = class of tcpuundefineddef; tcpuerrordef = class(terrordef) end; + tcpuerrordefclass = class of tcpuerrordef; tcpupointerdef = class(tpointerdef) end; + tcpupointerdefclass = class of tcpupointerdef; tcpurecorddef = class(trecorddef) end; + tcpurecorddefclass = class of tcpurecorddef; tcpuimplementedinterface = class(timplementedinterface) end; + tcpuimplementedinterfaceclass = class of tcpuimplementedinterface; tcpuobjectdef = class(tobjectdef) end; + tcpuobjectdefclass = class of tcpuobjectdef; tcpuclassrefdef = class(tclassrefdef) end; + tcpuclassrefdefclass = class of tcpuclassrefdef; tcpuarraydef = class(tarraydef) end; + tcpuarraydefclass = class of tcpuarraydef; tcpuorddef = class(torddef) end; + tcpuorddefclass = class of tcpuorddef; tcpufloatdef = class(tfloatdef) end; + tcpufloatdefclass = class of tcpufloatdef; tcpuprocvardef = class(tprocvardef) end; + tcpuprocvardefclass = class of tcpuprocvardef; tcpuprocdef = class(tprocdef) end; + tcpuprocdefclass = class of tcpuprocdef; tcpustringdef = class(tstringdef) end; + tcpustringdefclass = class of tcpustringdef; tcpuenumdef = class(tenumdef) end; + tcpuenumdefclass = class of tcpuenumdef; tcpusetdef = class(tsetdef) end; + tcpusetdefclass = class of tcpusetdef; { syms } tcpulabelsym = class(tlabelsym) end; + tcpulabelsymclass = class of tcpulabelsym; tcpuunitsym = class(tunitsym) end; + tcpuunitsymclass = class of tcpuunitsym; tcpunamespacesym = class(tnamespacesym) end; + tcpunamespacesymclass = class of tcpunamespacesym; tcpuprocsym = class(tprocsym) end; + tcpuprocsymclass = class of tcpuprocsym; tcpuypesym = class(ttypesym) end; + tcpuypesymclass = class of tcpuypesym; tcpufieldvarsym = class(tfieldvarsym) end; + tcpufieldvarsymclass = class of tcpufieldvarsym; tcpulocalvarsym = class(tlocalvarsym) end; + tcpulocalvarsymclass = class of tcpulocalvarsym; tcpuparavarsym = class(tparavarsym) end; + tcpuparavarsymclass = class of tcpuparavarsym; tcpustaticvarsym = class(tstaticvarsym) end; + tcpustaticvarsymclass = class of tcpustaticvarsym; tcpuabsolutevarsym = class(tabsolutevarsym) end; + tcpuabsolutevarsymclass = class of tcpuabsolutevarsym; tcpupropertysym = class(tpropertysym) end; + tcpupropertysymclass = class of tcpupropertysym; tcpuconstsym = class(tconstsym) end; + tcpuconstsymclass = class of tcpuconstsym; tcpuenumsym = class(tenumsym) end; + tcpuenumsymclass = class of tcpuenumsym; tcpusyssym = class(tsyssym) end; + tcpusyssymclass = class of tcpusyssym; implementation