summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlbert Astals Cid <aacid@kde.org>2019-10-05 18:41:01 +0200
committerMiklos Vajna <vmiklos@collabora.com>2019-10-08 09:24:44 +0200
commit012bce64e08d45c9ce37c9c6758e8556cebf8688 (patch)
tree5232d957e7657660c4399543bce6606096693f13
parent5da3e01b9aa19f8676e052e98815b861311222b9 (diff)
Fix -Wdeprecated-copy warnings
New gcc complains when you're using the default defined operator= but your class has an explicitely defined copy constructor. This is because if you implemented the copy constructor is usually because you needed something special, so you'll need that special in the assignment operator. In the cases here it's not really a problem since the explicitely defined constructors where just doing the same as the default so i've just marked them as default as well as the assignment operator Example: CDRParser.cpp: In member function ‘void libcdr::CDRParser::readFont(librevenge::RVNGInputStream*, unsigned int)’: CDRParser.cpp:2550:53: warning: implicitly-declared ‘libcdr::CDRFont& libcdr::CDRFont::operator=(const libcdr::CDRFont&)’ is deprecated [-Wdeprecated-copy] 2550 | m_fonts[fontId] = CDRFont(fontName, fontEncoding); | ^ In file included from CDRParser.h:18, from CDRParser.cpp:10: CDRTypes.h:372:3: note: because ‘libcdr::CDRFont’ has user-provided ‘libcdr::CDRFont::CDRFont(const libcdr::CDRFont&)’ 372 | CDRFont(const CDRFont &font) | ^~~~~~~ Change-Id: I3011f415cc1e44222509d69a2d5a791a3e3e91e1 Reviewed-on: https://gerrit.libreoffice.org/80302 Reviewed-by: Miklos Vajna <vmiklos@collabora.com> Tested-by: Miklos Vajna <vmiklos@collabora.com>
-rw-r--r--src/lib/CDRTransforms.cpp10
-rw-r--r--src/lib/CDRTransforms.h8
-rw-r--r--src/lib/CDRTypes.h4
3 files changed, 8 insertions, 14 deletions
diff --git a/src/lib/CDRTransforms.cpp b/src/lib/CDRTransforms.cpp
index e29303e..e95cfc7 100644
--- a/src/lib/CDRTransforms.cpp
+++ b/src/lib/CDRTransforms.cpp
@@ -23,11 +23,6 @@ libcdr::CDRTransform::CDRTransform(double v0, double v1, double x0, double v3, d
{
}
-libcdr::CDRTransform::CDRTransform(const CDRTransform &trafo)
- : m_v0(trafo.m_v0), m_v1(trafo.m_v1), m_x0(trafo.m_x0),
- m_v3(trafo.m_v3), m_v4(trafo.m_v4), m_y0(trafo.m_y0) {}
-
-
void libcdr::CDRTransform::applyToPoint(double &x, double &y) const
{
double tmpX = m_v0*x + m_v1*y+m_x0;
@@ -222,11 +217,6 @@ libcdr::CDRTransforms::CDRTransforms()
{
}
-libcdr::CDRTransforms::CDRTransforms(const CDRTransforms &trafos)
- : m_trafos(trafos.m_trafos)
-{
-}
-
libcdr::CDRTransforms::~CDRTransforms()
{
}
diff --git a/src/lib/CDRTransforms.h b/src/lib/CDRTransforms.h
index df789de..1ecf36e 100644
--- a/src/lib/CDRTransforms.h
+++ b/src/lib/CDRTransforms.h
@@ -21,7 +21,9 @@ class CDRTransform
public:
CDRTransform();
CDRTransform(double v0, double v1, double x0, double v3, double v4, double y0);
- CDRTransform(const CDRTransform &trafo);
+ CDRTransform(const CDRTransform &trafo) = default;
+
+ CDRTransform &operator=(const CDRTransform &trafo) = default;
void applyToPoint(double &x, double &y) const;
void applyToArc(double &rx, double &ry, double &rotation, bool &sweep, double &endx, double &endy) const;
@@ -49,9 +51,11 @@ class CDRTransforms
{
public:
CDRTransforms();
- CDRTransforms(const CDRTransforms &trafos);
+ CDRTransforms(const CDRTransforms &trafos) = default;
~CDRTransforms();
+ CDRTransforms &operator=(const CDRTransforms &trafo) = default;
+
void append(double v0, double v1, double x0, double v3, double v4, double y0);
void append(const CDRTransform &trafo);
void clear();
diff --git a/src/lib/CDRTypes.h b/src/lib/CDRTypes.h
index 3563b27..3ea5667 100644
--- a/src/lib/CDRTypes.h
+++ b/src/lib/CDRTypes.h
@@ -369,8 +369,8 @@ struct CDRFont
CDRFont() : m_name(), m_encoding(0) {}
CDRFont(const librevenge::RVNGString &name, unsigned short encoding)
: m_name(name), m_encoding(encoding) {}
- CDRFont(const CDRFont &font)
- : m_name(font.m_name), m_encoding(font.m_encoding) {}
+ CDRFont(const CDRFont &font) = default;
+ CDRFont& operator=(const CDRFont &font) = default;
librevenge::RVNGString m_name;
unsigned short m_encoding;
};