From 92dc998f6d27347842fd57b0a1c6220426eb9ee2 Mon Sep 17 00:00:00 2001 From: Alexandru Croitor Date: Tue, 10 Mar 2020 10:40:47 +0100 Subject: [PATCH] Fix build failures as a result of QMetaType changes in qtbase moc now stores the QMetaType of properties as a result of 46f407126ef3e94d59254012cdc34d6a4ad2faf2 in qtbase, which requires full type information about the property type inside the moc generated source file. Many of the property types were forward-declared, and this resulted in build errors like "invalid application of 'sizeof' to an incomplete type 'QQuickTransition'" Make sure to explicitly include the moc files inside the counterpart .cpp files, so that full information is available from included headers. Fixes: QTBUG-82774 Change-Id: I5971713864992398daed72ce9f6ab866668cf8e1 Reviewed-by: Simon Hausmann Reviewed-by: Mitch Curtis --- examples/quickcontrols2/texteditor/documenthandler.cpp | 2 ++ src/imports/platform/qquickplatformdialog.cpp | 2 ++ src/imports/platform/qquickplatformmenu.cpp | 2 ++ src/imports/platform/qquickplatformmenubar.cpp | 2 ++ src/imports/platform/qquickplatformmenuitem.cpp | 2 ++ src/imports/platform/qquickplatformmenuitemgroup.cpp | 2 ++ src/imports/platform/qquickplatformsystemtrayicon.cpp | 2 ++ src/quickcontrols2/qquicktumblerview.cpp | 2 ++ src/quicktemplates2/qquickabstractbutton.cpp | 2 ++ src/quicktemplates2/qquickcombobox.cpp | 2 ++ src/quicktemplates2/qquickdelaybutton.cpp | 2 ++ src/quicktemplates2/qquickmenubaritem.cpp | 2 ++ src/quicktemplates2/qquickmenuitem.cpp | 2 ++ src/quicktemplates2/qquickpopupanchors.cpp | 2 ++ src/quicktemplates2/qquickspinbox.cpp | 2 ++ src/quicktemplates2/qquickstackview.cpp | 2 ++ src/quicktemplates2/qquickswipedelegate.cpp | 3 +++ src/quicktemplates2/qquickswipeview.cpp | 2 ++ 18 files changed, 37 insertions(+) diff --git a/examples/quickcontrols2/texteditor/documenthandler.cpp b/examples/quickcontrols2/texteditor/documenthandler.cpp index 5def1b61b5..e840d41135 100644 --- a/examples/quickcontrols2/texteditor/documenthandler.cpp +++ b/examples/quickcontrols2/texteditor/documenthandler.cpp @@ -385,3 +385,5 @@ void DocumentHandler::setModified(bool m) if (m_document) m_document->textDocument()->setModified(m); } + +#include "moc_documenthandler.cpp" diff --git a/src/imports/platform/qquickplatformdialog.cpp b/src/imports/platform/qquickplatformdialog.cpp index 2a785bbcea..983c276601 100644 --- a/src/imports/platform/qquickplatformdialog.cpp +++ b/src/imports/platform/qquickplatformdialog.cpp @@ -407,3 +407,5 @@ QWindow *QQuickPlatformDialog::findParentWindow() const } QT_END_NAMESPACE + +#include "moc_qquickplatformdialog_p.cpp" diff --git a/src/imports/platform/qquickplatformmenu.cpp b/src/imports/platform/qquickplatformmenu.cpp index 1f5f52d78f..8954d43958 100644 --- a/src/imports/platform/qquickplatformmenu.cpp +++ b/src/imports/platform/qquickplatformmenu.cpp @@ -938,3 +938,5 @@ void QQuickPlatformMenu::updateIcon() } QT_END_NAMESPACE + +#include "moc_qquickplatformmenu_p.cpp" diff --git a/src/imports/platform/qquickplatformmenubar.cpp b/src/imports/platform/qquickplatformmenubar.cpp index 99757829b9..592a6bfe52 100644 --- a/src/imports/platform/qquickplatformmenubar.cpp +++ b/src/imports/platform/qquickplatformmenubar.cpp @@ -328,3 +328,5 @@ void QQuickPlatformMenuBar::menus_clear(QQmlListProperty *pr } QT_END_NAMESPACE + +#include "moc_qquickplatformmenubar_p.cpp" diff --git a/src/imports/platform/qquickplatformmenuitem.cpp b/src/imports/platform/qquickplatformmenuitem.cpp index fa3fdafb84..e5741b6b33 100644 --- a/src/imports/platform/qquickplatformmenuitem.cpp +++ b/src/imports/platform/qquickplatformmenuitem.cpp @@ -623,3 +623,5 @@ void QQuickPlatformMenuItem::updateIcon() } QT_END_NAMESPACE + +#include "moc_qquickplatformmenuitem_p.cpp" diff --git a/src/imports/platform/qquickplatformmenuitemgroup.cpp b/src/imports/platform/qquickplatformmenuitemgroup.cpp index 7e091881e1..e0773bb165 100644 --- a/src/imports/platform/qquickplatformmenuitemgroup.cpp +++ b/src/imports/platform/qquickplatformmenuitemgroup.cpp @@ -388,3 +388,5 @@ void QQuickPlatformMenuItemGroup::items_clear(QQmlListProperty