function Minimum_Accessibility (Id : E) return E is
    begin
-      pragma Assert (Ekind (Id) in Formal_Kind);
+      pragma Assert (Is_Formal (Id));
       return Node24 (Id);
    end Minimum_Accessibility;
 
 
    procedure Set_Minimum_Accessibility (Id : E; V : E) is
    begin
-      pragma Assert (Ekind (Id) in Formal_Kind);
+      pragma Assert (Is_Formal (Id));
       Set_Node24 (Id, V);
    end Set_Minimum_Accessibility;
 
 
               and then Is_Entity_Name (Prefix (Enc_Object))
               and then (Ekind (Btyp) = E_General_Access_Type
                          or else Is_Local_Anonymous_Access (Btyp))
-              and then Ekind (Entity (Prefix (Enc_Object))) in Formal_Kind
+              and then Is_Formal (Entity (Prefix (Enc_Object)))
               and then Ekind (Etype (Entity (Prefix (Enc_Object))))
                          = E_Anonymous_Access_Type
               and then Present (Extra_Accessibility
 
 
                   --  check (C)
 
-                  if Present (Obj) and then Ekind (Obj) in Formal_Kind then
+                  if Present (Obj) and then Is_Formal (Obj) then
                      Error_Msg_N
                        ("subpool cannot be part of a parameter", Ent);
                      return;
 
       --  To avoid these situations where expansion may get complex we verify
       --  that the minimum accessibility object is within scope.
 
-      if Ekind (E) in Formal_Kind
+      if Is_Formal (E)
         and then Present (Minimum_Accessibility (E))
         and then In_Open_Scopes (Scope (Minimum_Accessibility (E)))
       then