mirror of
https://gitlab.com/freepascal.org/fpc/source.git
synced 2025-08-14 16:10:07 +02:00
* allow nil initialization of dynamic array
This commit is contained in:
parent
5e45fbb32e
commit
4be7d9ddeb
@ -620,17 +620,16 @@ implementation
|
|||||||
end;
|
end;
|
||||||
arraydef:
|
arraydef:
|
||||||
begin
|
begin
|
||||||
if token=_LKLAMMER then
|
if try_to_consume(_LKLAMMER) then
|
||||||
begin
|
begin
|
||||||
consume(_LKLAMMER);
|
for l:=tarraydef(t.def).lowrange to tarraydef(t.def).highrange-1 do
|
||||||
for l:=tarraydef(t.def).lowrange to tarraydef(t.def).highrange-1 do
|
begin
|
||||||
begin
|
readtypedconst(tarraydef(t.def).elementtype,nil,writable);
|
||||||
readtypedconst(tarraydef(t.def).elementtype,nil,writable);
|
consume(_COMMA);
|
||||||
consume(_COMMA);
|
end;
|
||||||
end;
|
readtypedconst(tarraydef(t.def).elementtype,nil,writable);
|
||||||
readtypedconst(tarraydef(t.def).elementtype,nil,writable);
|
consume(_RKLAMMER);
|
||||||
consume(_RKLAMMER);
|
end
|
||||||
end
|
|
||||||
else
|
else
|
||||||
{ if array of char then we allow also a string }
|
{ if array of char then we allow also a string }
|
||||||
if is_char(tarraydef(t.def).elementtype.def) then
|
if is_char(tarraydef(t.def).elementtype.def) then
|
||||||
@ -672,6 +671,14 @@ implementation
|
|||||||
end;
|
end;
|
||||||
p.free;
|
p.free;
|
||||||
end
|
end
|
||||||
|
else
|
||||||
|
{ dynamic array nil }
|
||||||
|
if is_dynamic_array(t.def) then
|
||||||
|
begin
|
||||||
|
{ Only allow nil initialization }
|
||||||
|
consume(_NIL);
|
||||||
|
curconstSegment.concat(Tai_const.Create_32bit(0));
|
||||||
|
end
|
||||||
else
|
else
|
||||||
begin
|
begin
|
||||||
{ we want the ( }
|
{ we want the ( }
|
||||||
@ -988,7 +995,10 @@ implementation
|
|||||||
end.
|
end.
|
||||||
{
|
{
|
||||||
$Log$
|
$Log$
|
||||||
Revision 1.64 2003-01-02 20:45:08 peter
|
Revision 1.65 2003-03-17 21:42:32 peter
|
||||||
|
* allow nil initialization of dynamic array
|
||||||
|
|
||||||
|
Revision 1.64 2003/01/02 20:45:08 peter
|
||||||
* fix uninited var
|
* fix uninited var
|
||||||
|
|
||||||
Revision 1.63 2002/12/26 12:34:54 florian
|
Revision 1.63 2002/12/26 12:34:54 florian
|
||||||
|
Loading…
Reference in New Issue
Block a user