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 792676 - When generating XML output (with GENERATE_XML = YES), any C++ class enum within a named namespace leads to a warning
When generating XML output (with GENERATE_XML = YES), any C++ class enum with...
Status: RESOLVED OBSOLETE
Product: doxygen
Classification: Other
Component: general
1.8.12
Other Windows
: Normal normal
: ---
Assigned To: Dimitri van Heesch
Dimitri van Heesch
[moved_to_github]
Depends on:
Blocks:
 
 
Reported: 2018-01-19 10:25 UTC by Алексей Ковалёв
Modified: 2018-07-30 10:47 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
C++ header file containing the problematic enum's (412 bytes, text/plain)
2018-01-19 10:25 UTC, Алексей Ковалёв
Details
The doxygen configuration file (13.00 KB, text/plain)
2018-01-19 10:27 UTC, Алексей Ковалёв
Details
Doxygen output (the log file) (3.93 KB, text/plain)
2018-01-19 10:29 UTC, Алексей Ковалёв
Details

Description Алексей Ковалёв 2018-01-19 10:25:18 UTC
Created attachment 367069 [details]
C++ header file containing the problematic enum's

Any C++ scoped enumerations (class enums, introduced in C++11 -- see http://en.cppreference.com/w/cpp/language/enum) within a named (non-anonymous) namespace lead to warning of type 
warning: Internal inconsistency: member ... does not belong to any container!
when generating XML output (i.e., with GENERATE_XML set to non-default YES).

For instance, when doxygen 1.8.12 is run on the following slightly modified example from doxygen documentation (http://www.stack.nl/~dimitri/doxygen/manual/commands.html#cmdenum) (in Test.h, in the attachment):
==============
/** \file Test.h
 * A brief file description.
 * A more elaborated file description.
 */
namespace MyNamespace
  {
  enum class TEnum { Val1, Val2 };

  /*! Another enum, with inline docs */
  enum class AnotherEnum 
    { 
    V1, /*!< value 1 */
    V2  /*!< value 2 */
    };

  /*! \var MyNamespace::TEnum MyNamespace::Enum_Test::Val1
   * The description of the first enum value.
   */
  }
==============
we get a bunch of warnings:

Test.h:7: warning: Internal inconsistency: member Val1 does not belong to any container!
Test.h:7: warning: Internal inconsistency: member Val1 does not belong to any container!
Test.h:7: warning: Internal inconsistency: member Val2 does not belong to any container!
Test.h:7: warning: Internal inconsistency: member Val2 does not belong to any container!
Test.h:12: warning: Internal inconsistency: member V1 does not belong to any container!
Test.h:12: warning: Internal inconsistency: member V1 does not belong to any container!
Test.h:14: warning: Internal inconsistency: member V2 does not belong to any container!
Test.h:14: warning: Internal inconsistency: member V2 does not belong to any container!

The presence of doxygen documentation in the code does not matter.
Comment 1 Алексей Ковалёв 2018-01-19 10:27:12 UTC
Created attachment 367070 [details]
The doxygen configuration file

All defaults with the exception of 
GENERATE_XML = YES
Comment 2 Алексей Ковалёв 2018-01-19 10:29:06 UTC
Created attachment 367071 [details]
Doxygen output (the log  file)

Shows the "internal inconsistency" warnings, of the type
warning: Internal inconsistency: member <val_name> does not belong to any container!
Comment 3 André Klapper 2018-07-30 10:47:00 UTC
As discussed in https://github.com/doxygen/doxygen/pull/734 , Doxygen has moved its issue tracking to 

   https://github.com/doxygen/doxygen/issues

All Doxygen tickets in GNOME Bugzilla have been migrated to Github. You can subscribe and participate in the new ticket in Github. You can find the corresponding Github ticket by searching for its Bugzilla ID (number) in Github.

Hence I am closing this GNOME Bugzilla ticket.
Please use the corresponding ticket in Github instead. Thanks a lot!