Revert "Fix build of Eigen 3.3.7 with GCC 9"

-Wextra adds -Wdeprecated-copy, which Eigen emits. We're going to
squelch the warning instead to minimize changes to Eigen's upstream
sources.
This commit is contained in:
Tyler Veness
2019-07-29 20:28:01 -07:00
committed by Peter Johnson
parent ca3e71e214
commit 04c9b000ff
9 changed files with 2 additions and 37 deletions

View File

@@ -100,8 +100,6 @@ template<typename Derived> class ArrayBase
#undef EIGEN_CURRENT_STORAGE_BASE_CLASS
#undef EIGEN_DOC_UNARY_ADDONS
constexpr ArrayBase(const ArrayBase&) = default;
/** Special case of the template operator=, in order to prevent the compiler
* from generating a default operator= (issue hit with g++ 4.1)
*/

View File

@@ -47,9 +47,6 @@ class ArrayWrapper : public ArrayBase<ArrayWrapper<ExpressionType> >
EIGEN_INHERIT_ASSIGNMENT_OPERATORS(ArrayWrapper)
typedef typename internal::remove_all<ExpressionType>::type NestedExpression;
ArrayWrapper() = default;
ArrayWrapper(const ArrayWrapper&) = default;
typedef typename internal::conditional<
internal::is_lvalue<ExpressionType>::value,
Scalar,

View File

@@ -111,9 +111,6 @@ template<typename XprType, int BlockRows, int BlockCols, bool InnerPanel> class
EIGEN_INHERIT_ASSIGNMENT_OPERATORS(Block)
typedef typename internal::remove_all<XprType>::type NestedExpression;
constexpr Block() = default;
constexpr Block(const Block&) = default;
/** Column or Row constructor
*/
@@ -161,8 +158,6 @@ class BlockImpl<XprType, BlockRows, BlockCols, InnerPanel, Dense>
typedef typename XprType::StorageIndex StorageIndex;
public:
typedef Impl Base;
constexpr BlockImpl() = default;
constexpr BlockImpl(const BlockImpl&) = default;
EIGEN_INHERIT_ASSIGNMENT_OPERATORS(BlockImpl)
EIGEN_DEVICE_FUNC inline BlockImpl(XprType& xpr, Index i) : Impl(xpr,i) {}
EIGEN_DEVICE_FUNC inline BlockImpl(XprType& xpr, Index startRow, Index startCol) : Impl(xpr, startRow, startCol) {}
@@ -187,9 +182,6 @@ template<typename XprType, int BlockRows, int BlockCols, bool InnerPanel, bool H
// class InnerIterator; // FIXME apparently never used
BlockImpl_dense() = default;
BlockImpl_dense(const BlockImpl_dense&) = default;
/** Column or Row constructor
*/
EIGEN_DEVICE_FUNC
@@ -344,9 +336,6 @@ class BlockImpl_dense<XprType,BlockRows,BlockCols, InnerPanel,true>
};
public:
BlockImpl_dense() = default;
BlockImpl_dense(const BlockImpl_dense&) = default;
typedef MapBase<BlockType> Base;
EIGEN_DENSE_PUBLIC_INTERFACE(BlockType)
EIGEN_INHERIT_ASSIGNMENT_OPERATORS(BlockImpl_dense)

View File

@@ -69,8 +69,6 @@ template<typename MatrixType, int _DiagIndex> class Diagonal
typedef typename internal::dense_xpr_base<Diagonal>::type Base;
EIGEN_DENSE_PUBLIC_INTERFACE(Diagonal)
Diagonal(const Diagonal&) = default;
EIGEN_DEVICE_FUNC
explicit inline Diagonal(MatrixType& matrix, Index a_index = DiagIndex) : m_matrix(matrix), m_index(a_index)
{

View File

@@ -120,8 +120,6 @@ template<typename PlainObjectType, int MapOptions, typename StrideType> class Ma
: (this->rows() * innerStride());
}
Map(const Map&) = default;
/** Constructor in the fixed-size case.
*
* \param dataPtr pointer to the array to map

View File

@@ -86,8 +86,6 @@ template<typename Derived> class MapBase<Derived, ReadOnlyAccessors>
typedef typename Base::CoeffReturnType CoeffReturnType;
MapBase(const MapBase&) = default;
/** \copydoc DenseBase::rows() */
EIGEN_DEVICE_FUNC inline Index rows() const { return m_rows.value(); }
/** \copydoc DenseBase::cols() */
@@ -249,8 +247,6 @@ template<typename Derived> class MapBase<Derived, WriteAccessors>
const Scalar
>::type ScalarWithConstIfNotLvalue;
MapBase(const MapBase&) = default;
EIGEN_DEVICE_FUNC
inline const Scalar* data() const { return this->m_data; }
EIGEN_DEVICE_FUNC

View File

@@ -132,8 +132,6 @@ template<typename Derived> class MatrixBase
#undef EIGEN_CURRENT_STORAGE_BASE_CLASS
#undef EIGEN_DOC_UNARY_ADDONS
constexpr MatrixBase(const MatrixBase& other) = default;
/** Special case of the template operator=, in order to prevent the compiler
* from generating a default operator= (issue hit with g++ 4.1)
*/

View File

@@ -60,9 +60,6 @@ template<typename MatrixType> class Transpose
EIGEN_GENERIC_PUBLIC_INTERFACE(Transpose)
typedef typename internal::remove_all<MatrixType>::type NestedExpression;
constexpr Transpose() = default;
constexpr Transpose(const Transpose&) = default;
EIGEN_DEVICE_FUNC
explicit inline Transpose(MatrixType& matrix) : m_matrix(matrix) {}
@@ -112,8 +109,6 @@ class TransposeImpl
: public internal::generic_xpr_base<Transpose<XprType> >::type
{
public:
constexpr TransposeImpl() = default;
constexpr TransposeImpl(const TransposeImpl&) = default;
typedef typename internal::generic_xpr_base<Transpose<XprType> >::type Base;
};
@@ -122,8 +117,6 @@ template<typename MatrixType> class TransposeImpl<MatrixType,Dense>
{
public:
constexpr TransposeImpl() = default;
constexpr TransposeImpl(const TransposeImpl&) = default;
typedef typename internal::TransposeImpl_base<MatrixType>::type Base;
using Base::coeffRef;
EIGEN_DENSE_PUBLIC_INTERFACE(Transpose<MatrixType>)

View File

@@ -88,10 +88,8 @@ struct promote_scalar_arg_unsupported<S,T,S,false,true> {};
//classes inheriting no_assignment_operator don't generate a default operator=.
class no_assignment_operator
{
public:
constexpr no_assignment_operator() = default;
constexpr no_assignment_operator(const no_assignment_operator&) = default;
no_assignment_operator& operator=(const no_assignment_operator&) = delete;
private:
no_assignment_operator& operator=(const no_assignment_operator&);
};
/** \internal return the index type with the largest number of bits */