diff options
author | Robert Dewar <dewar@adacore.com> | 2008-03-26 08:42:03 +0100 |
---|---|---|
committer | Arnaud Charlet <charlet@gcc.gnu.org> | 2008-03-26 08:42:03 +0100 |
commit | d9f86c0c6cab087228394773d7b528c63e0a9969 (patch) | |
tree | 49ed46af481edd7d719287b170dade2b946c4501 /gcc/ada/sinfo.adb | |
parent | 9b91e15091b8d490e742ec04d8f1813c27f9cc13 (diff) | |
download | gcc-d9f86c0c6cab087228394773d7b528c63e0a9969.zip gcc-d9f86c0c6cab087228394773d7b528c63e0a9969.tar.gz gcc-d9f86c0c6cab087228394773d7b528c63e0a9969.tar.bz2 |
sem_ch11.adb: Fix No_Exception_Restriction violation for SJLJ
2008-03-26 Robert Dewar <dewar@adacore.com>
* sem_ch11.adb: Fix No_Exception_Restriction violation for SJLJ
* sinfo.ads, sinfo.adb (From_At_End): New flag
From-SVN: r133576
Diffstat (limited to 'gcc/ada/sinfo.adb')
-rw-r--r-- | gcc/ada/sinfo.adb | 33 |
1 files changed, 29 insertions, 4 deletions
diff --git a/gcc/ada/sinfo.adb b/gcc/ada/sinfo.adb index 2baa94b..528d7f4 100644 --- a/gcc/ada/sinfo.adb +++ b/gcc/ada/sinfo.adb @@ -6,7 +6,7 @@ -- -- -- B o d y -- -- -- --- Copyright (C) 1992-2007, Free Software Foundation, Inc. -- +-- Copyright (C) 1992-2008, 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- -- @@ -1264,6 +1264,14 @@ package body Sinfo is return Flag5 (N); end Forwards_OK; + function From_At_End + (N : Node_Id) return Boolean is + begin + pragma Assert (False + or else NT (N).Nkind = N_Raise_Statement); + return Flag4 (N); + end From_At_End; + function From_At_Mod (N : Node_Id) return Boolean is begin @@ -3995,6 +4003,14 @@ package body Sinfo is Set_Flag5 (N, Val); end Set_Forwards_OK; + procedure Set_From_At_End + (N : Node_Id; Val : Boolean := True) is + begin + pragma Assert (False + or else NT (N).Nkind = N_Raise_Statement); + Set_Flag4 (N, Val); + end Set_From_At_End; + procedure Set_From_At_Mod (N : Node_Id; Val : Boolean := True) is begin @@ -5574,9 +5590,9 @@ package body Sinfo is UI_From_Int (Int (S) - Int (Sloc (N)))); end Set_End_Location; - -------------------------------- - -- Node_Kind Membership Tests -- - -------------------------------- + -------------- + -- Nkind_In -- + -------------- function Nkind_In (T : Node_Kind; @@ -5690,4 +5706,13 @@ package body Sinfo is T = V8; end Nkind_In; + ----------------- + -- Pragma_Name -- + ----------------- + + function Pragma_Name (N : Node_Id) return Name_Id is + begin + return Chars (Pragma_Identifier (N)); + end Pragma_Name; + end Sinfo; |