summaryrefslogtreecommitdiff
path: root/gcc/ada/s-intman-solaris.adb
diff options
context:
space:
mode:
authorcharlet <charlet@138bc75d-0d04-0410-961f-82ee72b054a4>2009-06-19 10:32:08 +0000
committercharlet <charlet@138bc75d-0d04-0410-961f-82ee72b054a4>2009-06-19 10:32:08 +0000
commitb3147936fdd7a7154c23e9ca1522de848567df47 (patch)
tree0585d2a25e513092897376dbaffd0c5da52d3030 /gcc/ada/s-intman-solaris.adb
parent4651cfdd2a606b212f95ff6df53510acc9e054c6 (diff)
downloadgcc-b3147936fdd7a7154c23e9ca1522de848567df47.tar.gz
2009-06-19 Robert Dewar <dewar@adacore.com>
* g-cgi.adb: Minor reformatting 2009-06-19 Eric Botcazou <ebotcazou@adacore.com> * s-intman-solaris.adb (Notify_Exception): Do not discriminate on the signal code for SIGFPE and raise Program_Error for SIGILL. * s-osinte-solaris.ads: Remove signal code constants for SIGFPE. 2009-06-19 Ed Schonberg <schonberg@adacore.com> * sem_ch8.adb (Nvis_Messages): Do not list an entity declared in a generic package if there is a visibility candidate that is declared in a regular package. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@148691 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/ada/s-intman-solaris.adb')
-rw-r--r--gcc/ada/s-intman-solaris.adb33
1 files changed, 10 insertions, 23 deletions
diff --git a/gcc/ada/s-intman-solaris.adb b/gcc/ada/s-intman-solaris.adb
index e8bd6ffe419..170cd82f8da 100644
--- a/gcc/ada/s-intman-solaris.adb
+++ b/gcc/ada/s-intman-solaris.adb
@@ -89,40 +89,27 @@ package body System.Interrupt_Management is
info : access siginfo_t;
context : access ucontext_t)
is
+ pragma Unreferenced (info);
+
begin
-- Perform the necessary context adjustments prior to a raise
-- from a signal handler.
Adjust_Context_For_Raise (signo, context.all'Address);
- -- Check that treatment of exception propagation here
- -- is consistent with treatment of the abort signal in
- -- System.Task_Primitives.Operations.
+ -- Check that treatment of exception propagation here is consistent with
+ -- treatment of the abort signal in System.Task_Primitives.Operations.
case signo is
when SIGFPE =>
- case info.si_code is
- when FPE_INTDIV |
- FPE_INTOVF |
- FPE_FLTDIV |
- FPE_FLTOVF |
- FPE_FLTUND |
- FPE_FLTRES |
- FPE_FLTINV |
- FPE_FLTSUB =>
-
- raise Constraint_Error;
-
- when others =>
- pragma Assert (False);
- null;
- end case;
-
- when SIGILL | SIGSEGV | SIGBUS =>
+ raise Constraint_Error;
+ when SIGILL =>
+ raise Program_Error;
+ when SIGSEGV =>
+ raise Storage_Error;
+ when SIGBUS =>
raise Storage_Error;
-
when others =>
- pragma Assert (False);
null;
end case;
end Notify_Exception;