| 
									
										
										
										
											2005-03-17 22:45:11 +00:00
										 |  |  | #ifndef BOOST_BAD_WEAK_PTR_HPP_INCLUDED
 | 
					
						
							|  |  |  | #define BOOST_BAD_WEAK_PTR_HPP_INCLUDED
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | // MS compatible compilers support #pragma once
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | #if defined(_MSC_VER) && (_MSC_VER >= 1020)
 | 
					
						
							|  |  |  | # pragma once
 | 
					
						
							|  |  |  | #endif
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | //
 | 
					
						
							|  |  |  | //  detail/bad_weak_ptr.hpp
 | 
					
						
							|  |  |  | //
 | 
					
						
							|  |  |  | //  Copyright (c) 2001, 2002, 2003 Peter Dimov and Multi Media Ltd.
 | 
					
						
							|  |  |  | //
 | 
					
						
							|  |  |  | // Distributed under the Boost Software License, Version 1.0. (See
 | 
					
						
							|  |  |  | // accompanying file LICENSE_1_0.txt or copy at
 | 
					
						
							|  |  |  | // http://www.boost.org/LICENSE_1_0.txt)
 | 
					
						
							|  |  |  | //
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | #include <exception>
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | #ifdef __BORLANDC__
 | 
					
						
							|  |  |  | # pragma warn -8026     // Functions with excep. spec. are not expanded inline
 | 
					
						
							|  |  |  | #endif
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | namespace boost | 
					
						
							|  |  |  | { | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | // The standard library that comes with Borland C++ 5.5.1, 5.6.4
 | 
					
						
							|  |  |  | // defines std::exception and its members as having C calling
 | 
					
						
							|  |  |  | // convention (-pc). When the definition of bad_weak_ptr
 | 
					
						
							|  |  |  | // is compiled with -ps, the compiler issues an error.
 | 
					
						
							|  |  |  | // Hence, the temporary #pragma option -pc below.
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | #if defined(__BORLANDC__) && __BORLANDC__ <= 0x564
 | 
					
						
							|  |  |  | # pragma option push -pc
 | 
					
						
							|  |  |  | #endif
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | class bad_weak_ptr: public std::exception | 
					
						
							|  |  |  | { | 
					
						
							|  |  |  | public: | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     virtual char const * what() const throw() | 
					
						
							|  |  |  |     { | 
					
						
							| 
									
										
										
										
											2006-11-09 12:21:28 +00:00
										 |  |  |         return "tr1::bad_weak_ptr"; | 
					
						
							| 
									
										
										
										
											2005-03-17 22:45:11 +00:00
										 |  |  |     } | 
					
						
							|  |  |  | }; | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | #if defined(__BORLANDC__) && __BORLANDC__ <= 0x564
 | 
					
						
							|  |  |  | # pragma option pop
 | 
					
						
							|  |  |  | #endif
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | } // namespace boost
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | #ifdef __BORLANDC__
 | 
					
						
							|  |  |  | # pragma warn .8026     // Functions with excep. spec. are not expanded inline
 | 
					
						
							|  |  |  | #endif
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | #endif  // #ifndef BOOST_BAD_WEAK_PTR_HPP_INCLUDED
 |