mirror of
https://gitlab.com/freepascal.org/fpc/source.git
synced 2025-08-11 20:46:04 +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);
|
||||
childof:=pobjectdef(readdefref);
|
||||
options:=readlong;
|
||||
|
||||
oldread_member:=read_member;
|
||||
read_member:=true;
|
||||
if (options and (oo_hasprivate or oo_hasprotected))<>0 then
|
||||
object_options:=true;
|
||||
object_options:=true;
|
||||
publicsyms:=new(psymtable,loadasstruct(objectsymtable));
|
||||
object_options:=false;
|
||||
read_member:=oldread_member;
|
||||
|
||||
publicsyms^.defowner:=@self;
|
||||
publicsyms^.datasize:=savesize;
|
||||
publicsyms^.name := stringdup(name^);
|
||||
read_member:=oldread_member;
|
||||
|
||||
{ handles the predefined class tobject }
|
||||
{ the last TOBJECT which is loaded gets }
|
||||
@ -2349,16 +2350,16 @@
|
||||
var
|
||||
oldread_member : boolean;
|
||||
begin
|
||||
oldread_member:=read_member;
|
||||
read_member:=true;
|
||||
tdef.write;
|
||||
writelong(size);
|
||||
writestring(name^);
|
||||
writedefref(childof);
|
||||
writelong(options);
|
||||
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;
|
||||
object_options:=false;
|
||||
read_member:=oldread_member;
|
||||
@ -2530,7 +2531,10 @@
|
||||
|
||||
{
|
||||
$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
|
||||
+ checking for bounds type with ranges
|
||||
|
||||
|
@ -1463,20 +1463,21 @@
|
||||
inherited done;
|
||||
end;
|
||||
|
||||
|
||||
procedure ttypesym.deref;
|
||||
|
||||
begin
|
||||
resolvedef(definition);
|
||||
if assigned(definition) then
|
||||
if definition^.sym=nil then
|
||||
begin
|
||||
if definition^.sym=nil then
|
||||
definition^.sym:=@self;
|
||||
if definition^.deftype=recorddef then
|
||||
precdef(definition)^.symtable^.name:=stringdup('record '+name);
|
||||
{if definition^.deftype=objectdef then
|
||||
pobjectdef(definition)^.publicsyms^.name:=stringdup('object '+name);
|
||||
done in tobjectdef.load }
|
||||
if definition^.deftype=recorddef then
|
||||
precdef(definition)^.symtable^.name:=stringdup('record '+name);
|
||||
end;
|
||||
end;
|
||||
|
||||
|
||||
procedure ttypesym.write;
|
||||
|
||||
begin
|
||||
@ -1553,7 +1554,10 @@
|
||||
|
||||
{
|
||||
$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
|
||||
compile with _dTEST_FUNCRET
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user