1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677 |
- /*
- * Copyright 2010-2011 PathScale, Inc. All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions are met:
- *
- * 1. Redistributions of source code must retain the above copyright notice,
- * this list of conditions and the following disclaimer.
- *
- * 2. Redistributions in binary form must reproduce the above copyright notice,
- * this list of conditions and the following disclaimer in the documentation
- * and/or other materials provided with the distribution.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS ``AS
- * IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
- * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
- * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR
- * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
- * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
- * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
- * OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
- * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
- * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
- * ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- */
- #ifndef _LINUX_EXCEPTION_
- #define _LINUX_EXCEPTION_
- namespace std
- {
- class exception
- {
- public:
- exception() throw();
- exception(const exception&) throw();
- exception& operator=(const exception&) throw();
- virtual ~exception();
- virtual const char* what() const throw();
- };
- /**
- * Bad allocation exception. Thrown by ::operator new() if it fails.
- */
- class bad_alloc: public exception
- {
- public:
- bad_alloc() throw();
- bad_alloc(const bad_alloc&) throw();
- bad_alloc& operator=(const bad_alloc&) throw();
- ~bad_alloc();
- virtual const char* what() const throw();
- };
- class bad_exception : public exception
- {
- public:
- bad_exception() throw();
- virtual ~bad_exception() throw();
- virtual const char* what() const throw();
- };
- bool uncaught_exception() throw();
-
- typedef void (*unexpected_handler)();
- unexpected_handler set_unexpected(unexpected_handler) throw();
- void unexpected();
- typedef void (*terminate_handler)();
- terminate_handler set_terminate(terminate_handler) throw();
- void terminate();
- } // namespace std
- #endif /* _LINUX_EXCEPTION_ */
|