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 670237 - #define erroneously regarded as compile guard and not documented
#define erroneously regarded as compile guard and not documented
Status: RESOLVED DUPLICATE of bug 670235
Product: doxygen
Classification: Other
Component: general
1.7.6.1
Other All
: Normal normal
: ---
Assigned To: Dimitri van Heesch
Dimitri van Heesch
Depends on:
Blocks:
 
 
Reported: 2012-02-16 17:42 UTC by Martin Sauerhoff
Modified: 2012-02-17 08:36 UTC
See Also:
GNOME target: ---
GNOME version: ---



Description Martin Sauerhoff 2012-02-16 17:42:32 UTC
If the construction 

//! \def FOO
//! \brief Comment for FOO.

#ifndef FOO
#define FOO 1
#endif

is the first one of this type in a file, the preprocessor of doxygen
erroneously regards this as a compile guard by its "compile guard
heuristics" and strips it away, even though it is obviously documented
(and not a compile guard).

This should probably be fixed by keeping the information that a define
might by a compile guard together with the define and decide later on,
in the main parser, whether it should be ignored (when the information
from the \def is available).
Comment 1 Dimitri van Heesch 2012-02-16 19:01:37 UTC
I don't see how this problem is different from the previous one, so I'll mark it as a duplicate.

*** This bug has been marked as a duplicate of bug 670235 ***
Comment 2 Martin Sauerhoff 2012-02-17 08:36:00 UTC
(In reply to comment #1)
> I don't see how this problem is different from the previous one, so I'll mark
> it as a duplicate.
> 
> *** This bug has been marked as a duplicate of bug 670235 ***

This is not a duplicate of bug 670235. 

Here, the reason for not documenting the #define is that it is 
regarded as a "compile guard" by the "compile guard heuristics"
of doxygen.

In bug 670235, the reason for not documenting the #define is in
the management of the define contexts of doxygen, as described
in the bug report.

So two different bugs probably requiring quite different fixes.