summaryrefslogtreecommitdiff
path: root/fpcsrc/tests/webtbs/tw2382.pp
blob: 54d608ae3ec55c3d391eb44924f88bfe803c39b6 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
var
  sa : array[0..2] of char;
  s: string;
begin
  sa := '';
  s := sa;
  if length(s) <> 0 then
    begin
      writeln('error 0');
      halt(1);
    end;

  sa := 'a';
  s := sa;
  if length(s) <> 1 then
    begin
      writeln('error 1');
      halt(1);
    end;

  sa := 'ab';
  s := sa;
  if length(s) <> 2 then
    begin
      writeln('error 2');
      halt(1);
    end;

  sa := 'abc';
  // check for possible overflow in assignment
  s[4] := '1';
  s := sa;
  if length(s) <> 3 then
    begin
      writeln('error 3');
      halt(1);
    end;

  if s[4] <> '1' then
    begin
      writeln('error 4');
      halt(1);
    end;
end.