Kaydet (Commit) 83102e4f authored tarafından Stephan Bergmann's avatar Stephan Bergmann

Remove obsolete _MSC_VER checks

...after 206b8c4a "On Windows, check for at
least Visual Studio 2017 version 15.7"

Change-Id: I38ee86e1649bbdc828a7e328f2dbbac0dc163c8a
Reviewed-on: https://gerrit.libreoffice.org/64250
Tested-by: Jenkins
Reviewed-by: 's avatarStephan Bergmann <sbergman@redhat.com>
üst f3ea5e21
......@@ -5,7 +5,7 @@
// that an Output Iterator have output_iterator_tag in its iterator_category if
// that iterator is not bidirectional_iterator or random_access_iterator.
-#if BOOST_WORKAROUND(BOOST_MSVC, >= 1600)
+#if BOOST_WORKAROUND(BOOST_MSVC, >= 1600) || (defined __clang__ && BOOST_WORKAROUND(_MSC_VER, >= 1600))
+#if BOOST_WORKAROUND(BOOST_MSVC, >= 1600) || defined __clang__
struct mutable_iterator_tag
: boost::random_access_traversal_tag, std::input_iterator_tag
{
......@@ -14,7 +14,7 @@
// iterator support
//
-#if BOOST_WORKAROUND(BOOST_MSVC, >= 1600)
+#if BOOST_WORKAROUND(BOOST_MSVC, >= 1600) || (defined __clang__ && BOOST_WORKAROUND(_MSC_VER, >= 1600))
+#if BOOST_WORKAROUND(BOOST_MSVC, >= 1600) || defined __clang__
// Deal with VC 2010 output_iterator_tag requirement
typedef array_iterator<T,T*,mpl::size_t<NumDims>,reference,
mutable_iterator_tag> iterator;
......
......@@ -4,7 +4,7 @@
// Helper types
//! Base iterator.
+#if defined _MSC_VER && !defined __clang__ && _MSC_VER >= 1914
+#if defined _MSC_VER && !defined __clang__
+#pragma warning(push)
+#pragma warning(disable: 4996)
+#endif
......@@ -14,7 +14,7 @@
typename Traits::difference_type,
typename Traits::pointer,
typename Traits::reference> base_iterator;
+#if defined _MSC_VER && !defined __clang__ && _MSC_VER >= 1914
+#if defined _MSC_VER && !defined __clang__
+#pragma warning(pop)
+#endif
......@@ -26,12 +26,12 @@
namespace boost
{
+#if defined _MSC_VER && !defined __clang__ && _MSC_VER >= 1914
+#if defined _MSC_VER && !defined __clang__
+#pragma warning(push)
+#pragma warning(disable: 4996)
+#endif
using std::iterator;
+#if defined _MSC_VER && !defined __clang__ && _MSC_VER >= 1914
+#if defined _MSC_VER && !defined __clang__
+#pragma warning(pop)
+#endif
......
......@@ -177,16 +177,7 @@ public:
#if HAVE_CXX14_CONSTEXPR
constexpr
#endif
basic_string_view & operator =(basic_string_view const & other) noexcept
#if defined _MSC_VER && _MSC_VER <= 1900 && !defined __clang__
{
data_ = other.data_;
size_ = other.size_;
return *this;
}
#else
= default;
#endif
basic_string_view & operator =(basic_string_view const & other) noexcept = default;
// The various character types are handled below in the "LO specifics, to
// make up for traits::length not necessarily being constexpr yet for
......
......@@ -65,12 +65,7 @@ namespace rtl
Instances of OUStringLiteral1 need to be const, as those literal-optimized
functions take the literal argument by non-const lvalue reference, for
technical reasons. Except with MSVC, at least up to Visual Studio 2013:
For one, it fails to take that const-ness into account when trying to match
"OUStringLiteral1_ const" against T in a "T & literal" parameter of a
function template. But for another, as a language extension, it allows to
bind non-const temporary OUStringLiteral1_ instances to non-const lvalue
references, but also with a warning that thus needs to be disabled.
technical reasons.
@since LibreOffice 5.0
*/
......@@ -78,13 +73,7 @@ struct SAL_WARN_UNUSED OUStringLiteral1_ {
constexpr OUStringLiteral1_(sal_Unicode theC): c(theC) {}
sal_Unicode const c;
};
#if defined _MSC_VER && _MSC_VER <= 1900 && !defined __clang__
// Visual Studio 2015
using OUStringLiteral1 = OUStringLiteral1_;
#pragma warning(disable: 4239) // nonstandard extension used: 'argument': conversion from 'rtl::OUStringLiteral1_' to 'rtl::OUStringLiteral1_ &'
#else
using OUStringLiteral1 = OUStringLiteral1_ const;
#endif
/// @endcond
#endif
......
......@@ -35,8 +35,6 @@
#endif
#endif
#if !(defined _MSC_VER && _MSC_VER <= 1900 && !defined __clang__)
namespace vcl { namespace detail {
template<typename>
......@@ -48,8 +46,6 @@ template<typename T> constexpr bool isIncompleteOrDerivedFromVclReferenceBase(
}; }; // namespace detail, namespace vcl
#endif
/**
* A thin wrapper around rtl::Reference to implement the acquire and dispose semantics we want for references to vcl::Window subclasses.
*
......@@ -60,12 +56,10 @@ template<typename T> constexpr bool isIncompleteOrDerivedFromVclReferenceBase(
template <class reference_type>
class VclPtr
{
#if !(defined _MSC_VER && _MSC_VER <= 1900 && !defined __clang__)
static_assert(
vcl::detail::isIncompleteOrDerivedFromVclReferenceBase<reference_type>(
nullptr),
"template argument type must be derived from VclReferenceBase");
#endif
::rtl::Reference<reference_type> m_rInnerRef;
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment