summaryrefslogtreecommitdiff
path: root/tests/test/tcase15.pp
blob: 14b31319c666a84e4683b26f421a6e3aed09b8f6 (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
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
{ comparsion of one-symbol strings as ranges and single cases }

{$H+}
var
  my_str: string;
  my_str_wide: string;
  my_str_ansi: string;
  my_str_uni: string;
  i: integer;

begin
  my_str := 'c';
  my_str_wide := 'c';
  my_str_ansi := 'c';
  my_str_uni := 'c';
  i := -1;

  case my_str of
    'a'..'b': i := 1;
    'c': i := 2;
    'd'..'eee': i := 3;
    else i := 0;
  end;

  if (i <> 2) then begin
    writeln('Error');
    Halt(1);
  end;


  case my_str_wide of
    'a'..'b': i := 1;
    'c': i := 2;
    'd'..'eee': i := 3;
    else i := 0;
  end;

  if (i <> 2) then begin
    writeln('Error');
    Halt(1);
  end;


  case my_str_ansi of
    'a'..'b': i := 1;
    'c': i := 2;
    'd'..'eee': i := 3;
    else i := 0;
  end;

  if (i <> 2) then begin
    writeln('Error');
    Halt(1);
  end;


  case my_str_uni of
    'a'..'b': i := 1;
    'c': i := 2;
    'd'..'eee': i := 3;
    else i := 0;
  end;

  if (i <> 2) then begin
    writeln('Error');
    Halt(1);
  end;
end.