* support dynamicarray<>nil

This commit is contained in:
peter 2002-10-05 00:47:03 +00:00
parent 91937f7adc
commit 443f982775
2 changed files with 24 additions and 2 deletions

View File

@ -150,6 +150,8 @@ implementation
(ld.deftype=variantdef) or (ld.deftype=variantdef) or
(rd.deftype=variantdef) or (rd.deftype=variantdef) or
((rd.deftype=pointerdef) and ((rd.deftype=pointerdef) and
not(is_dynamic_array(ld) and
is_voidpointer(rd)) and
not(is_pchar(rd) and not(is_pchar(rd) and
(is_chararray(ld) or (is_chararray(ld) or
(ld.deftype=stringdef) or (ld.deftype=stringdef) or
@ -160,6 +162,8 @@ implementation
(not is_integer(ld) or not (treetyp in [addn,subn])) (not is_integer(ld) or not (treetyp in [addn,subn]))
) or ) or
((ld.deftype=pointerdef) and ((ld.deftype=pointerdef) and
not(is_dynamic_array(rd) and
is_voidpointer(ld)) and
not(is_pchar(ld) and not(is_pchar(ld) and
(is_chararray(rd) or (is_chararray(rd) or
(rd.deftype=stringdef) or (rd.deftype=stringdef) or
@ -175,6 +179,8 @@ implementation
((ld.deftype=arraydef) and ((ld.deftype=arraydef) and
not((cs_mmx in aktlocalswitches) and not((cs_mmx in aktlocalswitches) and
is_mmx_able_array(ld)) and is_mmx_able_array(ld)) and
not(is_dynamic_array(ld) and
is_voidpointer(rd)) and
not(is_chararray(ld) and not(is_chararray(ld) and
(is_char(rd) or (is_char(rd) or
is_pchar(rd) or is_pchar(rd) or
@ -186,6 +192,8 @@ implementation
((rd.deftype=arraydef) and ((rd.deftype=arraydef) and
not((cs_mmx in aktlocalswitches) and not((cs_mmx in aktlocalswitches) and
is_mmx_able_array(rd)) and is_mmx_able_array(rd)) and
not(is_dynamic_array(rd) and
is_voidpointer(ld)) and
not(is_chararray(rd) and not(is_chararray(rd) and
(is_char(ld) or (is_char(ld) or
is_pchar(ld) or is_pchar(ld) or
@ -950,7 +958,10 @@ implementation
end. end.
{ {
$Log$ $Log$
Revision 1.48 2002-10-04 21:13:59 peter Revision 1.49 2002-10-05 00:47:03 peter
* support dynamicarray<>nil
Revision 1.48 2002/10/04 21:13:59 peter
* ignore vecn,subscriptn when checking for a procvar loadn * ignore vecn,subscriptn when checking for a procvar loadn
Revision 1.47 2002/09/16 18:09:34 peter Revision 1.47 2002/09/16 18:09:34 peter

View File

@ -1043,6 +1043,14 @@ implementation
CGMessage(type_e_mismatch); CGMessage(type_e_mismatch);
end end
{ support dynamicarray=nil,dynamicarray<>nil }
else if (is_dynamic_array(ld) and (rt=niln)) or
(is_dynamic_array(rd) and (lt=niln)) then
begin
if not(nodetype in [equaln,unequaln]) then
CGMessage(type_e_mismatch);
end
{$ifdef SUPPORT_MMX} {$ifdef SUPPORT_MMX}
{ mmx support, this must be before the zero based array { mmx support, this must be before the zero based array
check } check }
@ -1818,7 +1826,10 @@ begin
end. end.
{ {
$Log$ $Log$
Revision 1.66 2002-10-04 21:19:28 jonas Revision 1.67 2002-10-05 00:47:03 peter
* support dynamicarray<>nil
Revision 1.66 2002/10/04 21:19:28 jonas
* fixed web bug 2139: checking for division by zero fixed * fixed web bug 2139: checking for division by zero fixed
Revision 1.65 2002/09/07 15:25:02 peter Revision 1.65 2002/09/07 15:25:02 peter