aboutsummaryrefslogtreecommitdiff
path: root/gcc/ada/restrict.adb
diff options
context:
space:
mode:
authorHristian Kirtchev <kirtchev@adacore.com>2015-10-23 10:43:30 +0000
committerArnaud Charlet <charlet@gcc.gnu.org>2015-10-23 12:43:30 +0200
commit6e840989730297abbe1610c3b15ecb565e967f1f (patch)
tree003413f638569a3555ab06e70ab2039cc817b977 /gcc/ada/restrict.adb
parentc79f6efda3d3ebae36ecd7beab058684d2790903 (diff)
downloadgcc-6e840989730297abbe1610c3b15ecb565e967f1f.zip
gcc-6e840989730297abbe1610c3b15ecb565e967f1f.tar.gz
gcc-6e840989730297abbe1610c3b15ecb565e967f1f.tar.bz2
exp_ch7.adb (Process_Transient_Objects): Reimplement to properly handle restriction No_Exception_Propagation.
2015-10-23 Hristian Kirtchev <kirtchev@adacore.com> * exp_ch7.adb (Process_Transient_Objects): Reimplement to properly handle restriction No_Exception_Propagation. * exp_ch11.adb (Expand_At_End_Handler): Update the parameter profile and all references to Block. * exp_ch11.ads (Expand_At_End_Handler): Update the parameter profile and comment on usage. * exp_intr.adb (Expand_Unc_Deallocation): Reimplement to properly handle restriction No_Exception_Propagation. * gnat1drv.adb, restrict.adb: Update comment. From-SVN: r229227
Diffstat (limited to 'gcc/ada/restrict.adb')
-rw-r--r--gcc/ada/restrict.adb14
1 files changed, 9 insertions, 5 deletions
diff --git a/gcc/ada/restrict.adb b/gcc/ada/restrict.adb
index fb0e968..37f579b 100644
--- a/gcc/ada/restrict.adb
+++ b/gcc/ada/restrict.adb
@@ -498,14 +498,18 @@ package body Restrict is
begin
Msg_Issued := False;
- -- In CodePeer and SPARK mode, we do not want to check for any
- -- restriction, or set additional restrictions other than those already
- -- set in gnat1drv.adb so that we have consistency between each
- -- compilation.
+ -- In CodePeer mode, we do not want to check for any restriction, or set
+ -- additional restrictions other than those already set in gnat1drv.adb
+ -- so that we have consistency between each compilation.
+
+ -- In GNATprove mode restrictions are checked, except for
+ -- No_Initialize_Scalars, which is implicitely set in gnat1drv.adb.
-- Just checking, SPARK does not allow restrictions to be set ???
- if CodePeer_Mode then
+ if CodePeer_Mode
+ or else (GNATprove_Mode and then R = No_Initialize_Scalars)
+ then
return;
end if;