diff options
author | mmitchel <mmitchel@138bc75d-0d04-0410-961f-82ee72b054a4> | 1999-07-26 18:00:41 +0000 |
---|---|---|
committer | mmitchel <mmitchel@138bc75d-0d04-0410-961f-82ee72b054a4> | 1999-07-26 18:00:41 +0000 |
commit | 7e96998cf82f5636061190b10283dca8292a42ce (patch) | |
tree | 9216a0b22ba03a33455d4b70464e84c1ade8a5e3 /gcc/cp | |
parent | 60f77c863ef5ff29dbc432f18819284204b9d01c (diff) | |
download | gcc-7e96998cf82f5636061190b10283dca8292a42ce.tar.gz |
* exception.cc (__cplus_type_matcher): Match __eh_matcher
prototype.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@28271 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/cp')
-rw-r--r-- | gcc/cp/ChangeLog | 5 | ||||
-rw-r--r-- | gcc/cp/exception.cc | 10 |
2 files changed, 9 insertions, 6 deletions
diff --git a/gcc/cp/ChangeLog b/gcc/cp/ChangeLog index 4dba90246fb..aac5417740a 100644 --- a/gcc/cp/ChangeLog +++ b/gcc/cp/ChangeLog @@ -1,3 +1,8 @@ +1999-07-26 Nathan Sidwell <nathan@acm.org> + + * exception.cc (__cplus_type_matcher): Match __eh_matcher + prototype. + 1999-07-26 Mark Mitchell <mark@codesourcery.com> * cp-tree.h (CP_INTEGRAL_TYPE_P): New macro. diff --git a/gcc/cp/exception.cc b/gcc/cp/exception.cc index 8e8f35f50db..372536ed952 100644 --- a/gcc/cp/exception.cc +++ b/gcc/cp/exception.cc @@ -1,5 +1,5 @@ // Functions for Exception Support for -*- C++ -*- -// Copyright (C) 1994, 95-97, 1998 Free Software Foundation +// Copyright (C) 1994, 95-97, 1998, 1999 Free Software Foundation // This file is part of GNU CC. @@ -165,13 +165,11 @@ __eh_free (void *p) free (p); } - -typedef void * (* rtimetype) (void); - extern "C" void * -__cplus_type_matcher (cp_eh_info *info, rtimetype match_info, +__cplus_type_matcher (__eh_info *info_, void *match_info, exception_descriptor *exception_table) { + cp_eh_info *info = (cp_eh_info *)info_; void *ret; /* No exception table implies the old style mechanism, so don't check. */ @@ -184,7 +182,7 @@ __cplus_type_matcher (cp_eh_info *info, rtimetype match_info, /* we don't worry about version info yet, there is only one version! */ - void *match_type = match_info (); + void *match_type = ((void *(*)())match_info) (); ret = __throw_type_match_rtti (match_type, info->type, info->original_value); /* change value of exception */ if (ret) |