mirror of
https://gitlab.com/freepascal.org/fpc/source.git
synced 2025-08-12 13:06:18 +02:00
* object_options are always written for object syms
This commit is contained in:
parent
3c007d3646
commit
f656c1bb73
@ -2214,16 +2214,17 @@
|
|||||||
name:=stringdup(readstring);
|
name:=stringdup(readstring);
|
||||||
childof:=pobjectdef(readdefref);
|
childof:=pobjectdef(readdefref);
|
||||||
options:=readlong;
|
options:=readlong;
|
||||||
|
|
||||||
oldread_member:=read_member;
|
oldread_member:=read_member;
|
||||||
read_member:=true;
|
read_member:=true;
|
||||||
if (options and (oo_hasprivate or oo_hasprotected))<>0 then
|
object_options:=true;
|
||||||
object_options:=true;
|
|
||||||
publicsyms:=new(psymtable,loadasstruct(objectsymtable));
|
publicsyms:=new(psymtable,loadasstruct(objectsymtable));
|
||||||
object_options:=false;
|
object_options:=false;
|
||||||
|
read_member:=oldread_member;
|
||||||
|
|
||||||
publicsyms^.defowner:=@self;
|
publicsyms^.defowner:=@self;
|
||||||
publicsyms^.datasize:=savesize;
|
publicsyms^.datasize:=savesize;
|
||||||
publicsyms^.name := stringdup(name^);
|
publicsyms^.name := stringdup(name^);
|
||||||
read_member:=oldread_member;
|
|
||||||
|
|
||||||
{ handles the predefined class tobject }
|
{ handles the predefined class tobject }
|
||||||
{ the last TOBJECT which is loaded gets }
|
{ the last TOBJECT which is loaded gets }
|
||||||
@ -2349,16 +2350,16 @@
|
|||||||
var
|
var
|
||||||
oldread_member : boolean;
|
oldread_member : boolean;
|
||||||
begin
|
begin
|
||||||
oldread_member:=read_member;
|
|
||||||
read_member:=true;
|
|
||||||
tdef.write;
|
tdef.write;
|
||||||
writelong(size);
|
writelong(size);
|
||||||
writestring(name^);
|
writestring(name^);
|
||||||
writedefref(childof);
|
writedefref(childof);
|
||||||
writelong(options);
|
writelong(options);
|
||||||
current_ppu^.writeentry(ibobjectdef);
|
current_ppu^.writeentry(ibobjectdef);
|
||||||
if (options and (oo_hasprivate or oo_hasprotected))<>0 then
|
|
||||||
object_options:=true;
|
oldread_member:=read_member;
|
||||||
|
read_member:=true;
|
||||||
|
object_options:=true;
|
||||||
publicsyms^.writeasstruct;
|
publicsyms^.writeasstruct;
|
||||||
object_options:=false;
|
object_options:=false;
|
||||||
read_member:=oldread_member;
|
read_member:=oldread_member;
|
||||||
@ -2530,7 +2531,10 @@
|
|||||||
|
|
||||||
{
|
{
|
||||||
$Log$
|
$Log$
|
||||||
Revision 1.23 1998-08-19 00:42:42 peter
|
Revision 1.24 1998-08-20 12:53:26 peter
|
||||||
|
* object_options are always written for object syms
|
||||||
|
|
||||||
|
Revision 1.23 1998/08/19 00:42:42 peter
|
||||||
+ subrange types for enums
|
+ subrange types for enums
|
||||||
+ checking for bounds type with ranges
|
+ checking for bounds type with ranges
|
||||||
|
|
||||||
|
@ -1463,20 +1463,21 @@
|
|||||||
inherited done;
|
inherited done;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
|
|
||||||
procedure ttypesym.deref;
|
procedure ttypesym.deref;
|
||||||
|
|
||||||
begin
|
begin
|
||||||
resolvedef(definition);
|
resolvedef(definition);
|
||||||
if assigned(definition) then
|
if assigned(definition) then
|
||||||
if definition^.sym=nil then
|
begin
|
||||||
|
if definition^.sym=nil then
|
||||||
definition^.sym:=@self;
|
definition^.sym:=@self;
|
||||||
if definition^.deftype=recorddef then
|
if definition^.deftype=recorddef then
|
||||||
precdef(definition)^.symtable^.name:=stringdup('record '+name);
|
precdef(definition)^.symtable^.name:=stringdup('record '+name);
|
||||||
{if definition^.deftype=objectdef then
|
end;
|
||||||
pobjectdef(definition)^.publicsyms^.name:=stringdup('object '+name);
|
|
||||||
done in tobjectdef.load }
|
|
||||||
end;
|
end;
|
||||||
|
|
||||||
|
|
||||||
procedure ttypesym.write;
|
procedure ttypesym.write;
|
||||||
|
|
||||||
begin
|
begin
|
||||||
@ -1553,7 +1554,10 @@
|
|||||||
|
|
||||||
{
|
{
|
||||||
$Log$
|
$Log$
|
||||||
Revision 1.32 1998-08-20 09:26:46 pierre
|
Revision 1.33 1998-08-20 12:53:27 peter
|
||||||
|
* object_options are always written for object syms
|
||||||
|
|
||||||
|
Revision 1.32 1998/08/20 09:26:46 pierre
|
||||||
+ funcret setting in underproc testing
|
+ funcret setting in underproc testing
|
||||||
compile with _dTEST_FUNCRET
|
compile with _dTEST_FUNCRET
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user