From cc798662a6634df4597fd8cfb6d88d655789bbdb Mon Sep 17 00:00:00 2001 From: Peter Hartmann Date: Wed, 13 Apr 2022 10:34:30 +0200 Subject: [PATCH] fix build on Windows fixes the following error from CI: C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.31.31103\include\memory(3124): error C2027: use of undefined type 'QskMenuSkinlet::PrivateData' D:\a\qskinny\qskinny\src\controls\QskMenuSkinlet.h(54): note: see declaration of 'QskMenuSkinlet::PrivateData' C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.31.31103\include\memory(3123): note: while compiling class template member function 'void std::default_delete::operator ()(_Ty *) noexcept const' with [ _Ty=QskMenuSkinlet::PrivateData ] C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.31.31103\include\memory(3233): note: see reference to function template instantiation 'void std::default_delete::operator ()(_Ty *) noexcept const' being compiled with [ _Ty=QskMenuSkinlet::PrivateData ] C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.31.31103\include\memory(3160): note: see reference to class template instantiation 'std::default_delete' being compiled D:\a\qskinny\qskinny\src\controls\QskMenuSkinlet.h(55): note: see reference to class template instantiation 'std::unique_ptr>' being compiled C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.31.31103\include\memory(3124): error C2338: can't delete an incomplete type C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.31.31103\include\memory(3125): warning C4150: deletion of pointer to incomplete type 'QskMenuSkinlet::PrivateData'; no destructor called D:\a\qskinny\qskinny\src\controls\QskMenuSkinlet.h(54): note: see declaration of 'QskMenuSkinlet::PrivateData --- src/controls/QskMenuSkinlet.cpp | 2 ++ src/controls/QskMenuSkinlet.h | 2 +- 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/src/controls/QskMenuSkinlet.cpp b/src/controls/QskMenuSkinlet.cpp index 6438b2b3..356fde4c 100644 --- a/src/controls/QskMenuSkinlet.cpp +++ b/src/controls/QskMenuSkinlet.cpp @@ -229,6 +229,8 @@ QskMenuSkinlet::QskMenuSkinlet( QskSkin* skin ) appendNodeRoles( { PanelRole } ); } +QskMenuSkinlet::~QskMenuSkinlet() = default; + QRectF QskMenuSkinlet::cursorRect( const QskSkinnable* skinnable, const QRectF& contentsRect, int index ) const { diff --git a/src/controls/QskMenuSkinlet.h b/src/controls/QskMenuSkinlet.h index 2738654a..bf90b604 100644 --- a/src/controls/QskMenuSkinlet.h +++ b/src/controls/QskMenuSkinlet.h @@ -19,7 +19,7 @@ class QSK_EXPORT QskMenuSkinlet : public QskPopupSkinlet }; Q_INVOKABLE QskMenuSkinlet( QskSkin* = nullptr ); - ~QskMenuSkinlet() = default; + ~QskMenuSkinlet(); QRectF subControlRect( const QskSkinnable*, const QRectF&, QskAspect::Subcontrol ) const override;