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 663645 - strongly typed c++11 enums do not generate correct output
strongly typed c++11 enums do not generate correct output
Status: RESOLVED FIXED
Product: doxygen
Classification: Other
Component: general
1.7.5.1
Other Windows
: Normal normal
: ---
Assigned To: Dimitri van Heesch
Dimitri van Heesch
Depends on:
Blocks:
 
 
Reported: 2011-11-08 18:28 UTC by Gregor Brandt
Modified: 2012-07-29 11:51 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
Regular enums will display description of members. (24.50 KB, image/png)
2012-07-29 11:49 UTC, Kriz
Details
Strongly typed enums will drop description of members... (21.91 KB, image/png)
2012-07-29 11:51 UTC, Kriz
Details

Description Gregor Brandt 2011-11-08 18:28:16 UTC
If two strongly typed enums use the same constant, the generated documenet for an enum contains both explanation texts if identical even thought the enum is typed.

enum class eTest1
{
   OK,  //!< This is OK
   NOT_OK  //!< this is not OK
};

enum class eTest2
{
   OK, //!< this is also OK
   FAIL, //!< this is a fail
}

produces:

enum eTest1

OK 
   This is OK
   This is also OK    <====== this should not be here

NOT_OK
   This is not OK


enum eTest2

OK
   This is OK         <====== this should not be here
   This is also OK

FAIL
   This is a fail
Comment 1 Dimitri van Heesch 2012-06-24 14:55:28 UTC
Confirmed. I'll add support for these enums in the next subversion update.
Comment 2 Dimitri van Heesch 2012-07-12 15:41:58 UTC
This bug was previously marked ASSIGNED, which means it should be fixed in
doxygen version 1.8.1.2. Please verify if this is indeed the case. Reopen the
bug if you think it is not fixed and please include any additional information
that you think can be relevant.
Comment 3 Kriz 2012-07-29 11:49:06 UTC
Created attachment 219833 [details]
Regular enums will display description of members.
Comment 4 Kriz 2012-07-29 11:49:54 UTC
Uh oh... I don't know why but the description text "Enumerator:" of strongly typed enums' single members will not be displayed in my HTML output. Changing the declaration back to regular enums will let them appear immediately (see attached images).

enum Test
{
    /// This is bla.
    bla,
    /// This is foo.
    foo
};

HTML output:

bla
    This is bla.
foo
    This is foo.

And now the new variant:

enum class Test
{
    /// This is bla.
    bla,
    /// This is foo.
    foo
};

No HTML output of the decription text! I'm using version 1.8.1.2
Comment 5 Kriz 2012-07-29 11:51:28 UTC
Created attachment 219834 [details]
Strongly typed enums will drop description of members...