|
Boost-Commit : |
From: technews_at_[hidden]
Date: 2008-05-26 15:54:29
Author: turkanis
Date: 2008-05-26 15:54:29 EDT (Mon, 26 May 2008)
New Revision: 45788
URL: http://svn.boost.org/trac/boost/changeset/45788
Log:
disabled warning 6334 (sizeof operator ... might yield unexpected results) around invocations of macro BOOST_IOSTREAMS_BOOL_TRAIT_DEF (issue #1618)
Text files modified:
trunk/boost/iostreams/detail/is_iterator_range.hpp | 11 +++++++++++
trunk/boost/iostreams/traits.hpp | 12 +++++++++++-
2 files changed, 22 insertions(+), 1 deletions(-)
Modified: trunk/boost/iostreams/detail/is_iterator_range.hpp
==============================================================================
--- trunk/boost/iostreams/detail/is_iterator_range.hpp (original)
+++ trunk/boost/iostreams/detail/is_iterator_range.hpp 2008-05-26 15:54:29 EDT (Mon, 26 May 2008)
@@ -8,6 +8,8 @@
#ifndef BOOST_IOSTREAMS_DETAIL_IS_ITERATOR_RANGE_HPP_INCLUDED
#define BOOST_IOSTREAMS_DETAIL_IS_ITERATOR_RANGE_HPP_INCLUDED
+#include <boost/config.hpp>
+#include <boost/detail/workaround.hpp>
#include <boost/iostreams/detail/bool_trait_def.hpp>
namespace boost {
@@ -20,8 +22,17 @@
namespace iostreams {
+#if BOOST_WORKAROUND(BOOST_MSVC, >= 1400)
+# pragma warning(push)
+# pragma warning(disable:6334)
+#endif
+
BOOST_IOSTREAMS_BOOL_TRAIT_DEF(is_iterator_range, boost::iterator_range, 1)
+#if BOOST_WORKAROUND(BOOST_MSVC, >= 1400)
+# pragma warning(pop)
+#endif
+
} // End namespace iostreams.
# else // # if !BOOST_WORKAROUND(BOOST_MSVC, <= 1300) //-----------------------//
Modified: trunk/boost/iostreams/traits.hpp
==============================================================================
--- trunk/boost/iostreams/traits.hpp (original)
+++ trunk/boost/iostreams/traits.hpp 2008-05-26 15:54:29 EDT (Mon, 26 May 2008)
@@ -21,6 +21,7 @@
#include <iosfwd> // stream types, char_traits.
#include <boost/config.hpp> // partial spec, deduced typename.
+#include <boost/detail/workaround.hpp>
#include <boost/iostreams/categories.hpp>
#include <boost/iostreams/detail/bool_trait_def.hpp>
#include <boost/iostreams/detail/config/wide_streams.hpp>
@@ -38,12 +39,17 @@
# include <boost/range/iterator_range.hpp>
# include <boost/range/value_type.hpp>
#endif // #if BOOST_WORKAROUND(BOOST_MSVC, <= 1300)
-#include <boost/type_traits/is_convertible.hpp>
+#include <boost/type_traits/is_convertible.hpp>
namespace boost { namespace iostreams {
//----------Definitions of predicates for streams and stream buffers----------//
+#if BOOST_WORKAROUND(BOOST_MSVC, >= 1400)
+# pragma warning(push)
+# pragma warning(disable:6334)
+#endif
+
#ifndef BOOST_IOSTREAMS_NO_STREAM_TEMPLATES //--------------------------------//
BOOST_IOSTREAMS_BOOL_TRAIT_DEF(is_istream, std::basic_istream, 2)
@@ -68,6 +74,10 @@
#endif // #ifndef BOOST_IOSTREAMS_NO_STREAM_TEMPLATES //----------------------//
+#if BOOST_WORKAROUND(BOOST_MSVC, >= 1400)
+# pragma warning(pop)
+#endif
+
template<typename T>
struct is_std_io
: mpl::or_< is_istream<T>, is_ostream<T>, is_streambuf<T> >
Boost-Commit list run by bdawes at acm.org, david.abrahams at rcn.com, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk