// <memory> -*- C++ -*-// Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006, 2007// Free Software Foundation, Inc.//// This file is part of the GNU ISO C++ Library. This library is free// software; you can redistribute it and/or modify it under the// terms of the GNU General Public License as published by the// Free Software Foundation; either version 2, or (at your option)// any later version.// This library is distributed in the hope that it will be useful,// but WITHOUT ANY WARRANTY; without even the implied warranty of// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the// GNU General Public License for more details.// You should have received a copy of the GNU General Public License// along with this library; see the file COPYING. If not, write to// the Free Software Foundation, 51 Franklin Street, Fifth Floor,// Boston, MA 02110-1301, USA.// As a special exception, you may use this file as part of a free software// library without restriction. Specifically, if other files instantiate// templates or use macros or inline functions from this file, or you compile// this file and link it with other files to produce an executable, this// file does not by itself cause the resulting executable to be covered by// the GNU General Public License. This exception does not however// invalidate any other reasons why the executable file might be covered by// the GNU General Public License./** Copyright (c) 1997-1999* Silicon Graphics Computer Systems, Inc.** Permission to use, copy, modify, distribute and sell this software* and its documentation for any purpose is hereby granted without fee,* provided that the above copyright notice appear in all copies and* that both that copyright notice and this permission notice appear* in supporting documentation. Silicon Graphics makes no* representations about the suitability of this software for any* purpose. It is provided "as is" without express or implied warranty.**//** @file include/memory* This is a Standard C++ Library header.*/#ifndef _GLIBCXX_MEMORY#define _GLIBCXX_MEMORY 1#pragma GCC system_header#include <bits/stl_algobase.h>#include <bits/allocator.h>#include <bits/stl_construct.h>#include <bits/stl_uninitialized.h>#include <bits/stl_tempbuf.h>#include <bits/stl_raw_storage_iter.h>#ifdef __GXX_EXPERIMENTAL_CXX0X__# if defined(_GLIBCXX_INCLUDE_AS_TR1)# error C++0x header cannot be included from TR1 header# endif# include <exception> // std::exception# include <typeinfo> // std::type_info in get_deleter# include <iosfwd> // std::basic_ostream# include <ext/atomicity.h># include <ext/concurrence.h># include <bits/functexcept.h># include <bits/stl_function.h> // std::less# include <debug/debug.h># include <type_traits># if _GLIBCXX_DEPRECATED# include <backward/auto_ptr.h># endif# if defined(_GLIBCXX_INCLUDE_AS_CXX0X)# include <tr1_impl/boost_sp_counted_base.h># include <bits/boost_sp_shared_count.h># include <tr1_impl/boost_shared_ptr.h># else# define _GLIBCXX_INCLUDE_AS_CXX0X# define _GLIBCXX_BEGIN_NAMESPACE_TR1# define _GLIBCXX_END_NAMESPACE_TR1# define _GLIBCXX_TR1# include <tr1_impl/boost_sp_counted_base.h># include <bits/boost_sp_shared_count.h># include <tr1_impl/boost_shared_ptr.h># undef _GLIBCXX_TR1# undef _GLIBCXX_END_NAMESPACE_TR1# undef _GLIBCXX_BEGIN_NAMESPACE_TR1# undef _GLIBCXX_INCLUDE_AS_CXX0X# endif#else# include <backward/auto_ptr.h>#endif#endif /* _GLIBCXX_MEMORY */