1

Like this, I've already used the followings:

<functionName>"("<argument-list>")"
"::"<functionName>"("<argument-list>")"
<functionName>"()"
"::"<functionName>
"::"<functionName>"()"
(<className>"::")n<functionName>"("<argument-list>")"
(<className>"::")n<functionName>"("<argument-list>")"<modifiers>
(<className>"::")n<functionName>"()"
(<className>"::")n<functionName>
(<className>".")n<functionName>
...

But none of them provide the hyperlink to my another member function.

More details:

Version is 1.8.17.

The changes in configuration file that are needed to recreate the problem, are only the enabling recursion and specifying the input.

The example:

class A {
public:
void foo();
/// This is a brief description
///
/// more description
/// \note It is better to use foo() instead of this method, in baz situations
//               Other things that I've tested are below.
//                            A.foo
//                            A.foo() 
//                            A::foo 
//                            A::foo()
//                            ::foo 
//                            ::foo()
void bar();
};

config:

OUTPUT_DIRECTORY =
RECURSIVE = YES
INPUT = ../src/
GENERATE_HTML = YES
HTML_OUTPUT = html
HTML_FILE_EXTENSION = .html
Community
  • 1
  • 1
Hossein Noroozpour
  • 1,091
  • 1
  • 13
  • 26
  • 1
    Quite unclear how you actually tried to link, I see a lot of quotes. Which version of doxygen are you using? Please give a small real example as well as the differences between the used doxygen configuration file and the default doxygen configuration file (with the newer doxygen versions: `doxygen -x`). – albert Apr 12 '20 at 08:10
  • 2
    Please show some actual code that can be used to reproduce the issue. In the referenced doxygen manual page there is the formal description on the top of the page and a bit lower an actual usage. – albert Apr 12 '20 at 09:21
  • 1
    I see with the code some problems, the word `public:` is missing in the class and thus the functions are not seen (unless `EXTRACT=PRIVATE` has been set. the "continuation lines" of the note have been commented by `//` instead of `///`, the class `A` is not documented, the function `foo` is not documented (can be overcome by setting `EXTRACT_ALL` when fixing these issues I get links for all except `::foo` and `::foo()`. The later is understandable as the initial `::` indicate a global scope and not the class `A` scope. – albert Apr 12 '20 at 17:33
  • The example is not complete, but both functions in the actual code is `public:` and the `::` was to test different options (I know it is for outer scope), to make it to work and the `//` is used to show what other things I used. – Hossein Noroozpour Apr 12 '20 at 17:44
  • I'm thinking, maybe, it is a bug in this version, 'cause I'm using beta version of Ubuntu as my OS. – Hossein Noroozpour Apr 12 '20 at 17:54
  • 2
    Well you said version 1.8.17 and I tested it also with 1.8.17, the platform should not make a difference. So please make the example so it can be run by you and by me and that it does show the problem on your side (including providing the exact output of `doxgen -x`). – albert Apr 12 '20 at 19:18
  • 1
    @HosseinNoroozpour: And what happens when you properly document the function you're trying to reference? – Nicol Bolas Apr 13 '20 at 02:24
  • @NicolBolas: In the actual code, It doesn't have document, but it has link in the class page of generated html. – Hossein Noroozpour Apr 13 '20 at 02:37

0 Answers0