diff options
author | Jason Merrill <jason@yorick.cygnus.com> | 1997-10-31 09:52:55 +0000 |
---|---|---|
committer | Jason Merrill <jason@gcc.gnu.org> | 1997-10-31 04:52:55 -0500 |
commit | 6874c2647b322a34cd25c74c2cf2d0b374683df7 (patch) | |
tree | 4369bf2e164b02228c2c4a5d1ae1ceb8ded7b16a /gcc/bitmap.c | |
parent | 59fe8c2c207c0e4309ee5c9734ed16bd096eeedd (diff) | |
download | gcc-6874c2647b322a34cd25c74c2cf2d0b374683df7.zip gcc-6874c2647b322a34cd25c74c2cf2d0b374683df7.tar.gz gcc-6874c2647b322a34cd25c74c2cf2d0b374683df7.tar.bz2 |
[multiple changes]
Fri Oct 31 01:45:31 1997 Jason Merrill <jason@yorick.cygnus.com>
* libgcc2.c (L_eh): Define __eh_pc.
Replace __eh_type with generic pointer __eh_info.
Fri Oct 31 01:47:57 1997 Jason Merrill <jason@yorick.cygnus.com>
Support for nested exceptions.
* tinfo2.cc (__is_pointer): New fn.
* exception.cc (struct cp_eh_info): Define.
(__cp_exception_info, __uncatch_exception): New fns.
(__cp_push_exception, __cp_pop_exception): New fns.
* except.c: Lose saved_throw_{type,value,cleanup,in_catch}.
Lose empty_fndecl.
(init_exception_processing): Likewise. __eh_pc is now external.
(push_eh_info): New fn.
(get_eh_{info,value,type,caught}): New fns.
(push_eh_cleanup): Just call __cp_pop_exception.
(expand_start_catch_block): Use push_eh_info. Start the eh region
sooner.
(expand_end_eh_spec): Use push_eh_info.
(expand_throw): Call __cp_push_exception to set up the exception info.
Just pass the destructor or 0 as the cleanup. Call __uncatch_exception
when we rethrow.
(expand_builtin_throw): Don't refer to empty_fndecl.
From-SVN: r16248
Diffstat (limited to 'gcc/bitmap.c')
0 files changed, 0 insertions, 0 deletions