fpc/tests/tbf/tb42.pp
2000-11-29 23:14:10 +00:00

35 lines
910 B
ObjectPascal

{ Old file: tbf0205.pp }
{ and parsing bugs, generates wrong code (tp7 gives parser error) OK 0.99.11 (PM) }
program bug_show;
{ By PAV (pavsoft@usa.net) }
function bad_uppercase(s:string):string;
var i:integer;
begin
for i:=1 to length(s) do
if (ord(s[i])>=97 and ord(s[i])<=122) then s[i]:=chr(ord(s[i])-97+65);
bad_uppercase:=s;
end;
function good_uppercase(s:string):string;
var i:integer;
begin
for i:=1 to length(s) do
if (ord(s[i])>=97) and (ord(s[i])<=122) then s[i]:=chr(ord(s[i])-97+65);
good_uppercase:=s;
end;
const cadena='Free Paskal Compiler 0.99.8 !!! (bug)';
begin
writeln('This is the original string before convert it');
writeln(cadena);
writeln();
writeln('This is a bad result, using "if ( and )"');
writeln(bad_uppercase(cadena));
writeln();
writeln('This is a good result, using "if () and ()"');
writeln(good_uppercase(cadena));
writeln();
end.