GNOME Bugzilla – Bug 739214
Cannot make unscoped link to C++ conversion operator [with test case]
Last modified: 2014-11-16 19:29:37 UTC
Created attachment 289356 [details] Repro/test case See attached ZIP file for minimal repro case or the following snippet: /** * @brief Foo * * - operator int() * - @ref operator int() * - @ref operator int() "title" * - Foo::operator int() * - @ref Foo::operator int() * - @ref Foo::operator int() "title" */ struct Foo { /** @brief Conversion to int */ operator int(); }; The generated HTML docs properly parse and document the int conversion operator, but none of the first three links work. The first one is not detected as link at all (no warning on output), the second and third produce a warning: operator.h:3: warning: unable to resolve reference to `operator' for \ref command operator.h:4: warning: unable to resolve reference to `operator' for \ref command Interestingly enough, the second three (explicitly scoped) links work without issue, so that can be considered as workaround. All other kinds of unscoped operator links (`operator=()`, `operator[]()` etc.) are working without issues. I admit that marking the conversion operator link implicit might bring up many false positives, so I'm all for making these links possible only with explicit @ref. Possibly related issues: #678643, #699465. Tested with current Git (a31c9ff).
I'll follow your suggestions. Should be corrected in the next GIT update.
Just tested and works, thanks!