* added protected queue_is_active() function to determine whether the

complex typed constant expressions queue is currently active

git-svn-id: trunk@31058 -
This commit is contained in:
Jonas Maebe 2015-06-13 22:48:31 +00:00
parent bcd04953c2
commit 8d0c5ecf5a

View File

@ -341,6 +341,11 @@ type
procedure queue_emit_asmsym(sym: tasmsymbol; def: tdef); virtual;
{ ... an ordinal constant }
procedure queue_emit_ordconst(value: int64; def: tdef); virtual;
protected
{ returns whether queue_init has been called without a corresponding
queue_emit_* to finish it }
function queue_is_active: boolean;
public
{ finalize the internal asmlist (if necessary) and return it.
This asmlist will be freed when the builder is destroyed, so add its
@ -1472,6 +1477,7 @@ implementation
fqueue_offset:=low(fqueue_offset);
end;
procedure ttai_typedconstbuilder.queue_emit_ordconst(value: int64; def: tdef);
begin
emit_ord_const(value,def);
@ -1479,6 +1485,12 @@ implementation
end;
function ttai_typedconstbuilder.queue_is_active: boolean;
begin
result:=fqueue_offset<>low(fqueue_offset)
end;
{****************************************************************************
tai_abstracttypedconst
****************************************************************************}