diff --git a/.gitattributes b/.gitattributes index 6423179211..ea3574e284 100644 --- a/.gitattributes +++ b/.gitattributes @@ -15254,6 +15254,7 @@ tests/webtbs/tw30706.pp svneol=native#text/plain tests/webtbs/tw3073.pp svneol=native#text/plain tests/webtbs/tw3082.pp svneol=native#text/plain tests/webtbs/tw3083.pp svneol=native#text/plain +tests/webtbs/tw30923.pp svneol=native#text/pascal tests/webtbs/tw3093.pp svneol=native#text/plain tests/webtbs/tw3101.pp svneol=native#text/plain tests/webtbs/tw3104.pp svneol=native#text/plain diff --git a/compiler/ncal.pas b/compiler/ncal.pas index 0c9167aabb..8217d55f9c 100644 --- a/compiler/ncal.pas +++ b/compiler/ncal.pas @@ -1755,6 +1755,7 @@ implementation n.procdefinition:=procdefinition; n.typedef := typedef; n.callnodeflags := callnodeflags; + n.pushedparasize:=pushedparasize; if assigned(callinitblock) then n.callinitblock:=tblocknode(callinitblock.dogetcopy) else diff --git a/tests/webtbs/tw30923.pp b/tests/webtbs/tw30923.pp new file mode 100644 index 0000000000..e58193f53e --- /dev/null +++ b/tests/webtbs/tw30923.pp @@ -0,0 +1,34 @@ +program project1; + +{$mode objfpc}{$H+} + +Type + QStringListH = class(TObject) end; + +function QStringList_size(handle: QStringListH): Integer; cdecl; +begin + Result := 1; +end; + +procedure QStringList_at(handle: QStringListH; retval: PWideString; i: Integer); cdecl; +begin + +end; + +procedure Test; +Var + AQStringListH : QStringListH; + AWideString : WideString; + I : Integer; +begin + For I := 0 To QStringList_size(AQStringListH) - 1 do + QStringList_at(AQStringListH, @AWideString, i); +end; + +Var + I : Integer; +begin + Test; + I := 0; +end. +