CppCMS

- Main Page
- Related Pages
- Modules
- Namespaces
- Classes
- Files

- File List
- File Members

bad_weak_ptr.h
1 #ifndef BOOSTER_SMART_PTR_BAD_WEAK_PTR_HPP_INCLUDED
2 #define BOOSTER_SMART_PTR_BAD_WEAK_PTR_HPP_INCLUDED
3
4 //
5 // boost/smart_ptr/bad_weak_ptr.hpp
6 //
7 // Copyright (c) 2001, 2002, 2003 Peter Dimov and Multi Media Ltd.
8 //
9 // Distributed under the Boost Software License, Version 1.0. (See
10 // accompanying file LICENSE_1_0.txt or copy at
11 // http://www.boost.org/LICENSE_1_0.txt)
12 //
13
14 #include <booster/backtrace.h>
15
16 #ifdef __BORLANDC__
17 # pragma warn -8026 // Functions with excep. spec. are not expanded inline
18 #endif
19
20 namespace booster
21 {
22
23 // The standard library that comes with Borland C++ 5.5.1, 5.6.4
24 // defines std::exception and its members as having C calling
25 // convention (-pc). When the definition of bad_weak_ptr
26 // is compiled with -ps, the compiler issues an error.
27 // Hence, the temporary #pragma option -pc below.
28
29 #if defined(__BORLANDC__) && __BORLANDC__ <= 0x564
30 # pragma option push -pc
31 #endif
32
36 class bad_weak_ptr: public booster::exception
37 {
38 public:
39
40 virtual char const * what() const throw()
41 {
42 return "booster::bad_weak_ptr";
43 }
44 };
45
46 #if defined(__BORLANDC__) && __BORLANDC__ <= 0x564
47 # pragma option pop
48 #endif
49
50 } // namespace boost
51
52 #ifdef __BORLANDC__
53 # pragma warn .8026 // Functions with excep. spec. are not expanded inline
54 #endif
55
56 #endif // #ifndef BOOST_SMART_PTR_BAD_WEAK_PTR_HPP_INCLUDED
booster::exception
Same as std::exception but records stack trace.
Definition: backtrace.h:144
booster
Booster library namespace. The library that implements Boost Like API in ABI backward compatible way...
Definition: application.h:23
booster::bad_weak_ptr
Definition: bad_weak_ptr.h:36