diff options
author | Arnaud Charlet <charlet@gcc.gnu.org> | 2010-10-22 12:41:17 +0200 |
---|---|---|
committer | Arnaud Charlet <charlet@gcc.gnu.org> | 2010-10-22 12:41:17 +0200 |
commit | 26df19ce4f23305c36afaa49cce1aa88a7199eda (patch) | |
tree | bdf76ce8ebb9ad9bd050ccab4a7ee4c1aa3a57c6 /gcc/ada/a-except.adb | |
parent | 0937fb69fec34dfefa6c9bc790c41c756a580720 (diff) | |
download | gcc-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.adb | 44 |
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 -- ------------- |