44 lines
853 B
C++
44 lines
853 B
C++
// Exception Handling support header for -*- C++ -*-
|
|
// Copyright (C) 1995, 1996 Free Software Foundation
|
|
|
|
#ifndef __EXCEPTION__
|
|
#define __EXCEPTION__
|
|
|
|
#pragma interface "exception"
|
|
|
|
extern "C++" {
|
|
|
|
#ifdef __HONOR_STD
|
|
namespace std {
|
|
#endif
|
|
|
|
class exception {
|
|
public:
|
|
exception () { }
|
|
virtual ~exception () { }
|
|
virtual const char* what () const;
|
|
};
|
|
|
|
class bad_exception : public exception {
|
|
public:
|
|
bad_exception () { }
|
|
virtual ~bad_exception () { }
|
|
};
|
|
|
|
typedef void (*terminate_handler) ();
|
|
typedef void (*unexpected_handler) ();
|
|
|
|
terminate_handler set_terminate (terminate_handler);
|
|
void terminate () __attribute__ ((__noreturn__));
|
|
unexpected_handler set_unexpected (unexpected_handler);
|
|
void unexpected () __attribute__ ((__noreturn__));
|
|
bool uncaught_exception ();
|
|
|
|
#ifdef __HONOR_STD
|
|
} // namespace std
|
|
#endif
|
|
|
|
} // extern "C++"
|
|
|
|
#endif
|