From c7b8d8f72a2a1b68450253f5532443ce6202122f Mon Sep 17 00:00:00 2001 From: Tobias Reh Date: Thu, 25 Aug 2016 09:04:18 +0200 Subject: [PATCH] use instead of producing undefined behavior 17.6.4.2.1 Namespace std [namespace.std] The behavior of a C++ program is undefined if it adds declarations or definitions to namespace std or to a namespace within namespace std unless otherwise specified. --- include/boost/interprocess/detail/std_fwd.hpp | 57 ------------------------- include/boost/interprocess/interprocess_fwd.hpp | 2 +- 2 files changed, 1 insertion(+), 58 deletions(-) delete mode 100644 include/boost/interprocess/detail/std_fwd.hpp diff --git a/include/boost/interprocess/detail/std_fwd.hpp b/include/boost/interprocess/detail/std_fwd.hpp deleted file mode 100644 index 282771c3..00000000 --- a/include/boost/interprocess/detail/std_fwd.hpp +++ /dev/null @@ -1,57 +0,0 @@ -////////////////////////////////////////////////////////////////////////////// -// -// (C) Copyright Ion Gaztanaga 2014-2015. 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) -// -// See http://www.boost.org/libs/interprocess for documentation. -// -////////////////////////////////////////////////////////////////////////////// -#ifndef BOOST_INTERPROCESS_DETAIL_STD_FWD_HPP -#define BOOST_INTERPROCESS_DETAIL_STD_FWD_HPP - -#ifndef BOOST_CONFIG_HPP -# include -#endif -# -#if defined(BOOST_HAS_PRAGMA_ONCE) -# pragma once -#endif - -////////////////////////////////////////////////////////////////////////////// -// Standard predeclarations -////////////////////////////////////////////////////////////////////////////// - -#include -BOOST_MOVE_STD_NS_BEG - -struct input_iterator_tag; -struct forward_iterator_tag; -struct bidirectional_iterator_tag; -struct random_access_iterator_tag; - -template -struct char_traits; - -#if defined(BOOST_MSVC) && (BOOST_MSVC >= 1800) &&defined(BOOST_DINKUMWARE_STDLIB) -#define BOOST_INTERPROCESS_STD_FWD_MSVC_IOS_BUG -// Compiler bug workaround. Previous versions (<= VC11) -// used dummy virtual functions -# pragma vtordisp(push, 2) -#endif - -template -class basic_ostream; - -template -class basic_istream; - -#ifdef BOOST_INTERPROCESS_STD_FWD_MSVC_IOS_BUG -# pragma vtordisp(pop) -# undef BOOST_INTERPROCESS_STD_FWD_MSVC_IOS_BUG -#endif - -BOOST_MOVE_STD_NS_END -#include - -#endif //#ifndef BOOST_INTERPROCESS_DETAIL_STD_FWD_HPP diff --git a/include/boost/interprocess/interprocess_fwd.hpp b/include/boost/interprocess/interprocess_fwd.hpp index 882256e9..cf866b64 100644 --- a/include/boost/interprocess/interprocess_fwd.hpp +++ b/include/boost/interprocess/interprocess_fwd.hpp @@ -22,7 +22,7 @@ # pragma once #endif -#include +#include //! \file //! This header file forward declares the basic interprocess types: