Boost logo

Boost-Commit :

Subject: [Boost-commit] svn:boost r86053 - in trunk/boost/numeric: conversion conversion/detail ublas/detail
From: steveire_at_[hidden]
Date: 2013-09-30 07:23:20


Author: skelly
Date: 2013-09-30 07:23:20 EDT (Mon, 30 Sep 2013)
New Revision: 86053
URL: http://svn.boost.org/trac/boost/changeset/86053

Log:
Numeric: Remove obsolete MSVC version checks.

Text files modified:
   trunk/boost/numeric/conversion/cast.hpp | 2 +-
   trunk/boost/numeric/conversion/conversion_traits.hpp | 7 -------
   trunk/boost/numeric/conversion/detail/old_numeric_cast.hpp | 35 +----------------------------------
   trunk/boost/numeric/ublas/detail/config.hpp | 5 -----
   4 files changed, 2 insertions(+), 47 deletions(-)

Modified: trunk/boost/numeric/conversion/cast.hpp
==============================================================================
--- trunk/boost/numeric/conversion/cast.hpp Mon Sep 30 07:22:56 2013 (r86052)
+++ trunk/boost/numeric/conversion/cast.hpp 2013-09-30 07:23:20 EDT (Mon, 30 Sep 2013) (r86053)
@@ -23,7 +23,7 @@
 
 #include <boost/detail/workaround.hpp>
 
-#if BOOST_WORKAROUND(BOOST_MSVC, < 1300) || BOOST_WORKAROUND(__BORLANDC__, BOOST_TESTED_AT(0x582))
+#if BOOST_WORKAROUND(__BORLANDC__, BOOST_TESTED_AT(0x582))
 
 # include<boost/numeric/conversion/detail/old_numeric_cast.hpp>
 

Modified: trunk/boost/numeric/conversion/conversion_traits.hpp
==============================================================================
--- trunk/boost/numeric/conversion/conversion_traits.hpp Mon Sep 30 07:22:56 2013 (r86052)
+++ trunk/boost/numeric/conversion/conversion_traits.hpp 2013-09-30 07:23:20 EDT (Mon, 30 Sep 2013) (r86053)
@@ -21,13 +21,6 @@
 struct conversion_traits
     : convdetail::get_conversion_traits<T,S>::type
 {
-#if BOOST_WORKAROUND(BOOST_MSVC, <= 1300)
- typedef typename convdetail::get_conversion_traits<T,S>::type base_;
- typedef typename base_::target_type target_type;
- typedef typename base_::source_type source_type;
- typedef typename base_::result_type result_type;
- typedef typename base_::argument_type argument_type;
-#endif
 } ;
 
 } } // namespace boost::numeric

Modified: trunk/boost/numeric/conversion/detail/old_numeric_cast.hpp
==============================================================================
--- trunk/boost/numeric/conversion/detail/old_numeric_cast.hpp Mon Sep 30 07:22:56 2013 (r86052)
+++ trunk/boost/numeric/conversion/detail/old_numeric_cast.hpp 2013-09-30 07:23:20 EDT (Mon, 30 Sep 2013) (r86053)
@@ -55,19 +55,6 @@
 # include <boost/numeric/conversion/converter_policies.hpp>
 # include <boost/mpl/if.hpp>
 
-// It has been demonstrated numerous times that MSVC 6.0 fails silently at link
-// time if you use a template function which has template parameters that don't
-// appear in the function's argument list.
-//
-// TODO: Add this to config.hpp?
-// FLC: This macro is repeated in boost/cast.hpp but only locally (is undefined at the bottom)
-// so is OK to reproduce it here.
-# if defined(BOOST_MSVC) && BOOST_MSVC < 1300
-# define BOOST_EXPLICIT_DEFAULT_TARGET , ::boost::type<Target>* = 0
-# else
-# define BOOST_EXPLICIT_DEFAULT_TARGET
-# endif
-
 namespace boost
 {
   using numeric::bad_numeric_cast;
@@ -217,24 +204,6 @@
         template <class X, class Y>
         static inline bool check(X x, Y)
             { return x >= 0 && static_cast<X>(static_cast<Y>(x)) != x; }
-
-# if defined(BOOST_MSVC) && BOOST_MSVC < 1300
- // MSVC6 can't static_cast unsigned __int64 -> floating types
-# define BOOST_UINT64_CAST(src_type) \
- static inline bool check(src_type x, unsigned __int64) \
- { \
- if (x < 0) return false; \
- unsigned __int64 y = static_cast<unsigned __int64>(x); \
- bool odd = y & 0x1; \
- __int64 div2 = static_cast<__int64>(y >> 1); \
- return ((static_cast<src_type>(div2) * 2.0) + odd) != x; \
- }
-
- BOOST_UINT64_CAST(long double);
- BOOST_UINT64_CAST(double);
- BOOST_UINT64_CAST(float);
-# undef BOOST_UINT64_CAST
-# endif
     };
 
     template<>
@@ -288,7 +257,7 @@
 #endif
 
     template<typename Target, typename Source>
- inline Target numeric_cast(Source arg BOOST_EXPLICIT_DEFAULT_TARGET)
+ inline Target numeric_cast(Source arg)
     {
         // typedefs abbreviating respective trait classes
         typedef detail::fixed_numeric_limits<Source> arg_traits;
@@ -335,8 +304,6 @@
         return static_cast<Target>(arg);
     } // numeric_cast
 
-# undef BOOST_EXPLICIT_DEFAULT_TARGET
-
 } // namespace boost
 
 #endif // BOOST_OLD_NUMERIC_CAST_HPP

Modified: trunk/boost/numeric/ublas/detail/config.hpp
==============================================================================
--- trunk/boost/numeric/ublas/detail/config.hpp Mon Sep 30 07:22:56 2013 (r86052)
+++ trunk/boost/numeric/ublas/detail/config.hpp 2013-09-30 07:23:20 EDT (Mon, 30 Sep 2013) (r86053)
@@ -32,11 +32,6 @@
 // Microsoft Visual C++
 #if defined (BOOST_MSVC) && ! defined (BOOST_STRICT_CONFIG)
 
-// Version 6.0 and 7.0
-#if BOOST_MSVC <= 1300
-#define BOOST_UBLAS_UNSUPPORTED_COMPILER 1
-#endif
-
 // Version 7.1
 #if BOOST_MSVC == 1310
 // One of these workarounds is needed for MSVC 7.1 AFAIK


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