Before: Save b:ale_c_flawfinder_error_severity runtime ale_linters/c/flawfinder.vim After: Restore call ale#linter#Reset() Execute(The Flawfinder handler should work): AssertEqual \ [ \ { \ 'lnum': 31, \ 'col': 4, \ 'type': 'W', \ 'text': "(buffer) strncpy: Easily used incorrectly", \ }, \ ], \ ale#handlers#flawfinder#HandleFlawfinderFormat(347, [ \ ':31:4: [1] (buffer) strncpy:Easily used incorrectly', \ 'foo', \ 'bar', \ 'baz', \ ]) Execute(The Flawfinder error severity level should be configurable): let b:ale_c_flawfinder_error_severity = 2 AssertEqual \ [ \ { \ 'lnum': 12, \ 'col': 4, \ 'type': 'E', \ 'text': "(buffer) char: Statically-sized arrays can be bad", \ }, \ { \ 'lnum': 31, \ 'col': 4, \ 'type': 'W', \ 'text': "(buffer) strncpy: Easily used incorrectly", \ }, \ ], \ ale#handlers#flawfinder#HandleFlawfinderFormat(bufnr(''), [ \ ':12:4: [2] (buffer) char:Statically-sized arrays can be bad', \ ':31:4: [1] (buffer) strncpy:Easily used incorrectly', \ ])