1--  { dg-do compile }
2procedure Predicate9 is
3  function Num (x : Integer) return Integer is (X + 1);
4  function name (X : String) return Integer is (X'Size);
5  function Post (One : Integer; Two : Integer) return Boolean;
6
7  generic
8     type T is private;
9  procedure Pro (Z : Integer) with Post =>
10    Post (Num (5), Two => Name ("yeah"));
11
12  function Post (One : Integer; Two : Integer) return Boolean
13  is (True);
14
15  procedure Pro (Z : Integer) is
16  begin
17     null;
18  end Pro;
19begin
20   null;
21end Predicate9;
22