|
@@ -76,8 +76,16 @@ implementation
|
|
p^.hightree:=genloadnode(pvarsym(srsym),st);
|
|
p^.hightree:=genloadnode(pvarsym(srsym),st);
|
|
end
|
|
end
|
|
else
|
|
else
|
|
- len:=parraydef(p^.left^.resulttype)^.highrange-
|
|
|
|
- parraydef(p^.left^.resulttype)^.lowrange;
|
|
|
|
|
|
+ begin
|
|
|
|
+ { this is an empty constructor
|
|
|
|
+ if (parraydef(p^.left^.resulttype)^.highrange=-1)
|
|
|
|
+ and (parraydef(p^.left^.resulttype)^.lowrange=0) then
|
|
|
|
+ len:=0
|
|
|
|
+ else
|
|
|
|
+ }
|
|
|
|
+ len:=parraydef(p^.left^.resulttype)^.highrange-
|
|
|
|
+ parraydef(p^.left^.resulttype)^.lowrange;
|
|
|
|
+ end;
|
|
end;
|
|
end;
|
|
stringdef :
|
|
stringdef :
|
|
begin
|
|
begin
|
|
@@ -113,8 +121,8 @@ implementation
|
|
else
|
|
else
|
|
len:=0;
|
|
len:=0;
|
|
end;
|
|
end;
|
|
- if len>=0 then
|
|
|
|
- p^.hightree:=genordinalconstnode(len,s32bitdef);
|
|
|
|
|
|
+ { if len>=0 then }
|
|
|
|
+ p^.hightree:=genordinalconstnode(len,s32bitdef);
|
|
firstpass(p^.hightree);
|
|
firstpass(p^.hightree);
|
|
end;
|
|
end;
|
|
|
|
|
|
@@ -1156,7 +1164,12 @@ implementation
|
|
end.
|
|
end.
|
|
{
|
|
{
|
|
$Log$
|
|
$Log$
|
|
- Revision 1.44 1999-05-18 21:58:33 florian
|
|
|
|
|
|
+ Revision 1.45 1999-05-19 10:31:54 florian
|
|
|
|
+ * two bugs reported by Romio (bugs 13) are fixed:
|
|
|
|
+ - empty array constructors are now handled correctly (e.g. for sysutils.format)
|
|
|
|
+ - comparsion of ansistrings was sometimes coded wrong
|
|
|
|
+
|
|
|
|
+ Revision 1.44 1999/05/18 21:58:33 florian
|
|
* fixed some bugs related to temp. ansistrings and functions results
|
|
* fixed some bugs related to temp. ansistrings and functions results
|
|
which return records/objects/arrays which need init/final.
|
|
which return records/objects/arrays which need init/final.
|
|
|
|
|