aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorRobert Dewar <dewar@adacore.com>2014-07-31 09:48:12 +0000
committerArnaud Charlet <charlet@gcc.gnu.org>2014-07-31 11:48:12 +0200
commitc1c8247201bd938d49716db8edc2767ff2a4d7d5 (patch)
tree55467a1a341de6fbf3cdd390e8c0b60bef5dfba5 /gcc
parente95ad7ea78884d4df12f60a8d3592989b895664b (diff)
downloadgcc-c1c8247201bd938d49716db8edc2767ff2a4d7d5.zip
gcc-c1c8247201bd938d49716db8edc2767ff2a4d7d5.tar.gz
gcc-c1c8247201bd938d49716db8edc2767ff2a4d7d5.tar.bz2
bindgen.adb (Gen_Output_File_Ada): Generate pragma Suppress (Overflow_Check).
2014-07-31 Robert Dewar <dewar@adacore.com> * bindgen.adb (Gen_Output_File_Ada): Generate pragma Suppress (Overflow_Check). * gnatlink.adb (Process_Args): Remove generation of -gnato0, no longer needed. From-SVN: r213329
Diffstat (limited to 'gcc')
-rw-r--r--gcc/ada/ChangeLog7
-rw-r--r--gcc/ada/bindgen.adb8
-rw-r--r--gcc/ada/gnatlink.adb6
3 files changed, 15 insertions, 6 deletions
diff --git a/gcc/ada/ChangeLog b/gcc/ada/ChangeLog
index b14a429..bac79b1 100644
--- a/gcc/ada/ChangeLog
+++ b/gcc/ada/ChangeLog
@@ -1,5 +1,12 @@
2014-07-31 Robert Dewar <dewar@adacore.com>
+ * bindgen.adb (Gen_Output_File_Ada): Generate pragma Suppress
+ (Overflow_Check).
+ * gnatlink.adb (Process_Args): Remove generation of -gnato0,
+ no longer needed.
+
+2014-07-31 Robert Dewar <dewar@adacore.com>
+
* gnat_ugn.texi: Document new switch -gnato0.
* sem_ch3.ads: Minor reformatting.
* gnatlink.adb (Process_Args): Compile bind file with -gnato0
diff --git a/gcc/ada/bindgen.adb b/gcc/ada/bindgen.adb
index f045b8e..8d5262b 100644
--- a/gcc/ada/bindgen.adb
+++ b/gcc/ada/bindgen.adb
@@ -2493,6 +2493,14 @@ package body Bindgen is
", Body_File_Name => """ &
Name_Buffer (1 .. Name_Len + 3));
+ -- Generate pragma Suppress (Overflow_Check). This is needed for recent
+ -- versions of the compiler which have overflow checks on by default.
+ -- We do not want overflow checking enabled for the increments of the
+ -- elaboration variables (since this can cause an unwanted reference to
+ -- the last chance exception handler for limited run-times).
+
+ WBI ("pragma Suppress (Overflow_Check);");
+
-- Generate with of System.Restrictions to initialize
-- Run_Time_Restrictions.
diff --git a/gcc/ada/gnatlink.adb b/gcc/ada/gnatlink.adb
index 0ac7113..bb79180 100644
--- a/gcc/ada/gnatlink.adb
+++ b/gcc/ada/gnatlink.adb
@@ -676,12 +676,6 @@ procedure Gnatlink is
Binder_Options.Increment_Last;
Binder_Options.Table (Binder_Options.Last) := new String'("-gnatws");
- -- Also suppress overflow checks (needed now that we have them on by
- -- default, we want checks off when incrementing elaboration counters).
-
- Binder_Options.Increment_Last;
- Binder_Options.Table (Binder_Options.Last) := new String'("-gnato0");
-
-- If we did not get an ali file at all, and we had at least one
-- linker option, then assume that was the intended ali file after
-- all, so that we get a nicer message later on.