Browse Source

+ added

git-svn-id: trunk@2157 -
Jonas Maebe 19 years ago
parent
commit
43af4ed0b3
2 changed files with 115 additions and 0 deletions
  1. 1 0
      .gitattributes
  2. 114 0
      tests/webtbs/tw4640.pp

+ 1 - 0
.gitattributes

@@ -6665,6 +6665,7 @@ tests/webtbs/tw4616.pp svneol=native#text/plain
 tests/webtbs/tw4632.pp svneol=native#text/plain
 tests/webtbs/tw4633.pp svneol=native#text/plain
 tests/webtbs/tw4635.pp svneol=native#text/plain
+tests/webtbs/tw4640.pp svneol=native#text/plain
 tests/webtbs/ub1873.pp svneol=native#text/plain
 tests/webtbs/ub1883.pp svneol=native#text/plain
 tests/webtbs/uw0555.pp svneol=native#text/plain

+ 114 - 0
tests/webtbs/tw4640.pp

@@ -0,0 +1,114 @@
+{ 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.