* some runtime errors fixed, if compiled with -CrR

git-svn-id: trunk@42479 -
This commit is contained in:
florian 2019-07-21 12:25:55 +00:00
parent 83611b83cc
commit aac8559a8d
3 changed files with 5 additions and 4 deletions

View File

@ -247,7 +247,7 @@ implementation
FLastLocLabel:=nil;
code_alignment_factor:=1;
data_alignment_factor:=-4;
FDwarfList:=TLinkedList.Create;
FDwarfList:=TAsmList.Create;
end;

View File

@ -1077,7 +1077,7 @@ implementation
{ if we have a real type definition or a unique type we may bind
attributes to this def }
if not istyperenaming or isunique then
trtti_attribute_list.bind(rtti_attrs_def,tobjectdef(hdef).rtti_attribute_list);
trtti_attribute_list.bind(rtti_attrs_def,tstoreddef(hdef).rtti_attribute_list);
end;
if isgeneric and (not(hdef.typ in [objectdef,recorddef,arraydef,procvardef])

View File

@ -2302,7 +2302,8 @@ implementation
is_intregable:=false
{$else cpuhighleveltarget}
is_intregable:=not(is_special_array(self)) and
(tarraydef(self).size in [1,2,4,8]) and tstoreddef(tarraydef(self).elementdef).is_intregable
(tarraydef(self).size<=8) and (tarraydef(self).size in [1,2,4,8]) and
tstoreddef(tarraydef(self).elementdef).is_intregable
{$ifdef SUPPORT_MMX}
and not((cs_mmx in current_settings.localswitches) and
is_mmx_able_array(self))
@ -4228,7 +4229,7 @@ implementation
end;
{ Tarraydef.size may never be called for an open array! }
if highrange<lowrange then
if highrange=-1 then
internalerror(99080501);
if not (ado_IsBitPacked in arrayoptions) then
cachedelesize:=elesize