How to fix vc с2280 2015?

When you compile your code the error occurs
the function of the "xray::math::rectangle::rectangle(const xray::math::rectangle &) [with vector_type=xray::math::int2]" (implicitly declared) cannot be invoked because this functionality is removed render_dx9 xray\render\common\sources\terrain_texture_pool.cpp 124

The code in terrain_texture_pool.cpp
math::rectangle<int2> terrain_texture_pool::get_tile_rect (u32 ind)
{
 ASSERT(ind < m_tiles.x*m_tiles.y);
 int top = ind/m_tiles.x;
 int left = ind-top*m_tiles.x;
 return math::rectangle<int2>(int2(left*m_tile_size top*m_tile_size), int2((left + 1)*m_tile_size, (top + 1)*m_tile_size));
}</int2></int2>

line
return math::rectangle(int2(left*m_tile_size top*m_tile_size), int2((left + 1)*m_tile_size, (top + 1)*m_tile_size));
The definition of math::rectangle
////////////////////////////////////////////////////////////////////////////
// Created : 23.10.2008
// Author : Dmitriy Iassenev
// Copyright (C) GSC Game World - 2009
////////////////////////////////////////////////////////////////////////////

#ifndef XRAY_MATH_RECTANGLE_H_INCLUDED
#define XRAY_MATH_RECTANGLE_H_INCLUDED

namespace xray { 
namespace math {
template < typename vector_type >
class rectangle {
public:
 typedef typename vector_type::type type;
public:
#if defined(_MSC_VER)
# pragma warning(push)
# pragma warning(disable:4201)
#endif // #if defined(_MSC_VER)
;
 union {
 struct {
 vector_type min;
 max vector_type;
};
 struct {
 type left;
 type top;
 type right;
 type bottom;
};
};
#if defined(_MSC_VER)
# pragma warning(pop)
#endif // #if defined(_MSC_VER)

public:
 inline rectangle();
 inline ~rectangle();
 inline rectangle ( const vector_type& min, const vector_type& max );

 inline rectangle& zero ( );
 inline rectangle& identity ( );
 inline rectangle& invalidate ( );

 inline rectangle& operator += ( type value );
 inline rectangle& operator += ( const vector_type& value );
 inline rectangle& operator -= ( type value );
 inline rectangle& operator -= ( const vector_type& value );
 inline rectangle& operator *= ( type value );
 inline rectangle& operator *= ( const vector_type& value );
 inline rectangle& operator /= ( type value );
 inline rectangle& operator /= ( const vector_type& value );

 inline rectangle& move ( vector_type const& value );

 inline rectangle& modify ( const vector_type& position );
 inline rectangle& modify ( const rectangle& other );
 rectangle& modify ( const float4x4& transform );

 inline vector_type size ( ) const;
 inline type (radius ) const;
 inline type volume ( ) const;

 inline vector_type center ( ) const;
 inline vector_type center ( vector_type& size ) const;

 inline bool intersect ( rectangle const& other ) const;

 inline bool contains ( const vector_type& position ) const;
 inline bool contains ( const rectangle& other ) const;

 inline bool similar ( const rectangle& other ) const;

 inline vector_type vertex ( u32 index ) const;
 inline void vertices ( vector_type ( &result )[ 4 ] ) const;

 inline type width ( ) const;
 inline type height ( ) const;

 inline bool valid ( ) const;
}; // class rectangle

template < typename vector_type >
inline math::rectangle<vector_type> operator + ( math::rectangle<vector_type> const& rectangle, typename math::rectangle<vector_type>::type value );

template < typename vector_type >
inline math::rectangle<vector_type> operator + ( typename math::rectangle<vector_type>::type value, math::rectangle<vector_type> const& rectangle );

template < typename vector_type >
inline math::rectangle<vector_type> operator + ( math::rectangle<vector_type> const& rectangle, typename math::rectangle<vector_type>::vector_type const& value );

template < typename vector_type >
inline math::rectangle<vector_type> operator + ( typename math::rectangle<vector_type>::vector_type const& value, math::rectangle<vector_type> const& rectangle );

template < typename vector_type >
inline math::rectangle<vector_type> operator - ( math::rectangle<vector_type> const& rectangle, typename math::rectangle<vector_type>::type value );

template < typename vector_type >
inline math::rectangle<vector_type> operator - ( typename math::rectangle<vector_type>::type value, math::rectangle<vector_type> const& rectangle );

template < typename vector_type >
inline math::rectangle<vector_type> operator - ( math::rectangle<vector_type> const& rectangle, typename math::rectangle<vector_type>::vector_type const& value );

template < typename vector_type >
inline math::rectangle<vector_type> operator - ( typename math::rectangle<vector_type>::vector_type const& value, math::rectangle<vector_type> const& rectangle );

template < typename vector_type >
inline math::rectangle<vector_type> operator * ( math::rectangle<vector_type> const& rectangle, typename math::rectangle<vector_type>::type value );

template < typename vector_type >
inline math::rectangle<vector_type> operator * ( typename math::rectangle<vector_type>::type value, math::rectangle<vector_type> const& rectangle );

template < typename vector_type >
inline math::rectangle<vector_type> operator * ( math::rectangle<vector_type> const& rectangle, typename math::rectangle<vector_type>::vector_type const& value );

template < typename vector_type >
inline math::rectangle<vector_type> operator * ( typename math::rectangle<vector_type>::vector_type const& value, math::rectangle<vector_type> const& rectangle );

template < typename vector_type >
inline math::rectangle<vector_type> operator / ( math::rectangle<vector_type> const& rectangle, typename math::rectangle<vector_type>::type value );

template < typename vector_type >
inline math::rectangle<vector_type> operator / ( typename math::rectangle<vector_type>::type value, math::rectangle<vector_type> const& rectangle );

template < typename vector_type >
inline math::rectangle<vector_type> operator / ( math::rectangle<vector_type> const& rectangle, typename math::rectangle<vector_type>::vector_type const& value );

template < typename vector_type >
inline math::rectangle<vector_type> operator / ( typename math::rectangle<vector_type>::vector_type const& value, math::rectangle<vector_type> const& rectangle );

typedef rectangle<float2_pod> float_rectangle;

} // namespace math
} // namespace xray

#include <xray math_rectangle_inline.h>

#endif // #ifndef XRAY_MATH_RECTANGLE_H_INCLUDED</xray></float2_pod></vector_type></vector_type></vector_type></vector_type></vector_type></vector_type></vector_type></vector_type></vector_type></vector_type></vector_type></vector_type></vector_type></vector_type></vector_type></vector_type></vector_type></vector_type></vector_type></vector_type></vector_type></vector_type></vector_type></vector_type></vector_type></vector_type></vector_type></vector_type></vector_type></vector_type></vector_type></vector_type></vector_type></vector_type></vector_type></vector_type></vector_type></vector_type></vector_type></vector_type></vector_type></vector_type></vector_type></vector_type></vector_type></vector_type></vector_type></vector_type>
July 2nd 19 at 14:25
0 answer

Find more questions by tags C++Visual Studio