Undeserved explicit link warnings with 1.5.2

"Robbie Gates" <[email protected]>
Newsgroups gmane.text.doxygen.devel
Message-ID <[email protected]>
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

-------------------------------------------------------------------------
Take Surveys. Earn Cash. Influence the Future of IT
Join SourceForge.net's Techsay panel and you'll get the chance to share your
opinions on IT & business topics through brief surveys-and earn cash
http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.