-
Bug
-
Resolution: Unresolved
-
Minor
-
None
-
Jenkins 2.164.3
Cppcheck Plug-in 1.24
Ubuntu 16.04
Reporting the base class is misleading because the error occurs in the derived class
Jenkins reports:
unchanged | /home/users/host/gitlab/project/source/frameworks/broadcast/IMUtils/data/DataClassBase.h | 99 | style | missingOverride | false | The function 'ChangeInfo' overrides a function in a base class but is not marked with a 'override' specifier. |
cppcheck-htmlreport reports:
/home/users/host/gitlab/project/source/apps/av/QtCommon/src/system/data/AVStatusIconInfo.h | ||||
26 | missingOverride | style | The function 'ChangeInfo' overrides a function in a base class but is not marked with a 'override' specifier. |
The xml file created by cppcheck shows
<error id="missingOverride" severity="style" msg="The function 'ChangeInfo' overrides a function in a base class but is not marked with a 'override' specifier." verbose="The function 'ChangeInfo' overrides a function in a base class but is not marked with a 'override' specifier.">
<location file="/home/users/host/gitlab/project/source/apps/av/QtCommon/src/system/data/AVStatusIconInfo.h" line="26" info="Function in derived class"/>
<location file="/home/users/host/gitlab/project/source/frameworks/broadcast/IMUtils/data/DataClassBase.h" line="99" info="Virtual function in base class"/>
</error>
The behavior of the cppcheck plugin is incorrect, and the behavior of cppcheck-htmlreport is correct.
[JENKINS-57459] For type missingOverride, base class is reported instead of derived class
Description |
Original:
Reporting the base class is misleading because the error occurs in the derived class Jenkins reports: |unchanged|[/home/users/host/gitlab/gen6linux/mobis/source/frameworks/broadcast/IMUtils/data/DataClassBase.h|http://10.114.170.101:8060/job/HDData%20Gen6/9/cppcheckResult/source.18]|[99|http://10.114.170.101:8060/job/HDData%20Gen6/9/cppcheckResult/source.18#89]|style|missingOverride|false|The function 'ChangeInfo' overrides a function in a base class but is not marked with a 'override' specifier.| cppcheck-htmlreport reports: |[/home/users/host/gitlab/gen6linux/mobis/source/apps/av/QtCommon/src/system/data/AVStatusIconInfo.h|file:///home/jeremy/Desktop/report/4.html]| |[26|file:///home/jeremy/Desktop/report/4.html#line-26]|missingOverride| |style|The function 'ChangeInfo' overrides a function in a base class but is not marked with a 'override' specifier.| The xml file created by cppcheck shows <error id="missingOverride" severity="style" msg="The function 'ChangeInfo' overrides a function in a base class but is not marked with a 'override' specifier." verbose="The function 'ChangeInfo' overrides a function in a base class but is not marked with a 'override' specifier."> <location file="/home/users/host/gitlab/gen6linux/mobis/source/apps/av/QtCommon/src/system/data/AVStatusIconInfo.h" line="26" info="Function in derived class"/> <location file="/home/users/host/gitlab/gen6linux/mobis/source/frameworks/broadcast/IMUtils/data/DataClassBase.h" line="99" info="Virtual function in base class"/> </error> The behavior of the cppcheck plugin is incorrect, and the behavior of cppcheck-htmlreport is correct. |
New:
Reporting the base class is misleading because the error occurs in the derived class Jenkins reports: |unchanged|[/home/users/host/gitlab/project/source/frameworks/broadcast/IMUtils/data/DataClassBase.h|http://10.114.170.101:8060/job/HDData%20Gen6/9/cppcheckResult/source.18]|[99|http://10.114.170.101:8060/job/HDData%20Gen6/9/cppcheckResult/source.18#89]|style|missingOverride|false|The function 'ChangeInfo' overrides a function in a base class but is not marked with a 'override' specifier.| cppcheck-htmlreport reports: |[/home/users/host/gitlab/project/source/apps/av/QtCommon/src/system/data/AVStatusIconInfo.h|file:///home/jeremy/Desktop/report/4.html]| |[26|file:///home/jeremy/Desktop/report/4.html#line-26]|missingOverride| |style|The function 'ChangeInfo' overrides a function in a base class but is not marked with a 'override' specifier.| The xml file created by cppcheck shows <error id="missingOverride" severity="style" msg="The function 'ChangeInfo' overrides a function in a base class but is not marked with a 'override' specifier." verbose="The function 'ChangeInfo' overrides a function in a base class but is not marked with a 'override' specifier."> <location file="/home/users/host/gitlab/project/source/apps/av/QtCommon/src/system/data/AVStatusIconInfo.h" line="26" info="Function in derived class"/> <location file="/home/users/host/gitlab/project/source/frameworks/broadcast/IMUtils/data/DataClassBase.h" line="99" info="Virtual function in base class"/> </error> The behavior of the cppcheck plugin is incorrect, and the behavior of cppcheck-htmlreport is correct. |