From fd64253a62929fa6db6f865dc9a9e30098eb7524 Mon Sep 17 00:00:00 2001 From: Christian Stenger Date: Thu, 6 May 2021 08:54:36 +0200 Subject: [PATCH] QmlJS: Suppress wrong warning When a type is created inside a file with the same name do not warn if the created type is namespaced. Fixes: QTCREATORBUG-24615 Change-Id: Icb2b1a9fd1a02ee222084b676ee818eed65a7c93 Reviewed-by: Fabian Kosmale --- src/libs/qmljs/qmljscheck.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/libs/qmljs/qmljscheck.cpp b/src/libs/qmljs/qmljscheck.cpp index 4d084692e44..344b39d14e2 100644 --- a/src/libs/qmljs/qmljscheck.cpp +++ b/src/libs/qmljs/qmljscheck.cpp @@ -939,13 +939,13 @@ void Check::visitQmlObject(Node *ast, UiQualifiedId *typeId, if (checkTypeForDesignerSupport(typeId)) addMessage(WarnUnsupportedTypeInVisualDesigner, typeErrorLocation, typeName); - if (QFileInfo(_doc->fileName()).baseName() == getRightMostIdentifier(typeId)->name.toString()) + if (typeId->next == nullptr && QFileInfo(_doc->fileName()).baseName() == typeName) addMessage(ErrTypeIsInstantiatedRecursively, typeErrorLocation, typeName); if (checkTypeForQmlUiSupport(typeId)) addMessage(ErrUnsupportedTypeInQmlUi, typeErrorLocation, typeName); - if (m_typeStack.count() > 1 && getRightMostIdentifier(typeId)->name.toString() == "State") { + if (m_typeStack.count() > 1 && typeName == "State") { addMessage(WarnStatesOnlyInRootItemForVisualDesigner, typeErrorLocation); addMessage(ErrStatesOnlyInRootItemInQmlUi, typeErrorLocation); }