From cbbee78a5fdba727b0bd5774a2f4606156a16e15 Mon Sep 17 00:00:00 2001 From: Friedemann Kleint Date: Thu, 14 Dec 2023 10:43:54 +0100 Subject: Silence documentation warnings about not finding signals in webxml files Do not propagate the base class signal functions in the meta builder. Task-number: PYSIDE-1106 Pick-to: 6.6 Change-Id: If721f11841b4b0bd5c40bda982a12cbc07c317ac Reviewed-by: Qt CI Bot Reviewed-by: Shyamnath Premnadh --- sources/shiboken6/ApiExtractor/abstractmetalang.cpp | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/sources/shiboken6/ApiExtractor/abstractmetalang.cpp b/sources/shiboken6/ApiExtractor/abstractmetalang.cpp index d049c578a..572b4f99d 100644 --- a/sources/shiboken6/ApiExtractor/abstractmetalang.cpp +++ b/sources/shiboken6/ApiExtractor/abstractmetalang.cpp @@ -1447,6 +1447,11 @@ void AbstractMetaClassPrivate::addUsingConstructors(const AbstractMetaClassPtr & } } +static inline bool isSignal(const AbstractMetaFunctionCPtr &f) +{ + return f->isSignal(); +} + void AbstractMetaClass::fixFunctions(const AbstractMetaClassPtr &klass) { auto *d = klass->d.data(); @@ -1483,6 +1488,10 @@ void AbstractMetaClass::fixFunctions(const AbstractMetaClassPtr &klass) *superClass -= AbstractMetaClass::FinalInTargetLang; } superFuncs = superClass->queryFunctions(FunctionQueryOption::ClassImplements); + // We are not interested in signals as no bindings are generated for them; + // they cause documentation warnings. + superFuncs.erase(std::remove_if(superFuncs.begin(), superFuncs.end(), isSignal), + superFuncs.end()); const auto virtuals = superClass->queryFunctions(FunctionQueryOption::VirtualInCppFunctions); superFuncs += virtuals; -- cgit v1.2.3