mirror of
https://gitlab.com/freepascal.org/fpc/source.git
synced 2025-04-05 16:47:53 +02:00
115 lines
2.3 KiB
ObjectPascal
115 lines
2.3 KiB
ObjectPascal
{ Source provided for Free Pascal Bug Report 4640 }
|
|
{ Submitted by "Tomas" on 2005-12-28 }
|
|
{ e-mail: }
|
|
var
|
|
T: text;
|
|
W: word;
|
|
N: integer;
|
|
begin
|
|
DefaultTextLineBreakStyle := tlbsCRLF;
|
|
Assign (T, 'readtest.txt');
|
|
Rewrite (T);
|
|
W := 123;
|
|
Write (T, W);
|
|
Close (T);
|
|
Reset (T);
|
|
N := -1;
|
|
Read (T, N);
|
|
WriteLn (N);
|
|
if N <> 123 then
|
|
begin
|
|
WriteLn ('Wrong value!');
|
|
Halt (255);
|
|
end;
|
|
Read (T, N); (* Funny thing - FPC works OK for integers, not for words. *)
|
|
WriteLn (N);
|
|
if N <> 0 then
|
|
begin
|
|
WriteLn ('Wrong value!');
|
|
Halt (255);
|
|
end;
|
|
Read (T, N); (* Funny thing - FPC works OK for integers, not for words. *)
|
|
WriteLn (N);
|
|
if N <> 0 then
|
|
begin
|
|
WriteLn ('Wrong value!');
|
|
Halt (255);
|
|
end;
|
|
Close (T);
|
|
Reset (T);
|
|
W := 65535;
|
|
Read (T, W);
|
|
WriteLn (W);
|
|
if W <> 123 then
|
|
begin
|
|
WriteLn ('Wrong value!');
|
|
Halt (255);
|
|
end;
|
|
Read (T, W); (* FPC issues RTE 106 here, TP/BP doesn't. *)
|
|
WriteLn (W);
|
|
if W <> 0 then
|
|
begin
|
|
WriteLn ('Wrong value!');
|
|
Halt (255);
|
|
end;
|
|
Read (T, W); (* FPC issues RTE 106 here, TP/BP doesn't. *)
|
|
WriteLn (W);
|
|
if W <> 0 then
|
|
begin
|
|
WriteLn ('Wrong value!');
|
|
Halt (255);
|
|
end;
|
|
Close (T);
|
|
Rewrite (T);
|
|
W := 123;
|
|
WriteLn (T, W);
|
|
Close (T);
|
|
Reset (T);
|
|
Read (T, W);
|
|
WriteLn (W);
|
|
if W <> 123 then
|
|
begin
|
|
WriteLn ('Wrong value!');
|
|
Halt (255);
|
|
end;
|
|
Read (T, W); (* Another inconsistence - Read works, ReadLn doesn't. *)
|
|
WriteLn (W);
|
|
if W <> 0 then
|
|
begin
|
|
WriteLn ('Wrong value!');
|
|
Halt (255);
|
|
end;
|
|
Readln (T, W); (* Another inconsistence - Read works, ReadLn doesn't. *)
|
|
WriteLn (W);
|
|
if W <> 0 then
|
|
begin
|
|
WriteLn ('Wrong value!');
|
|
Halt (255);
|
|
end;
|
|
Close (T);
|
|
Reset (T);
|
|
Read (T, N);
|
|
WriteLn (n);
|
|
if n <> 123 then
|
|
begin
|
|
WriteLn ('Wrong value!');
|
|
Halt (255);
|
|
end;
|
|
Read (T, N); (* Again, FPC issues RTE 106 here, TP/BP doesn't. *)
|
|
WriteLn (N);
|
|
if W <> 0 then
|
|
begin
|
|
WriteLn ('Wrong value!');
|
|
Halt (255);
|
|
end;
|
|
ReadLn (T, N); (* Again, FPC issues RTE 106 here, TP/BP doesn't. *)
|
|
WriteLn (N);
|
|
if W <> 0 then
|
|
begin
|
|
WriteLn ('Wrong value!');
|
|
Halt (255);
|
|
end;
|
|
Close (T);
|
|
erase(t);
|
|
end.
|