aboutsummaryrefslogtreecommitdiff
path: root/gcc/ada/raise.h
diff options
context:
space:
mode:
authorOlivier Hainque <hainque@adacore.com>2005-03-15 16:48:37 +0100
committerArnaud Charlet <charlet@gcc.gnu.org>2005-03-15 16:48:37 +0100
commit3f8abd98baf5945e43011ecb32025d8d2e82d93f (patch)
tree313419272b6493965898a2e40f850fa09f2d6163 /gcc/ada/raise.h
parent7e98a4c668eac2b10f06ff207a24d2ca4e867128 (diff)
downloadgcc-3f8abd98baf5945e43011ecb32025d8d2e82d93f.zip
gcc-3f8abd98baf5945e43011ecb32025d8d2e82d93f.tar.gz
gcc-3f8abd98baf5945e43011ecb32025d8d2e82d93f.tar.bz2
s-intman-posix.adb (Notify_Exception): Adjust signature, as handler for sigactions with SA_SIGINFO set.
2005-03-08 Olivier Hainque <hainque@adacore.com> * s-intman-posix.adb (Notify_Exception): Adjust signature, as handler for sigactions with SA_SIGINFO set. Call __gnat_adjust_context_for_raise before raising, to perform the potentially required adjustments to the machine context for the GCC unwinder. * raise.h (__gnat_adjust_context_for_raise): New prototype. * init.c (__gnat_adjust_context_for_raise) HPUX: Initial revision. Adjust PC by one in the provided machine context. (__gnat_install_handler) HPUX: Set SA_SIGINFO in the sigaction flags, so that the handler is passed the context structure to adjust prior to the raise. (__gnat_error_handler) HPUX: Adjust the signature to match what an SA_SIGINFO sigaction should look like. Call __gnat_adjust_context_for_raise before actually raising. (__gnat_adjust_context_for_raise): Default noop to help PC adjustments before raise from signal handlers. (__gnat_error_handler): Indirectly call a predicate function to determine if a condition should be resignaled or not. (__gnat_set_resignal_predicate): User interface to modify the predicate. (__gnat_default_resignal_p): Default GNAT predicate. From-SVN: r96482
Diffstat (limited to 'gcc/ada/raise.h')
-rw-r--r--gcc/ada/raise.h1
1 files changed, 1 insertions, 0 deletions
diff --git a/gcc/ada/raise.h b/gcc/ada/raise.h
index 8ef77d7..ad5bacf 100644
--- a/gcc/ada/raise.h
+++ b/gcc/ada/raise.h
@@ -70,5 +70,6 @@ extern void __gnat_initialize (void *);
extern void __gnat_init_float (void);
extern void __gnat_install_handler (void);
extern void __gnat_install_SEH_handler (void *);
+extern void __gnat_adjust_context_for_raise (int, void *);
extern int gnat_exit_status;