aboutsummaryrefslogtreecommitdiffstats
path: root/sources/shiboken2/ApiExtractor/clangparser/clangbuilder.cpp
diff options
context:
space:
mode:
authorFriedemann Kleint <Friedemann.Kleint@qt.io>2020-07-20 09:20:28 +0200
committerFriedemann Kleint <Friedemann.Kleint@qt.io>2020-07-20 17:52:07 +0200
commit14023079a9c082fa85592858698810e997af418e (patch)
tree6c573a155abfbc2e90a02b46f06b85777fe9a66f /sources/shiboken2/ApiExtractor/clangparser/clangbuilder.cpp
parent9a9c65d289fbb80c4868760ed7a9e7a117eca7b6 (diff)
Fix libsample/photon test for Qt 6 / Windows
The code model was seeing photon.h:93: template class LIBSAMPLE_API TemplateBase<IdentityType>; as complete class definitions, shadowing the previous template definition. Add some processing removing them. Task-number: PYSIDE-1339 Task-number: PYSIDE-904 Change-Id: If0f28feeb6e3ff8c064e8853784240695f79e0b4 Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org> Reviewed-by: Christian Tismer <tismer@stackless.com>
Diffstat (limited to 'sources/shiboken2/ApiExtractor/clangparser/clangbuilder.cpp')
-rw-r--r--sources/shiboken2/ApiExtractor/clangparser/clangbuilder.cpp5
1 files changed, 4 insertions, 1 deletions
diff --git a/sources/shiboken2/ApiExtractor/clangparser/clangbuilder.cpp b/sources/shiboken2/ApiExtractor/clangparser/clangbuilder.cpp
index d08720934..6eb7e7b0c 100644
--- a/sources/shiboken2/ApiExtractor/clangparser/clangbuilder.cpp
+++ b/sources/shiboken2/ApiExtractor/clangparser/clangbuilder.cpp
@@ -162,6 +162,7 @@ public:
void popScope()
{
+ m_scopeStack.back()->purgeClassDeclarations();
m_scopeStack.pop();
updateScope();
}
@@ -841,7 +842,9 @@ void Builder::setSystemIncludes(const QByteArrayList &systemIncludes)
FileModelItem Builder::dom() const
{
Q_ASSERT(!d->m_scopeStack.isEmpty());
- return qSharedPointerDynamicCast<_FileModelItem>(d->m_scopeStack.constFirst());
+ auto rootScope = d->m_scopeStack.constFirst();
+ rootScope->purgeClassDeclarations();
+ return qSharedPointerDynamicCast<_FileModelItem>(rootScope);
}
static QString msgOutOfOrder(const CXCursor &cursor, const char *expectedScope)