diff options
author | Topi Reinio <topi.reinio@qt.io> | 2020-04-14 15:30:36 +0200 |
---|---|---|
committer | Topi Reiniƶ <topi.reinio@qt.io> | 2020-04-21 06:04:31 +0000 |
commit | d53af222939321fb816d44f86588c3eb8c255e10 (patch) | |
tree | c56b5853d743a516a1cb540ba5e8f3218c1eec56 /tests/auto/qdoc/generatedoutput/testdata/testcpp/testcpp.cpp | |
parent | 8f379adf059977c04c2105b6ca73b04b1a923d8a (diff) |
qdoc: Fix handling of default values for function parameters
When using an \fn command to document a function that has default
values for parameter(s), The Clang parser retrieves a relevant
section of the source file that contains the expression for the
default value. In case of \fn, the source is a temporary translation
unit that was constructed on the fly - but it may not exist anymore,
and the default value is lost.
Fix this by storing the contents of the temporary TU for later access.
Fixes: QTBUG-83472
Change-Id: I20ad9e3322636450db1def65933837c1c767f2c4
Reviewed-by: Paul Wicking <paul.wicking@qt.io>
Diffstat (limited to 'tests/auto/qdoc/generatedoutput/testdata/testcpp/testcpp.cpp')
-rw-r--r-- | tests/auto/qdoc/generatedoutput/testdata/testcpp/testcpp.cpp | 18 |
1 files changed, 11 insertions, 7 deletions
diff --git a/tests/auto/qdoc/generatedoutput/testdata/testcpp/testcpp.cpp b/tests/auto/qdoc/generatedoutput/testdata/testcpp/testcpp.cpp index 17045eed5..31b910fae 100644 --- a/tests/auto/qdoc/generatedoutput/testdata/testcpp/testcpp.cpp +++ b/tests/auto/qdoc/generatedoutput/testdata/testcpp/testcpp.cpp @@ -124,13 +124,7 @@ void Test::someFunctionDefaultArg(int i, bool b = false) return; } -/*! - Function that takes a parameter \a v. - Also returns the value of \a v. -\if defined(test_ignoresince) - \since Test 1.0 -\endif -*/ +// Documented below with an \fn command. Unnecessary but we support it, and it's used. int Test::someFunction(int v) { return v; @@ -143,6 +137,16 @@ int Test::someFunction(int v) */ /*! + \fn int Test::someFunction(int v = 0) + + Function that takes a parameter \a v. + Also returns the value of \a v. +\if defined(test_ignoresince) + \since Test 1.0 +\endif +*/ + +/*! Function that must be reimplemented. */ void Test::virtualFun() |