Hi All,
I'm getting warnings like
myFile.cpp:2: Warning: explicit link request to 'myFunction' could
not be resolved
The documentation source in question is a "#myFunction" reference in
the @file section of myFile.cpp.
They're being generated by calls to docparser.cpp's handleLinkedWord
from the buildFileList call of parseInput. Note that myFunction is
indeed a documented function. The generated documentation is actually
correct - when handleLinkedWord is called from doxygen.cpp's
generateFileDocs, no warning is produced, and the correct link is made
in the final generated documentation.
The first call (the one that produces the warnings) is via
Definition::_setBriefDescription, which calls parseCommentAsText in
order to garner the tooltip text - so iiuc it doesn't need to expand
the links anyway. I hacked up a quick change using a global set by
validatingParseDoc to arrange handleLinkedWord to just return a
DocWord always, and arrange for only the call from parseCommentAsText
to set the global. This appears to fix the problem, but maybe there's
a better way to address this ?
To a first glance/guess, it looks like the early warnings are being
produced because the functions have not yet been parsed, and so the
references to them are unknown. I get a few other cases, some when
variables reference function names, and occasionally when variables
reference other variables.
The same issue occurs for \ref links in the same context, and for the
same reasons. A simliar change (using the same global) in
DocRef::DocRef also fixes this.
i'm happy to post my patch if that's desired, but if there's a better
way to attack this, lmk and (time permitting) i'll have a go at
implementing that.
This happens both with a self compiled exe and with the distributed
zipped binaries (windows).
- robbie
|