fix cppcheck for 1.89+, and add column support (#3030)

* fix cppcheck for 1.89+, and add column support

In cppcheck 1.89 the output changed to be more like GCC. This commit
forces any version of cppcheck to output in that same format. This also
allows for ALE to pick up the linter's column information

* Add parameters to tests. Vader passes.

* Fix c cppcheck for v1.89
This commit is contained in:
tsjordan-eng
2020-08-06 13:50:44 -06:00
committed by GitHub
parent 4044196047
commit f17b74679f
6 changed files with 44 additions and 17 deletions

View File

@@ -10,19 +10,29 @@ Execute(Basic errors should be handled by cppcheck):
AssertEqual
\ [
\ {
\ 'lnum': 5,
\ 'lnum': 974,
\ 'col' : 6,
\ 'type': 'E',
\ 'text': 'Array ''a[10]'' accessed at index 10, which is out of bounds',
\ 'sub_type': '',
\ 'text': 'Array ''n[3]'' accessed at index 3, which is out of bounds.',
\ 'code': 'arrayIndexOutOfBounds'
\ },
\ {
\ 'lnum': 7,
\ 'lnum': 1185,
\ 'col' : 10,
\ 'type': 'W',
\ 'text': 'Some other problem',
\ 'sub_type': 'style',
\ 'text': 'The scope of the variable ''indxStr'' can be reduced.',
\ 'code': 'variableScope'
\ },
\ ],
\ ale#handlers#cppcheck#HandleCppCheckFormat(bufnr(''), [
\ '[test.cpp:5]: (error) Array ''a[10]'' accessed at index 10, which is out of bounds',
\ '[test.cpp:7]: (warning) Some other problem',
\ 'test.cpp:974:6: error: Array ''n[3]'' accessed at index 3, which is out of bounds. [arrayIndexOutOfBounds]\',
\ ' n[3]=3;',
\ ' ^',
\ 'test.cpp:1185:10: style: The scope of the variable ''indxStr'' can be reduced. [variableScope]\',
\ ' char indxStr[16];',
\ ' ^',
\ ])
Execute(Problems from other files should be ignored by cppcheck):
@@ -32,5 +42,7 @@ Execute(Problems from other files should be ignored by cppcheck):
\ [
\ ],
\ ale#handlers#cppcheck#HandleCppCheckFormat(bufnr(''), [
\ '[bar.cpp:5]: (error) Array ''a[10]'' accessed at index 10, which is out of bounds',
\ 'bar.cpp:974:6: error: Array ''n[3]'' accessed at index 3, which is out of bounds. [arrayIndexOutOfBounds]\',
\ ' n[3]=3;',
\ ' ^',
\ ])