Uploaded image for project: 'Jenkins'
  1. Jenkins
  2. JENKINS-61855

Doxygen parser doesn't detect Doxygen Warnings

      I got lots of Doxygen warnings similar to these:

      /repo/src/libraries/base/include/configuration.h(115): warning: Member Notify(const IProperty &oProperty) override (function) of class property_variable< T > is not documented. 
      /repo/src/libraries/base/include/configuration.h(120): warning: Member GetType(IString &&strType) const override (function) of class property_variable< T > is not documented. 
      /repo/src/libraries/base/include/configuration.h(125): warning: Member GetValue() const override (function) of class property_variable< T > is not documented. 
      /repo/src/libraries/base/include/configuration.h(130): warning: Member operator*() const (function) of class property_variable< T > is not documented. 
      /repo/src/libraries/base/include/configuration.h(135): warning: Member operator const T &() const (function) of class property_variable< T > is not documented. 
      /repo/src/libraries/base/include/configuration.h(140): warning: Member operator==(const T &oVal) (function) of class property_variable< T > is not documented. 
      /repo/src/libraries/base/include/configuration.h(145): warning: Member operator!=(const T &oVal) (function) of class property_variable< T > is not documented.

      But non of them is detected, instead the same warnings are detected as with the GCC parser.
      This might be related to JENKINS-60469

          [JENKINS-61855] Doxygen parser doesn't detect Doxygen Warnings

          Nils Gerke added a comment -

          drulli if you give me a hint were to start, I would try fixing this. I guess the workflow would be to fork https://github.com/jenkinsci/analysis-model, assign this Issue to me and create a pull request when finished right?

          Nils Gerke added a comment - drulli if you give me a hint were to start, I would try fixing this. I guess the workflow would be to fork https://github.com/jenkinsci/analysis-model , assign this Issue to me and create a pull request when finished right?

          Ulli Hafner added a comment - - edited

          Yes, this is the right process.

          There are two options to solve the problem: either create a new parser or extend the existing GCC parser. Since the GCC parser already is quite complex I prefer the former option. Are there some Doxygen warnings that are recognized by the GCC parser already? Or are all the warnings in the form of the example in the description?

          Ulli Hafner added a comment - - edited Yes, this is the right process. There are two options to solve the problem: either create a new parser or extend the existing GCC parser. Since the GCC parser already is quite complex I prefer the former option. Are there some Doxygen warnings that are recognized by the GCC parser already? Or are all the warnings in the form of the example in the description?

          Ulli Hafner added a comment -

          What also is possible: we can register multiple parsers for Doxygen. I.e., we can use the existing one and a new additional one that parses the messages from above.

          Ulli Hafner added a comment - What also is possible: we can register multiple parsers for Doxygen. I.e., we can use the existing one and a new additional one that parses the messages from above.

          Nils Gerke added a comment - - edited

          I've checked the logs and the GCC parser catches none of the Doxygen warnings, but the MSBuild parser catches all Doxygen warnings. 
          What would be the expected behavior? GCC/MSBuild Parser catching the Doxygen warnings or GCC/MSBuild catching only compiler warnings and a Doxygen parser catching Doxygen warnings. Depending on this I would choose if we should be going for the existing GCC parser or a new parser.
          For me personal the second case would be more intuitive. 

          Nils Gerke added a comment - - edited I've checked the logs and the GCC parser catches none of the Doxygen warnings, but the MSBuild parser catches all Doxygen warnings.  What would be the expected behavior? GCC/MSBuild Parser catching the Doxygen warnings or GCC/MSBuild catching only compiler warnings and a Doxygen parser catching Doxygen warnings. Depending on this I would choose if we should be going for the existing GCC parser or a new parser. For me personal the second case would be more intuitive. 

          Ulli Hafner added a comment - - edited

          I think it makes sense to start with a new parser just for those Doxygen messages. From the log shown in the description it looks like that this parser will be quite simple.

          Ulli Hafner added a comment - - edited I think it makes sense to start with a new parser just for those Doxygen messages. From the log shown in the description it looks like that this parser will be quite simple.

            Unassigned Unassigned
            ngerke Nils Gerke
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

              Created:
              Updated: