Boost logo

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