aboutsummaryrefslogtreecommitdiff
path: root/gcc/ada/sem_ch4.adb
diff options
context:
space:
mode:
authorArnaud Charlet <charlet@gcc.gnu.org>2016-06-14 14:23:34 +0200
committerArnaud Charlet <charlet@gcc.gnu.org>2016-06-14 14:23:34 +0200
commit4969efdf7d92bc0a018a664fccc6d715e9de0d9f (patch)
tree44902dbb1fb8d8b10c405d92dde10e67b48d26df /gcc/ada/sem_ch4.adb
parent44900051ac48c87701dbbf3d485386013d56c97c (diff)
downloadgcc-4969efdf7d92bc0a018a664fccc6d715e9de0d9f.zip
gcc-4969efdf7d92bc0a018a664fccc6d715e9de0d9f.tar.gz
gcc-4969efdf7d92bc0a018a664fccc6d715e9de0d9f.tar.bz2
[multiple changes]
2016-06-14 Tristan Gingold <gingold@adacore.com> * einfo.adb, einfo.ads (Has_Timing_Event, Set_Has_Timing_Event): Add Has_Timing_Event flag. (Write_Entity_Flags): Display * sem_util.ads, sem_util.adb: (Propagate_Type_Has_Flags): New procedure to factorize code. * exp_ch3.adb (Expand_Freeze_Array_Type, Expand_Freeze_Record_Type): Call Propagate_Type_Has_Flags. * sem_ch3.adb (Access_Type_Decalaration): Initialize Has_Timing_Event flag. (Analyze_Object_Declaration): Move code that check No_Local_Timing_Events near the code that check No_Local_Protected_Objects. (Analyze_Private_Extension_Declaration, Array_Type_Declaration) (Build_Derived_Type, Copy_Array_Base_Type_Attributes, Process_Full_View) (Record_Type_Definition): Call Propagate_Type_Has_Flags. * sem_ch4.adb (Analyze_Allocator): Check No_Local_Timing_Events. * sem_ch7.adb (New_Private_Type): Set Has_Timing_Event on the Timing_Event type. (Uninstall_Declaration): Call Propagate_Type_Has_Flags. * sem_ch9.adb (Analyze_Protected_Definition): Call Propagate_Type_Has_Flags. 2016-06-14 Arnaud Charlet <charlet@adacore.com> * sem.ads: Minor style fix. From-SVN: r237434
Diffstat (limited to 'gcc/ada/sem_ch4.adb')
-rw-r--r--gcc/ada/sem_ch4.adb8
1 files changed, 8 insertions, 0 deletions
diff --git a/gcc/ada/sem_ch4.adb b/gcc/ada/sem_ch4.adb
index 33e3091..20d1a74 100644
--- a/gcc/ada/sem_ch4.adb
+++ b/gcc/ada/sem_ch4.adb
@@ -812,6 +812,14 @@ package body Sem_Ch4 is
Check_Restriction (No_Local_Protected_Objects, N);
end if;
+ -- Likewise for No_Local_Timing_Events
+
+ if Has_Timing_Event (Designated_Type (Acc_Type))
+ and then not Is_Library_Level_Entity (Acc_Type)
+ then
+ Check_Restriction (No_Local_Timing_Events, N);
+ end if;
+
-- If the No_Streams restriction is set, check that the type of the
-- object is not, and does not contain, any subtype derived from
-- Ada.Streams.Root_Stream_Type. Note that we guard the call to