From 9c606f693ddca43b89097388cfdeeffaead030df Mon Sep 17 00:00:00 2001 From: Andrew MacLeod Date: Thu, 25 Jun 1998 14:11:54 +0000 Subject: [multiple changes] Thu Jun 25 16:59:18 EDT 1998 Andrew MacLeod * except.h (CATCH_ALL_TYPE): Definition moved to eh-common.h. (find_all_handler_type_matches): Add function prototype. * eh-common.h (CATCH_ALL_TYPE): Definition added. * except.c (find_all_handler_type_matches): Add function to find all runtime type info in the exception table. (output_exception_table_entry): Special case for CATCH_ALL_TYPE. 1998-06-25 Andrew MacLeod * cp-tree.h (mark_all_runtime_matches): Add function prototype. * except.c (mark_all_runtime_matches): Set TREE_SYMBOL_REFERENCED flag for all function decls which are in the exception table. * exception.cc (__cplus_type_matcher): Check for CATCH_ALL_TYPE match. * decl2.c (finish_file): Call mark_all_runtime_matches to make sure code is emitted for any referenced rtti function. From-SVN: r20718 --- gcc/eh-common.h | 5 +++++ 1 file changed, 5 insertions(+) (limited to 'gcc/eh-common.h') diff --git a/gcc/eh-common.h b/gcc/eh-common.h index c8d98c0..143ddff 100644 --- a/gcc/eh-common.h +++ b/gcc/eh-common.h @@ -86,9 +86,14 @@ typedef struct exception_descriptor typedef void * (*__eh_matcher) PROTO ((void *, void *, void *)); +/* This value is to be checked as a 'match all' case in the runtime field. */ + +#define CATCH_ALL_TYPE ((void *) -1) + /* This is the runtime exception information. This forms the minimum required information for an exception info pointer in an eh_context structure. */ + typedef struct __eh_info { __eh_matcher match_function; -- cgit v1.1