diff options
author | Topi Reinio <topi.reinio@qt.io> | 2020-09-29 18:25:18 +0200 |
---|---|---|
committer | Topi Reinio <topi.reinio@qt.io> | 2020-10-08 12:14:29 +0200 |
commit | 05ffeba75e90e226cd6ddf7d72cb9b9d0ad5f172 (patch) | |
tree | 0530a002323f5112343ba5fee171b799c8fafc85 /tests/auto/qdoc/generatedoutput/expected_output/properties/testcpp.index | |
parent | c3b26e9a55ae39f2c88a343990bd691351e9efd4 (diff) |
qdoc: Document friend functions as related non-members
When parsing a friend declaration in a class, QDoc associated the
subsequent function declarations to the namespace scope. This
was conceptually correct as friend functions are not class members,
but made it impossible to match documentation to these functions using
the \fn command; the functions are still found under the class scope
in Clang AST, and this has to align with QDoc's node tree for the
documentation to be matched correctly.
Fix this by letting friend functions remain in the class, keeping
track of the friend declarations, and marking friend functions
automatically as related non-members.
Fixes: QTBUG-86987
Change-Id: I0ad26eed1c72af9302c9e420f5db0ec98c40d86a
Reviewed-by: Paul Wicking <paul.wicking@qt.io>
Diffstat (limited to 'tests/auto/qdoc/generatedoutput/expected_output/properties/testcpp.index')
-rw-r--r-- | tests/auto/qdoc/generatedoutput/expected_output/properties/testcpp.index | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/tests/auto/qdoc/generatedoutput/expected_output/properties/testcpp.index b/tests/auto/qdoc/generatedoutput/expected_output/properties/testcpp.index index 471d00f3e..726534089 100644 --- a/tests/auto/qdoc/generatedoutput/expected_output/properties/testcpp.index +++ b/tests/auto/qdoc/generatedoutput/expected_output/properties/testcpp.index @@ -25,6 +25,10 @@ </function> <function name="inlineFunction" fullname="TestQDoc::Test::inlineFunction" href="testqdoc-test.html#inlineFunction" status="active" access="public" location="testcpp.h" documented="true" meta="plain" virtual="non" const="false" static="false" final="false" override="false" type="void" brief="An inline function, documented using the \fn QDoc command" signature="void inlineFunction()"/> <function name="obsoleteMember" fullname="TestQDoc::Test::obsoleteMember" href="testqdoc-test-obsolete.html#obsoleteMember" status="obsolete" access="public" location="testcpp.h" documented="true" meta="plain" virtual="non" const="false" static="false" final="false" override="false" type="void" signature="void obsoleteMember()"/> + <function name="operator==" href="testqdoc-test.html#operator-eq-eq" status="active" access="public" location="testcpp.h" documented="true" related="true" meta="plain" virtual="non" const="false" static="false" final="false" override="false" type="bool" signature="bool operator==(const TestQDoc::Test &lhs, const TestQDoc::Test &rhs)"> + <parameter type="const TestQDoc::Test &" name="lhs" default=""/> + <parameter type="const TestQDoc::Test &" name="rhs" default=""/> + </function> <function name="overload" fullname="TestQDoc::Test::overload" href="testqdoc-test.html#overload" status="active" access="protected" location="testcpp.h" meta="plain" virtual="non" const="false" static="false" final="false" override="false" type="void" signature="void overload()"/> <function name="overload" fullname="TestQDoc::Test::overload" href="testqdoc-test.html#overload-1" status="active" access="protected" location="testcpp.h" documented="true" since="Test 1.2" meta="plain" virtual="non" const="false" static="false" final="false" override="false" overload="true" overload-number="1" type="void" signature="void overload(bool b)"> <parameter type="bool" name="b" default=""/> |