aboutsummaryrefslogtreecommitdiffstats
path: root/sources/shiboken6/ApiExtractor/messages.cpp
diff options
context:
space:
mode:
authorFriedemann Kleint <Friedemann.Kleint@qt.io>2020-11-18 11:19:22 +0100
committerFriedemann Kleint <Friedemann.Kleint@qt.io>2020-11-18 11:52:40 +0000
commita3c6eb91a7c543aa78f87a73242ee17be585b712 (patch)
treed516c3c4bc62c93aef7212e279394e8a232ecce2 /sources/shiboken6/ApiExtractor/messages.cpp
parent768cfefa3d693f682d8c71b085e861c3be9631d7 (diff)
shiboken6: Fix some warning messages
Use standard messages where applicable. Move some messages over to messages.cpp and add a location. Remove some messages that cannot be triggered any more. Change-Id: I7fc821e4360b06af7ef6e5db7e30de0f1e8ed5ca Reviewed-by: Christian Tismer <tismer@stackless.com>
Diffstat (limited to 'sources/shiboken6/ApiExtractor/messages.cpp')
-rw-r--r--sources/shiboken6/ApiExtractor/messages.cpp110
1 files changed, 107 insertions, 3 deletions
diff --git a/sources/shiboken6/ApiExtractor/messages.cpp b/sources/shiboken6/ApiExtractor/messages.cpp
index 85759472c..2e72b95bc 100644
--- a/sources/shiboken6/ApiExtractor/messages.cpp
+++ b/sources/shiboken6/ApiExtractor/messages.cpp
@@ -143,6 +143,29 @@ QString msgAddedFunctionInvalidReturnType(const QString &addedFuncName,
return result;
}
+QString msgUnnamedArgumentDefaultExpression(const AbstractMetaClass *context,
+ int n, const QString &className,
+ const AbstractMetaFunction *f)
+{
+ QString result;
+ QTextStream str(&result);
+ if (context)
+ str << context->sourceLocation();
+ str << "Argument " << n << " on function '" << className << "::"
+ << f->minimalSignature() << "' has default expression but does not have name.";
+ return result;
+}
+
+QString msgClassOfEnumNotFound(const EnumTypeEntry *entry)
+{
+ QString result;
+ QTextStream str(&result);
+ str << entry->sourceLocation() << "AbstractMeta::findEnum(), unknown class '"
+ << entry->parent()->qualifiedCppName() << "' in '"
+ << entry->qualifiedCppName() << '\'';
+ return result;
+}
+
QString msgNoEnumTypeEntry(const EnumModelItem &enumItem,
const QString &className)
{
@@ -231,6 +254,28 @@ QString msgSkippingFunction(const FunctionModelItem &functionItem,
return result;
}
+QString msgShadowingFunction(const AbstractMetaFunction *f1,
+ const AbstractMetaFunction *f2)
+{
+ auto f2Class = f2->implementingClass();
+ QString result;
+ QTextStream str(&result);
+ str << f2Class->sourceLocation() << "Shadowing: " << f1->implementingClass()->name()
+ << "::" << f1->signature() << " and " << f2Class->name() << "::"
+ << f2->signature();
+ return result;
+}
+
+QString msgSignalOverloaded(const AbstractMetaClass *c,
+ const AbstractMetaFunction *f)
+{
+ QString result;
+ QTextStream str(&result);
+ str << c->sourceLocation() << "signal '" << f->name() << "' in class '"
+ << c->name() << "' is overloaded.";
+ return result;
+}
+
QString msgSkippingField(const VariableModelItem &field, const QString &className,
const QString &type)
{
@@ -285,12 +330,23 @@ QString msgEnumNotDefined(const EnumTypeEntry *t)
return result;
}
-QString msgUnknownBase(const AbstractMetaClass *metaClass, const QString &baseClassName)
+QString msgUnknownBase(const AbstractMetaClass *metaClass,
+ const QString &baseClassName)
+{
+ QString result;
+ QTextStream str(&result);
+ str << metaClass->sourceLocation() << "Base class '" << baseClassName << "' of class '"
+ << metaClass->name() << "' not found in the code for setting up inheritance.";
+ return result;
+}
+
+QString msgBaseNotInTypeSystem(const AbstractMetaClass *metaClass,
+ const QString &baseClassName)
{
QString result;
QTextStream str(&result);
- str << metaClass->sourceLocation() << "class '" << metaClass->name()
- << "' inherits from unknown base class '" << baseClassName << "'";
+ str << metaClass->sourceLocation() << "Base class '" << baseClassName << "' of class '"
+ << metaClass->name() << "' not found in the type system for setting up inheritance.";
return result;
}
@@ -396,6 +452,16 @@ QString msgPropertyExists(const QString &className, const QString &name)
+ QLatin1String("\" (defined by Q_PROPERTY).");
}
+QString msgFunctionVisibilityModified(const AbstractMetaClass *c,
+ const AbstractMetaFunction *f)
+{
+ QString result;
+ QTextStream str(&result);
+ str << c->sourceLocation() << "Visibility of function '" << f->name()
+ << "' modified in class '"<< c->name() << '\'';
+ return result;
+}
+
// docparser.cpp
QString msgCannotFindDocumentation(const QString &fileName,
@@ -680,6 +746,44 @@ QString msgCannotFindView(const QString &viewedName, const QString &name)
+ QLatin1String(" for ") + name;
}
+// cppgenerator.cpp
+
+QString msgPureVirtualFunctionRemoved(const AbstractMetaFunction *f)
+{
+ QString result;
+ auto klass = f->ownerClass();
+ QTextStream str(&result);
+ str << klass->sourceLocation() << "Pure virtual method '" << klass->name()
+ << "::"<< f->minimalSignature()
+ << "' must be implemented but was completely removed on type system.";
+ return result;
+}
+
+QString msgUnknownTypeInArgumentTypeReplacement(const QString &typeReplaced,
+ const AbstractMetaFunction *f)
+{
+ QString result;
+ QTextStream str(&result);
+ if (auto klass = f->ownerClass())
+ str << klass->sourceLocation();
+ str << "Unknown type '" << typeReplaced
+ << "' used as argument type replacement in function '" << f->signature()
+ << "', the generated code may be broken.";
+ return result;
+}
+
+QString msgRegisterMetaTypeUnqualifiedName(const AbstractMetaClass *c,
+ const char *file, int line)
+{
+ QString result;
+ QTextStream str(&result);
+ str << c->sourceLocation() << " (" << file << ':' << line << ") FIXME:\n"
+ << " The code tried to qRegisterMetaType the unqualified name "
+ << "'iterator' (" << c->qualifiedCppName()
+ << "). This is currently fixed by a hack(ct) and needs improvement!";
+ return result;
+}
+
// qtdocgenerator.cpp
QString msgTagWarning(const QXmlStreamReader &reader, const QString &context,