summaryrefslogtreecommitdiffstats
path: root/src/gui/image/qiconengine.h
diff options
context:
space:
mode:
authorThiago Macieira <thiago.macieira@intel.com>2016-12-14 10:45:49 -0800
committerJani Heikkinen <jani.heikkinen@qt.io>2016-12-15 12:52:20 +0000
commitd8b678661b962c45e6aeb3e61856b823bcfee272 (patch)
tree0baf80f87986f5c9b9f740be56ed79a07508a476 /src/gui/image/qiconengine.h
parent104854708cf610a4999cb0a3bde3c900045d1db9 (diff)
Re-fix build error with ICC 17 on Windows
This is a repeat of ae880beb7d02141c5097ef61409fa66b2c910dd3, which had fixed the problem for ICC 16. That commit was a repeat of acf80b9a2b913e898ed4c4ed14d4ea79401484fe, which had fixed it for ICC 15. As reported in ae880beb7, ICC doesn't like polymorphic exported classes with inline constructors. That commit added the default constructor, but we forgot the copy constructor. This constructor should have been protected, so users are forced to use the virtual clone() function, but we can't make it so in Qt 5 because MSVC encodes the protection and has exported the inline function in debug builds. qsvgiconengine.obj : error LNK2001: unresolved external symbol "const QIconEngine::`vftable'" (??_7QIconEngine@@6) Change-Id: I427336c52fc342638c74fffd149033b990ea7ade Reviewed-by: Lars Knoll <lars.knoll@qt.io>
Diffstat (limited to 'src/gui/image/qiconengine.h')
-rw-r--r--src/gui/image/qiconengine.h4
1 files changed, 4 insertions, 0 deletions
diff --git a/src/gui/image/qiconengine.h b/src/gui/image/qiconengine.h
index b0c92ced73..783770cd30 100644
--- a/src/gui/image/qiconengine.h
+++ b/src/gui/image/qiconengine.h
@@ -51,6 +51,7 @@ class Q_GUI_EXPORT QIconEngine
{
public:
QIconEngine();
+ QIconEngine(const QIconEngine &other); // ### Qt6: make protected
virtual ~QIconEngine();
virtual void paint(QPainter *painter, const QRect &rect, QIcon::Mode mode, QIcon::State state) = 0;
virtual QSize actualSize(const QSize &size, QIcon::Mode mode, QIcon::State state);
@@ -80,6 +81,9 @@ public:
bool isNull() const; // ### Qt6 make virtual
virtual void virtual_hook(int id, void *data);
+
+private:
+ QIconEngine &operator=(const QIconEngine &other) Q_DECL_EQ_DELETE;
};
#if QT_DEPRECATED_SINCE(5, 0)