mirror of
https://gitlab.com/freepascal.org/fpc/source.git
synced 2025-08-17 19:29:18 +02:00
* defutil.pas: added UnicodeString to automatable types, fixes compilation of webtbs/tw2649.pp after r16360. However it requires RTL support similar to one for AnsiString to be complete.
* ncal.pas, translate_disp_call(): fixed parameter alignment once more, this time it should be correct for both 32 and 64 bit platforms. git-svn-id: trunk@16394 -
This commit is contained in:
parent
3b7bb9da6a
commit
b4ac714201
@ -1047,7 +1047,7 @@ implementation
|
||||
floatdef:
|
||||
result:=tfloatdef(p).floattype in [s64currency,s64real,s32real];
|
||||
stringdef:
|
||||
result:=tstringdef(p).stringtype in [st_ansistring,st_widestring];
|
||||
result:=tstringdef(p).stringtype in [st_ansistring,st_widestring,st_unicodestring];
|
||||
variantdef:
|
||||
result:=true;
|
||||
objectdef:
|
||||
|
@ -400,7 +400,7 @@ implementation
|
||||
|
||||
{ we've to know the parameter size to allocate the temp. space }
|
||||
is_byref_para(assignmenttype);
|
||||
inc(paramssize, assignmenttype.size);
|
||||
inc(paramssize,max(voidpointertype.size,assignmenttype.size));
|
||||
|
||||
para:=tcallparanode(para.nextpara);
|
||||
end;
|
||||
@ -454,7 +454,7 @@ implementation
|
||||
restype:=restype or $80;
|
||||
|
||||
{ assign the argument/parameter to the temporary location }
|
||||
{ we always pass Variants by reference, RTL helpers must handle it
|
||||
{ for Variants, we always pass a pointer, RTL helpers must handle it
|
||||
depending on byref bit }
|
||||
|
||||
if assignmenttype=voidpointertype then
|
||||
@ -474,7 +474,7 @@ implementation
|
||||
)),assignmenttype),
|
||||
ctypeconvnode.create_internal(para.left,assignmenttype)));
|
||||
|
||||
inc(paramssize,assignmenttype.size);
|
||||
inc(paramssize,max(voidpointertype.size,assignmenttype.size));
|
||||
calldescnode.appendbyte(restype);
|
||||
|
||||
para.left:=nil;
|
||||
|
Loading…
Reference in New Issue
Block a user