mirror of
https://gitlab.com/freepascal.org/fpc/source.git
synced 2025-08-17 05:19:17 +02:00
parent
93353d8d79
commit
10ea652493
1
.gitattributes
vendored
1
.gitattributes
vendored
@ -15945,6 +15945,7 @@ tests/webtbs/tw32510.pp svneol=native#text/plain
|
|||||||
tests/webtbs/tw3252.pp svneol=native#text/plain
|
tests/webtbs/tw3252.pp svneol=native#text/plain
|
||||||
tests/webtbs/tw3255.pp svneol=native#text/plain
|
tests/webtbs/tw3255.pp svneol=native#text/plain
|
||||||
tests/webtbs/tw3257.pp svneol=native#text/plain
|
tests/webtbs/tw3257.pp svneol=native#text/plain
|
||||||
|
tests/webtbs/tw32576.pp svneol=native#text/pascal
|
||||||
tests/webtbs/tw3259.pp svneol=native#text/plain
|
tests/webtbs/tw3259.pp svneol=native#text/plain
|
||||||
tests/webtbs/tw3261.pp svneol=native#text/plain
|
tests/webtbs/tw3261.pp svneol=native#text/plain
|
||||||
tests/webtbs/tw3263.pp svneol=native#text/plain
|
tests/webtbs/tw3263.pp svneol=native#text/plain
|
||||||
|
@ -1117,6 +1117,8 @@ unit aoptx86;
|
|||||||
begin
|
begin
|
||||||
GetNextInstruction(p, hp1);
|
GetNextInstruction(p, hp1);
|
||||||
DebugMsg('PeepHole Optimization Mov2Nop done',p);
|
DebugMsg('PeepHole Optimization Mov2Nop done',p);
|
||||||
|
{ take care of the register (de)allocs following p }
|
||||||
|
UpdateUsedRegs(tai(p.next));
|
||||||
asml.remove(p);
|
asml.remove(p);
|
||||||
p.free;
|
p.free;
|
||||||
p:=hp1;
|
p:=hp1;
|
||||||
|
37
tests/webtbs/tw32576.pp
Normal file
37
tests/webtbs/tw32576.pp
Normal file
@ -0,0 +1,37 @@
|
|||||||
|
{$mode objfpc}
|
||||||
|
{$R+}
|
||||||
|
{$H+}
|
||||||
|
program xx;
|
||||||
|
|
||||||
|
|
||||||
|
uses sysutils;
|
||||||
|
|
||||||
|
|
||||||
|
function strlsIndexOf(str, searched: pansichar; l1, l2: longint): longint;
|
||||||
|
begin
|
||||||
|
result:=-1; //function removed for minimal example
|
||||||
|
end;
|
||||||
|
|
||||||
|
|
||||||
|
function strindexof(const str, searched: string): longint; inline;
|
||||||
|
begin
|
||||||
|
if str = '' then begin result := 0; exit; end;
|
||||||
|
result := strlsIndexOf(pchar(pointer(str)) , pchar(searched), length(str) , length(searched));
|
||||||
|
if result < 0 then begin result := 0; exit; end;
|
||||||
|
inc(result);
|
||||||
|
end;
|
||||||
|
|
||||||
|
|
||||||
|
function strBefore(const s, sep: string): string;
|
||||||
|
var
|
||||||
|
i: Integer;
|
||||||
|
begin
|
||||||
|
i := strIndexOf(s, sep); // line 26
|
||||||
|
if i = 0 then result := ''
|
||||||
|
else result := copy(s, 1, i-1);
|
||||||
|
end;
|
||||||
|
|
||||||
|
|
||||||
|
begin
|
||||||
|
strBefore('hallo', 'a');
|
||||||
|
end.
|
Loading…
Reference in New Issue
Block a user