2017-09-13 22:30:32 +00:00
|
|
|
Before:
|
|
|
|
runtime ale_linters/cuda/nvcc.vim
|
|
|
|
|
|
|
|
After:
|
|
|
|
call ale#linter#Reset()
|
|
|
|
|
2017-09-07 18:23:58 +00:00
|
|
|
Execute(The cuda nvcc handler should parse errors from multiple files for NVCC 8.0):
|
|
|
|
AssertEqual
|
|
|
|
\ [
|
|
|
|
\ {
|
|
|
|
\ 'lnum': 1,
|
|
|
|
\ 'type': 'E',
|
|
|
|
\ 'text': 'this declaration has no storage class or type specifier',
|
2017-09-13 22:30:32 +00:00
|
|
|
\ 'filename': has('win32')
|
|
|
|
\ ? 'C:\tmp\cudatest\test.cu'
|
|
|
|
\ : '/tmp/cudatest/test.cu',
|
2017-09-07 18:23:58 +00:00
|
|
|
\ },
|
|
|
|
\ {
|
|
|
|
\ 'lnum': 2,
|
|
|
|
\ 'type': 'E',
|
|
|
|
\ 'text': 'attribute "global" does not apply here',
|
2017-09-13 22:30:32 +00:00
|
|
|
\ 'filename': has('win32')
|
|
|
|
\ ? 'C:\tmp\cudatest\common.h'
|
|
|
|
\ : '/tmp/cudatest/common.h',
|
2017-09-07 18:23:58 +00:00
|
|
|
\ },
|
|
|
|
\ {
|
|
|
|
\ 'lnum': 2,
|
|
|
|
\ 'type': 'E',
|
|
|
|
\ 'text': 'expected a ";"',
|
2017-09-13 22:30:32 +00:00
|
|
|
\ 'filename': has('win32')
|
|
|
|
\ ? 'C:\tmp\cudatest\common.h'
|
|
|
|
\ : '/tmp/cudatest/common.h',
|
2017-09-07 18:23:58 +00:00
|
|
|
\ },
|
|
|
|
\ ],
|
|
|
|
\ ale_linters#cuda#nvcc#HandleNVCCFormat(0, [
|
|
|
|
\ '/tmp/cudatest/test.cu(1): error: this declaration has no storage class or type specifier',
|
|
|
|
\ '/tmp/cudatest/common.h(2): error: attribute "global" does not apply here',
|
|
|
|
\ '/tmp/cudatest/common.h(2): error: expected a ";"',
|
|
|
|
\ 'At end of source: warning: parsing restarts here after previous syntax error',
|
|
|
|
\ '3 errors detected in the compilation of "/tmp/tmpxft_00003a9f_00000000-7_test.cpp1.ii".',
|
|
|
|
\ ])
|