Skip to content

Gaudi Inheritance Checker Update, master branch (2020.07.06.)

Taught the checker about the "Gaudi/..." include path.

With modern Gaudi shifting more and more of its headers into the "Gaudi/" directory, the checker needs to know to ignore those in this inheritance check. I came across this while working on !695 (closed), and encountering warnings like:

In file included from /data-hdd1/projects/gaudi/athena/Control/GaudiSequencer/src/AthSequencer.h:20,
                 from /data-hdd1/projects/gaudi/athena/Control/GaudiSequencer/src/AthRetrySequencer.h:18,
                 from /data-hdd1/projects/gaudi/athena/Control/GaudiSequencer/src/AthRetrySequencer.cxx:13:
/data-hdd1/projects/gaudi/atlasexternals-install/AthenaExternals/22.0.0/InstallArea/x86_64-centos7-gcc8-opt/include/Gaudi/Sequence.h:18:19: warning: 'class Gaudi::Sequence' derives directly from 'Gaudi::Algorithm'; should derive from 'AthAlgorithm' instead and use its methods
   class GAUDI_API Sequence : public Algorithm {
                   ^~~~~~~~
/data-hdd1/projects/gaudi/atlasexternals-install/AthenaExternals/22.0.0/InstallArea/x86_64-centos7-gcc8-opt/include/Gaudi/Sequence.h:18:19: note: See <https://twiki.cern.ch/twiki/bin/view/AtlasComputing/ImprovingSoftware> and <https://twiki.cern.ch/twiki/bin/view/AtlasComputing/AthenaBaseComps>.

@ssnyder, I thought it would make sense to put the check as the first one. Since eventually pretty much all the public headers of Gaudi should end up in that directory.

P.S. The extra spaces were automatically removed by my text editor... 😛

Merge request reports