aboutsummaryrefslogtreecommitdiff
path: root/gcc/ada/a-except.adb
diff options
context:
space:
mode:
authorArnaud Charlet <charlet@gcc.gnu.org>2010-10-22 12:41:17 +0200
committerArnaud Charlet <charlet@gcc.gnu.org>2010-10-22 12:41:17 +0200
commit26df19ce4f23305c36afaa49cce1aa88a7199eda (patch)
treebdf76ce8ebb9ad9bd050ccab4a7ee4c1aa3a57c6 /gcc/ada/a-except.adb
parent0937fb69fec34dfefa6c9bc790c41c756a580720 (diff)
downloadgcc-26df19ce4f23305c36afaa49cce1aa88a7199eda.zip
gcc-26df19ce4f23305c36afaa49cce1aa88a7199eda.tar.gz
gcc-26df19ce4f23305c36afaa49cce1aa88a7199eda.tar.bz2
[multiple changes]
2010-10-22 Robert Dewar <dewar@adacore.com> * par-ch5.adb: Minor reformatting. * gcc-interface/Make-lang.in: Update dependencies. 2010-10-22 Robert Dewar <dewar@adacore.com> * a-except.adb, a-except-2005.adb: Add new Rcheck entry. * exp_ch13.adb (Add_Call): Make sure subtype is marked with Has_Predicates set to True if it inherits predicates. * sem_attr.adb: Handle 'First/'Last/'Range for predicated types * types.ads (PE_Bad_Attribute_For_Predicate): New reason code * types.h: Add new Rcheck entry. * einfo.ads, einfo.adb (Static_Predicate): New field. Minor code reorganization (file float routines in proper section) Fix bad field name in comments. 2010-10-22 Robert Dewar <dewar@adacore.com> * sem_eval.adb (Subtypes_Statically_Compatible): Check null exclusion case. 2010-10-22 Vincent Celier <celier@adacore.com> * prj-conf.adb (Get_Config_Switches): Detect if there is at least one declaration of IDE'Compiler_Command for one of the language in the main project. (Do_Autoconf): If there were at least one Compiler_Command declared and no target, invoke gprconfig with --target=all instead of the normalized host name. 2010-10-22 Robert Dewar <dewar@adacore.com> * par-ch4.adb: Update syntax in comments for Ada 2012. * sinfo.ads: Update syntax in comments for Ada 2012 * par-ch3.adb (Check_Restricted_Expression): Remove "in Ada 2012 mode" from msg. From-SVN: r165822
Diffstat (limited to 'gcc/ada/a-except.adb')
-rw-r--r--gcc/ada/a-except.adb44
1 files changed, 27 insertions, 17 deletions
diff --git a/gcc/ada/a-except.adb b/gcc/ada/a-except.adb
index ded93fc..8471dfe 100644
--- a/gcc/ada/a-except.adb
+++ b/gcc/ada/a-except.adb
@@ -415,6 +415,7 @@ package body Ada.Exceptions is
procedure Rcheck_31 (File : System.Address; Line : Integer);
procedure Rcheck_32 (File : System.Address; Line : Integer);
procedure Rcheck_33 (File : System.Address; Line : Integer);
+ procedure Rcheck_34 (File : System.Address; Line : Integer);
pragma Export (C, Rcheck_00, "__gnat_rcheck_00");
pragma Export (C, Rcheck_01, "__gnat_rcheck_01");
@@ -450,6 +451,7 @@ package body Ada.Exceptions is
pragma Export (C, Rcheck_31, "__gnat_rcheck_31");
pragma Export (C, Rcheck_32, "__gnat_rcheck_32");
pragma Export (C, Rcheck_33, "__gnat_rcheck_33");
+ pragma Export (C, Rcheck_34, "__gnat_rcheck_34");
-- None of these procedures ever returns (they raise an exception!). By
-- using pragma No_Return, we ensure that any junk code after the call,
@@ -488,6 +490,7 @@ package body Ada.Exceptions is
pragma No_Return (Rcheck_30);
pragma No_Return (Rcheck_32);
pragma No_Return (Rcheck_33);
+ pragma No_Return (Rcheck_34);
---------------------------------------------
-- Reason Strings for Run-Time Check Calls --
@@ -517,24 +520,26 @@ package body Ada.Exceptions is
Rmsg_16 : constant String := "attempt to take address of" &
" intrinsic subprogram" & NUL;
Rmsg_17 : constant String := "all guards closed" & NUL;
- Rmsg_18 : constant String := "Current_Task referenced in entry" &
+ Rmsg_18 : constant String := "attribute not allowed for " &
+ " generic subtype with predicate" & NUL;
+ Rmsg_19 : constant String := "Current_Task referenced in entry" &
" body" & NUL;
- Rmsg_19 : constant String := "duplicated entry address" & NUL;
- Rmsg_20 : constant String := "explicit raise" & NUL;
- Rmsg_21 : constant String := "finalize/adjust raised exception" & NUL;
- Rmsg_22 : constant String := "implicit return with No_Return" & NUL;
- Rmsg_23 : constant String := "misaligned address value" & NUL;
- Rmsg_24 : constant String := "missing return" & NUL;
- Rmsg_25 : constant String := "overlaid controlled object" & NUL;
- Rmsg_26 : constant String := "potentially blocking operation" & NUL;
- Rmsg_27 : constant String := "stubbed subprogram called" & NUL;
- Rmsg_28 : constant String := "unchecked union restriction" & NUL;
- Rmsg_29 : constant String := "actual/returned class-wide" &
+ Rmsg_20 : constant String := "duplicated entry address" & NUL;
+ Rmsg_21 : constant String := "explicit raise" & NUL;
+ Rmsg_22 : constant String := "finalize/adjust raised exception" & NUL;
+ Rmsg_23 : constant String := "implicit return with No_Return" & NUL;
+ Rmsg_24 : constant String := "misaligned address value" & NUL;
+ Rmsg_25 : constant String := "missing return" & NUL;
+ Rmsg_26 : constant String := "overlaid controlled object" & NUL;
+ Rmsg_27 : constant String := "potentially blocking operation" & NUL;
+ Rmsg_28 : constant String := "stubbed subprogram called" & NUL;
+ Rmsg_29 : constant String := "unchecked union restriction" & NUL;
+ Rmsg_30 : constant String := "actual/returned class-wide" &
" value not transportable" & NUL;
- Rmsg_30 : constant String := "empty storage pool" & NUL;
- Rmsg_31 : constant String := "explicit raise" & NUL;
- Rmsg_32 : constant String := "infinite recursion" & NUL;
- Rmsg_33 : constant String := "object too large" & NUL;
+ Rmsg_31 : constant String := "empty storage pool" & NUL;
+ Rmsg_32 : constant String := "explicit raise" & NUL;
+ Rmsg_33 : constant String := "infinite recursion" & NUL;
+ Rmsg_34 : constant String := "object too large" & NUL;
-----------------------
-- Polling Interface --
@@ -1137,7 +1142,7 @@ package body Ada.Exceptions is
procedure Rcheck_30 (File : System.Address; Line : Integer) is
begin
- Raise_Storage_Error_Msg (File, Line, Rmsg_30'Address);
+ Raise_Program_Error_Msg (File, Line, Rmsg_30'Address);
end Rcheck_30;
procedure Rcheck_31 (File : System.Address; Line : Integer) is
@@ -1155,6 +1160,11 @@ package body Ada.Exceptions is
Raise_Storage_Error_Msg (File, Line, Rmsg_33'Address);
end Rcheck_33;
+ procedure Rcheck_34 (File : System.Address; Line : Integer) is
+ begin
+ Raise_Storage_Error_Msg (File, Line, Rmsg_34'Address);
+ end Rcheck_34;
+
-------------
-- Reraise --
-------------