From 33b804cef21fc4cc35b27cfd7ff94333fa6878db Mon Sep 17 00:00:00 2001
From: Stefan Wunsch <stefan.wunsch@cern.ch>
Date: Mon, 27 May 2019 11:21:25 +0200
Subject: [PATCH] [Math][ROOT-10131] Fix gcc9 warnings (-Wdeprecated-copy) for
 SMatrix

---
 math/smatrix/inc/Math/SMatrix.h   | 2 ++
 math/smatrix/inc/Math/SMatrix.icc | 6 ++++++
 2 files changed, 8 insertions(+)

diff --git a/math/smatrix/inc/Math/SMatrix.h b/math/smatrix/inc/Math/SMatrix.h
index 7755eec9241..ebdef9c33e6 100644
--- a/math/smatrix/inc/Math/SMatrix.h
+++ b/math/smatrix/inc/Math/SMatrix.h
@@ -230,6 +230,8 @@ public:
    template <class M>
    SMatrix<T,D1,D2,R>& operator=(const M& rhs);
 
+   SMatrix<T,D1,D2,R>& operator=(const SMatrix<T,D1,D2,R>& rhs);
+
    /**
        Assign from a matrix expression
    */
diff --git a/math/smatrix/inc/Math/SMatrix.icc b/math/smatrix/inc/Math/SMatrix.icc
index 0029e0292d8..75759e921aa 100644
--- a/math/smatrix/inc/Math/SMatrix.icc
+++ b/math/smatrix/inc/Math/SMatrix.icc
@@ -157,6 +157,12 @@ SMatrix<T,D1,D2,R>& SMatrix<T,D1,D2,R>::operator=(const M&  rhs) {
    return *this;
 }
 
+template <class T, unsigned int D1, unsigned int D2, class R>
+SMatrix<T,D1,D2,R>& SMatrix<T,D1,D2,R>::operator=(const SMatrix<T,D1,D2,R>&  rhs) {
+   fRep = rhs.fRep;
+   return *this;
+}
+
 template <class T, unsigned int D1, unsigned int D2, class R>
 template <class A, class R2>
 SMatrix<T,D1,D2,R>& SMatrix<T,D1,D2,R>::operator=(const Expr<A,T,D1,D2,R2>&  rhs) {
-- 
GitLab