[Ada] Reuse Is_Concurrent_Type when detecting protected or task types
authorPiotr Trojanek <trojanek@adacore.com>
Mon, 26 Oct 2020 11:15:34 +0000 (12:15 +0100)
committerPierre-Marie de Rodat <derodat@adacore.com>
Thu, 26 Nov 2020 08:39:48 +0000 (03:39 -0500)
gcc/ada/

* exp_ch13.adb, exp_ch9.adb, sem_ch8.adb, sem_util.adb: Replace
a combination of Is_Protected_Type and Is_Task_Type by
Is_Concurrent_Type.

gcc/ada/exp_ch13.adb
gcc/ada/exp_ch9.adb
gcc/ada/sem_ch8.adb
gcc/ada/sem_util.adb

index 30f101dba0d1d6667d7b3e96b9ba6e9b7f7951fb..89efca9e538e0da455331a9d4fcd6343e0250613 100644 (file)
@@ -582,9 +582,8 @@ package body Exp_Ch13 is
             Install_Visible_Declarations (E_Scope);
          end if;
 
-         if Is_Package_Or_Generic_Package (E_Scope) or else
-            Is_Protected_Type (E_Scope)             or else
-            Is_Task_Type (E_Scope)
+         if Is_Concurrent_Type (E_Scope)
+           or else Is_Package_Or_Generic_Package (E_Scope)
          then
             Install_Private_Declarations (E_Scope);
          end if;
index 72077236c9d70729e171dd68b3af6e91a03789a0..7b70321c97de7f55f79461cd5639a6b1c596f42d 100644 (file)
@@ -10579,13 +10579,12 @@ package body Exp_Ch9 is
       Extract_Entry (N, Concval, Ename, Index);
       Conc_Typ := Etype (Concval);
 
-      --  Examine the scope stack in order to find nearest enclosing protected
-      --  or task type. This will constitute our invocation source.
+      --  Examine the scope stack in order to find nearest enclosing concurrent
+      --  type. This will constitute our invocation source.
 
       Old_Typ := Current_Scope;
       while Present (Old_Typ)
-        and then not Is_Protected_Type (Old_Typ)
-        and then not Is_Task_Type (Old_Typ)
+        and then not Is_Concurrent_Type (Old_Typ)
       loop
          Old_Typ := Scope (Old_Typ);
       end loop;
index 9404d6884af51079173fbc47d91d0c9a01001f1b..950d4a00b2f4dfe8a779f252c4276e90a960993d 100644 (file)
@@ -7519,7 +7519,7 @@ package body Sem_Ch8 is
 
          --  Reference to type name in predicate/invariant expression
 
-         elsif (Is_Task_Type (P_Type) or else Is_Protected_Type (P_Type))
+         elsif Is_Concurrent_Type (P_Type)
            and then not In_Open_Scopes (P_Name)
            and then (not Is_Concurrent_Type (Etype (P_Name))
                       or else not In_Open_Scopes (Etype (P_Name)))
index 6875e470825cf1ee8d1bad7e518397959e4b3fd8..a5db24d9d74e45c19cf049f368a59abd5ba1b594 100644 (file)
@@ -25472,7 +25472,7 @@ package body Sem_Util is
       --  All other cases do not require a transient scope
 
       else
-         pragma Assert (Is_Protected_Type (Typ) or else Is_Task_Type (Typ));
+         pragma Assert (Is_Concurrent_Type (Typ));
          return False;
       end if;
    end Old_Requires_Transient_Scope;