summaryrefslogtreecommitdiff
path: root/gcc/testsuite/gnat.dg/in_out_parameter2.adb
blob: 1b5cc7e6abf6634b2059f090d26a8f56d88367ba (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
-- { dg-do run }
-- { dg-options "-gnat12" }

procedure In_Out_Parameter2 is

  function F (I : In Out Integer) return Boolean is
    A : Integer := I;
  begin
    I := I + 1;
    return (A > 0);
  end;

  I : Integer := 0;
  B : Boolean;

begin
  B := F (I);
  if B then
    raise Program_Error;
  end if;
  if I /= 1 then
    raise Program_Error;
  end if;
end;