The second issue is that it looks like the "*“ is lost in the Token.
...
Tested again, I see that "*" is only exists in "m_FullType", not in "m_BaseType", then with the following patch, you issue can be solved.
src/plugins/codecompletion/codecompletion.cpp | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/src/plugins/codecompletion/codecompletion.cpp b/src/plugins/codecompletion/codecompletion.cpp
index 4814840..8434566 100644
--- a/src/plugins/codecompletion/codecompletion.cpp
+++ b/src/plugins/codecompletion/codecompletion.cpp
@@ -2742,7 +2742,8 @@ int CodeCompletion::DoAllMethodsImpl()
str << ed->GetLineIndentString(line - 1);
if (addDoxgenComment)
str << _T("/** @brief ") << token->m_Name << _T("\n *\n * @todo: document this function\n */\n");
- wxString type = token->m_BaseType;
+ wxString type = token->m_FullType;
+ // "int *" or "int &" -> "int*" or "int&"
if ((type.Last() == _T('&') || type.Last() == _T('*')) && type[type.Len() - 2] == _T(' '))
{
type[type.Len() - 2] = type.Last();
I change the base type to full type.