mirror of
https://gitlab.com/freepascal.org/fpc/source.git
synced 2025-04-16 15:59:30 +02:00
added bug #152
This commit is contained in:
parent
936aefc511
commit
61d9e05f90
31
bugs/bug0152.pp
Normal file
31
bugs/bug0152.pp
Normal file
@ -0,0 +1,31 @@
|
||||
Program bug0152;
|
||||
|
||||
{
|
||||
Shows wrong evaluation of loop boundaries. First end boundary must
|
||||
be calculated, only then Loop variable should be initialized.
|
||||
Change loop variable to J to see what should be the correct output.
|
||||
}
|
||||
|
||||
PROCEDURE LGrow(VAR S : String;C:CHAR;Count:WORD);
|
||||
|
||||
VAR I,J :WORD;
|
||||
|
||||
BEGIN
|
||||
I:=ORD(S[0]); { Keeping length in local data eases optimalisations}
|
||||
IF I<Count THEN
|
||||
BEGIN
|
||||
Move(S[1],S[Count-I+1],I);
|
||||
FOR I:=1 TO Count-I DO
|
||||
S[I]:=C;
|
||||
S[0]:=CHR(Count);
|
||||
END;
|
||||
END;
|
||||
|
||||
Var S : string;
|
||||
|
||||
begin
|
||||
s:='abcedfghij';
|
||||
writeln ('s : ',s);
|
||||
lgrow (s,'1',17);
|
||||
writeln ('S : ',s);
|
||||
end.
|
@ -201,3 +201,5 @@ bug0148.pp crash when setting function result of a declared but not yet
|
||||
bug0149.pp (a, b) compile bug0149b twice and you'll get a crash
|
||||
bug0150.pp Shows that the assert() macro is missing under Delphi.
|
||||
bug0151.pp crash when using undeclared variable in with-statement
|
||||
bug0152.pp End value of loop variable must be calculated before loop
|
||||
variable is initialized.
|
||||
|
Loading…
Reference in New Issue
Block a user