--- Merging r44096 into '.':

U    compiler/nbas.pas
--- Recording mergeinfo for merge of r44096 into '.':
 U   .
--- Merging r46274 into '.':
G    compiler/nbas.pas
--- Recording mergeinfo for merge of r46274 into '.':
 G   .
--- Merging r48127 into '.':
A    tests/webtbs/tw38337.pp
--- Recording mergeinfo for merge of r48127 into '.':
 G   .

git-svn-id: branches/fixes_3_2@48128 -
This commit is contained in:
Jonas Maebe 2021-01-10 14:10:52 +00:00
parent fb97d7c467
commit 8ed055e4bf
3 changed files with 35 additions and 1 deletions

1
.gitattributes vendored
View File

@ -17826,6 +17826,7 @@ tests/webtbs/tw38151.pp svneol=native#text/pascal
tests/webtbs/tw3827.pp svneol=native#text/plain
tests/webtbs/tw3829.pp svneol=native#text/plain
tests/webtbs/tw3833.pp svneol=native#text/plain
tests/webtbs/tw38337.pp svneol=native#text/plain
tests/webtbs/tw3840.pp svneol=native#text/plain
tests/webtbs/tw3841.pp svneol=native#text/plain
tests/webtbs/tw3863.pp svneol=native#text/plain

View File

@ -176,7 +176,7 @@ interface
ttempinfoflags = set of ttempinfoflag;
const
tempinfostoreflags = [ti_may_be_in_reg,ti_addr_taken,ti_reference,ti_readonly,ti_no_final_regsync];
tempinfostoreflags = [ti_may_be_in_reg,ti_addr_taken,ti_reference,ti_readonly,ti_no_final_regsync,ti_nofini,ti_const];
type
{ to allow access to the location by temp references even after the temp has }
@ -1101,10 +1101,23 @@ implementation
procedure ttempcreatenode.printnodedata(var t:text);
var
f: ttempinfoflag;
first: Boolean;
begin
inherited printnodedata(t);
writeln(t,printnodeindention,'size = ',size,', temptypedef = ',tempinfo^.typedef.typesymbolprettyname,' = "',
tempinfo^.typedef.GetTypeName,'", tempinfo = $',hexstr(ptrint(tempinfo),sizeof(ptrint)*2));
write(t,printnodeindention,'[');
first:=true;
for f in tempflags do
begin
if not(first) then
write(t,',');
write(t,f);
first:=false;
end;
writeln(t,']');
writeln(t,printnodeindention,'tempinit =');
printnode(t,tempinfo^.tempinitcode);
end;

20
tests/webtbs/tw38337.pp Normal file
View File

@ -0,0 +1,20 @@
program fs;
{$mode objfpc}{$H+}
function UTF8Length(const s: string): PtrInt; inline;
begin
Result:=9;
end;
var
v1: string;
s: shortstring;
i: Integer;
begin
v1 := '123456789';
s := v1;
for i := 1 to UTF8Length(s)-8 do begin
end;
end.