You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Describe the bug
While using the :cpp:func: directive to cross-reference a C++ function that returns a pointer, you will receivean error that the * character in the reference is "unparseable". This makes it impossible to cross-reference a function with a pointer return value
To Reproduce
Steps to reproduce the behavior:
Source (C++):
class Foo
{
public:
Foo* Bar();
}
Sphinx (reStructuredText):
:cpp:func:`Foo* Foo::Bar()`
Result:
WARNING: Unpareseable C++ cross-reference: 'Foo*'
Invalid definition: Expected end of definition. [error at 4]
Foo*
---^
Expected behavior
The expected behavior is to output a properly cross-referenced link to the Foo* Foo::Bar() function.
Your project
N/A
Screenshots
N/A
Environment info
OS: [e.g. Unix/Linux/Mac/Win/other with version]
Python version: 3.7.0
Sphinx version: 2.0.0+
Sphinx extensions: breathe
Extra tools: N/A
The text was updated successfully, but these errors were encountered:
Thanks for reporting, this is indeed a bug. Note though that there are two formats for function references: (1) a full signature (as you write), for referencing a specific overload, and (2) just the name of the function (here Foo::Bar), which references an arbitrary overload. Format (2) should still work.
Hi Jakob, thanks for taking a look at the issue. I can confirm that the format (2) you described works as intended, and even most full signatures work correctly with the exception of functions that return pointers.
Describe the bug
While using the :cpp:func: directive to cross-reference a C++ function that returns a pointer, you will receivean error that the * character in the reference is "unparseable". This makes it impossible to cross-reference a function with a pointer return value
To Reproduce
Steps to reproduce the behavior:
Source (C++):
Sphinx (reStructuredText):
Result:
Expected behavior
The expected behavior is to output a properly cross-referenced link to the Foo* Foo::Bar() function.
Your project
N/A
Screenshots
N/A
Environment info
The text was updated successfully, but these errors were encountered: