diff --git a/src/libs/qmljs/qmljstypedescriptionreader.cpp b/src/libs/qmljs/qmljstypedescriptionreader.cpp index 318d98d7581..4c3f0bb0dbb 100644 --- a/src/libs/qmljs/qmljstypedescriptionreader.cpp +++ b/src/libs/qmljs/qmljstypedescriptionreader.cpp @@ -145,12 +145,14 @@ void TypeDescriptionReader::readModule(UiObjectDefinition *ast) for (UiObjectMemberList *it = ast->initializer->members; it; it = it->next) { UiObjectMember *member = it->member; UiObjectDefinition *component = dynamic_cast(member); - if (!component || Bind::toString(component->qualifiedTypeNameId) != "Component") { - addWarning(member->firstSourceLocation(), "Expected only 'Component' object definitions"); + const QString typeName = Bind::toString(component->qualifiedTypeNameId); + if (!component || (typeName != "Component" && typeName != "ModuleApi")) { + addWarning(member->firstSourceLocation(), "Expected only 'Component' and 'ModuleApi' object definitions"); continue; } - readComponent(component); + if (typeName == QLatin1String("Component")) + readComponent(component); } }