diff options
author | Friedemann Kleint <Friedemann.Kleint@qt.io> | 2021-09-15 14:48:34 +0200 |
---|---|---|
committer | Friedemann Kleint <Friedemann.Kleint@qt.io> | 2021-09-15 18:20:36 +0200 |
commit | d5cc98bea98cca129d232b23b84d1c5e89e8f4d5 (patch) | |
tree | 11710cf2e9808289a570257ba8fcd5d13c55b733 | |
parent | 3030f9c99e82c4ea0cc65d6573e90b7c80fe419f (diff) |
shiboken6: Fix function number in OverloadData graph
The function number refers to the root node.
Amends 47885c3c9d1ca4eb13daf79a0f6c73c8fce350cc.
Task-number: PYSIDE-1660
Task-number: PYSIDE-1653
Change-Id: I091872784f23ffc718205d9b8d4219f1505bf587
Reviewed-by: Christian Tismer <tismer@stackless.com>
-rw-r--r-- | sources/shiboken6/generator/shiboken/overloaddata.cpp | 11 |
1 files changed, 8 insertions, 3 deletions
diff --git a/sources/shiboken6/generator/shiboken/overloaddata.cpp b/sources/shiboken6/generator/shiboken/overloaddata.cpp index a359e8024..f315c9d3f 100644 --- a/sources/shiboken6/generator/shiboken/overloaddata.cpp +++ b/sources/shiboken6/generator/shiboken/overloaddata.cpp @@ -895,10 +895,14 @@ void OverloadDataNode::dumpNodeGraph(QTextStream &s) const s << toHtml(argType().cppSignature()) << "</td></tr>"; } + const OverloadDataRootNode *root = this; + while (!root->isRoot()) + root = root->parent(); + // Overloads for the signature to present point s << "<tr><td bgcolor=\"gray\" align=\"right\">overloads</td><td bgcolor=\"gray\" align=\"left\">"; for (const auto &func : m_overloads) - s << 'f' << functionNumber(func) << ' '; + s << 'f' << root->functionNumber(func) << ' '; s << "</td></tr>"; // Show default values (original and modified) for various functions @@ -906,15 +910,16 @@ void OverloadDataNode::dumpNodeGraph(QTextStream &s) const const AbstractMetaArgument *arg = argument(func); if (!arg) continue; + const int n = root->functionNumber(func); QString argDefault = arg->defaultValueExpression(); if (!argDefault.isEmpty() || argDefault != arg->originalDefaultValueExpression()) { - s << "<tr><td bgcolor=\"gray\" align=\"right\">f" << functionNumber(func); + s << "<tr><td bgcolor=\"gray\" align=\"right\">f" << n; s << "-default</td><td bgcolor=\"gray\" align=\"left\">"; s << argDefault << "</td></tr>"; } if (argDefault != arg->originalDefaultValueExpression()) { - s << "<tr><td bgcolor=\"gray\" align=\"right\">f" << functionNumber(func); + s << "<tr><td bgcolor=\"gray\" align=\"right\">f" << n; s << "-orig-default</td><td bgcolor=\"gray\" align=\"left\">"; s << arg->originalDefaultValueExpression() << "</td></tr>"; } |