aboutsummaryrefslogtreecommitdiff
path: root/gcc/ada/checks.ads
diff options
context:
space:
mode:
authorArnaud Charlet <charlet@gcc.gnu.org>2011-10-24 11:51:42 +0200
committerArnaud Charlet <charlet@gcc.gnu.org>2011-10-24 11:51:42 +0200
commit12b4d3382209eb2c5248d8ce32b94d798acb0d0a (patch)
tree8e1fb052842b78ff9e44ea4d0eb445b8ea8d15ee /gcc/ada/checks.ads
parent08ce7bb81da9e4a7c4d7669b1d080a046d5b171b (diff)
downloadgcc-12b4d3382209eb2c5248d8ce32b94d798acb0d0a.zip
gcc-12b4d3382209eb2c5248d8ce32b94d798acb0d0a.tar.gz
gcc-12b4d3382209eb2c5248d8ce32b94d798acb0d0a.tar.bz2
[multiple changes]
2011-10-24 Ed Schonberg <schonberg@adacore.com> * sem_ch12.adb (Earlier): make available globally. If both nodes have the same sloc, the freeze node that does not come from source is the later one. (True_Parent): Make available globally. (Previous_Instance): Subsidiary of Insert_Freeze_Node_For_Instance, to check whether the generic parent of the current instance is declared within a previous instance in the same unit or declarative part, in which case the freeze nodes of both instances must appear in order to prevent elaboration problems in gigi. * sem_ch12.adb (Insert_Freeze_Node_For_Instance): A stub is a freeze point, and the freeze node of a preceding instantiation must be inserted before it. 2011-10-24 Robert Dewar <dewar@adacore.com> * checks.ads, checks.adb: Add handling of Synchronization_Check * debug.adb: Add doc for -gnatd.d and -gnatd.e (disable/enable atomic sync). * exp_ch2.adb (Expand_Entity_Reference): Set Atomic_Sync_Required flag Minor code reorganization. * opt.ads (Warn_On_Atomic_Synchronization): New switch. * par-prag.adb: Add dummy entries for pragma Disable/Enable_Atomic_Synchronization. * sem_prag.adb (Process_Suppress_Unsuppress): Handle case of Atomic_Synchronization specially (not suppressed by All_Checks, cannot be set from Source). (Pragma Disable/Enable_Atomic_Synchronization): Add processing. * sinfo.ads, sinfo.adb: Add Atomic_Sync_Required flag * snames.ads-tmpl: Add entry for Atomic_Synchronization Add entry for pragma Disable/Enable_Atomic_Synchronization * switch-c.adb: The -gnatp switch does not disable Atomic_Synchronization Add -gnatep switch to disable Atomic_Synchronization. * types.ads: Add entry for Synchronization_Check * usage.adb: Add line for -gnated switch * warnsw.adb: Settings for Warn_On_Atomic_Synchronization From-SVN: r180373
Diffstat (limited to 'gcc/ada/checks.ads')
-rw-r--r--gcc/ada/checks.ads29
1 files changed, 15 insertions, 14 deletions
diff --git a/gcc/ada/checks.ads b/gcc/ada/checks.ads
index 509a55c..83a67dc 100644
--- a/gcc/ada/checks.ads
+++ b/gcc/ada/checks.ads
@@ -6,7 +6,7 @@
-- --
-- S p e c --
-- --
--- Copyright (C) 1992-2010, Free Software Foundation, Inc. --
+-- Copyright (C) 1992-2011, Free Software Foundation, Inc. --
-- --
-- GNAT is free software; you can redistribute it and/or modify it under --
-- terms of the GNU General Public License as published by the Free Soft- --
@@ -46,19 +46,20 @@ package Checks is
-- Called for each new main source program, to initialize internal
-- variables used in the package body of the Checks unit.
- function Access_Checks_Suppressed (E : Entity_Id) return Boolean;
- function Accessibility_Checks_Suppressed (E : Entity_Id) return Boolean;
- function Alignment_Checks_Suppressed (E : Entity_Id) return Boolean;
- function Discriminant_Checks_Suppressed (E : Entity_Id) return Boolean;
- function Division_Checks_Suppressed (E : Entity_Id) return Boolean;
- function Elaboration_Checks_Suppressed (E : Entity_Id) return Boolean;
- function Index_Checks_Suppressed (E : Entity_Id) return Boolean;
- function Length_Checks_Suppressed (E : Entity_Id) return Boolean;
- function Overflow_Checks_Suppressed (E : Entity_Id) return Boolean;
- function Range_Checks_Suppressed (E : Entity_Id) return Boolean;
- function Storage_Checks_Suppressed (E : Entity_Id) return Boolean;
- function Tag_Checks_Suppressed (E : Entity_Id) return Boolean;
- function Validity_Checks_Suppressed (E : Entity_Id) return Boolean;
+ function Access_Checks_Suppressed (E : Entity_Id) return Boolean;
+ function Accessibility_Checks_Suppressed (E : Entity_Id) return Boolean;
+ function Alignment_Checks_Suppressed (E : Entity_Id) return Boolean;
+ function Atomic_Synchronization_Disabled (E : Entity_Id) return Boolean;
+ function Discriminant_Checks_Suppressed (E : Entity_Id) return Boolean;
+ function Division_Checks_Suppressed (E : Entity_Id) return Boolean;
+ function Elaboration_Checks_Suppressed (E : Entity_Id) return Boolean;
+ function Index_Checks_Suppressed (E : Entity_Id) return Boolean;
+ function Length_Checks_Suppressed (E : Entity_Id) return Boolean;
+ function Overflow_Checks_Suppressed (E : Entity_Id) return Boolean;
+ function Range_Checks_Suppressed (E : Entity_Id) return Boolean;
+ function Storage_Checks_Suppressed (E : Entity_Id) return Boolean;
+ function Tag_Checks_Suppressed (E : Entity_Id) return Boolean;
+ function Validity_Checks_Suppressed (E : Entity_Id) return Boolean;
-- These functions check to see if the named check is suppressed, either
-- by an active scope suppress setting, or because the check has been
-- specifically suppressed for the given entity. If no entity is relevant