After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 120389 - doxygen doesn't match "void f(int * const)" to "void f(int *)"
doxygen doesn't match "void f(int * const)" to "void f(int *)"
Status: RESOLVED FIXED
Product: doxygen
Classification: Other
Component: general
1.3.x
Other Linux
: Normal normal
: ---
Assigned To: Dimitri van Heesch
Dimitri van Heesch
Depends on:
Blocks:
 
 
Reported: 2003-08-21 13:13 UTC by Braden
Modified: 2004-12-26 21:02 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
Test case (121 bytes, text/plain)
2003-08-21 13:14 UTC, Braden
Details
Test case (133 bytes, text/plain)
2003-08-22 13:34 UTC, Braden
Details

Description Braden 2003-08-21 13:13:42 UTC
The function definition

  void f(int * const i) {}

matches the declaration

  void f(int * i);

Doxygen doesn't realize this; so when it sees a doc-comment by the
definition, it incorrectly infers that a function is undocumented based
on the declaration, and issues a spurious warning.
Comment 1 Braden 2003-08-21 13:14:47 UTC
Created attachment 19410 [details]
Test case
Comment 2 Dimitri van Heesch 2003-08-21 18:48:50 UTC
This problem should already have been fixed in the current CVS release.
Could you confirm or deny this?
Comment 3 Braden 2003-08-22 13:33:03 UTC
The initially given test case now succeeds, but the problem persists
for const types; const int *, for instance. I'll attach a second test
case that still fails.
Comment 4 Braden 2003-08-22 13:34:14 UTC
Created attachment 19447 [details]
Test case
Comment 5 Dimitri van Heesch 2003-08-23 06:25:34 UTC
Yes, this is indeed still wrong
Comment 6 Braden 2003-08-25 05:04:42 UTC
With the latest CVS, this now seems to be fixed.

Caveat: there may be some lingering problems with enumerants. I have
not been able to easily reproduce what I'm seeing in a simplified test
case; however, the "problem" function is included in the test case
I've attached to bug 120637.
Comment 7 Braden 2004-01-01 00:11:46 UTC
Reopening. As of release 1.3.5, the second test case (attachment
19447 [details]) is still broken.
Comment 8 Dimitri van Heesch 2004-05-23 10:13:58 UTC
From what I see with attachment 19447 [details] using release 1.3.7, the problem is now
solved.
Comment 9 Braden 2004-05-25 05:31:40 UTC
I don't think so. When processing attachment 19447 [details], doxygen 1.3.7-20040517
issues the warning:

/home/braden/src/doxytest.const/doxytest.cpp:5: Warning: Member f(const int *i)
of file doxytest.cpp is not documented.

This function is, in fact, documented.
Comment 10 Dimitri van Heesch 2004-08-04 13:38:10 UTC
We do you see the documentation block for this function then? The block in front
is a comment for the file as a whole.
Comment 11 Braden 2004-08-04 13:59:38 UTC
*There is no such function* in the example as "f(const int *i)". There is only
"f(int * i)"; and it is documented with a comment block immediately preceding
its definition.
Comment 12 Dimitri van Heesch 2004-12-26 21:02:30 UTC
I don't see the problems any more in the latest CVS release, so I'm closing this
again. Feel free to reopen the bug if you still have problems.