Fix clang-tidy ignoring compile_commands.json

This commit is contained in:
fenuks
2021-01-22 01:01:26 +01:00
parent a1e6df987c
commit 65824feef3
2 changed files with 6 additions and 5 deletions

View File

@@ -23,11 +23,13 @@ function! ale_linters#cpp#clangtidy#GetCommand(buffer, output) abort
let l:options = ale#Var(a:buffer, 'cpp_clangtidy_options') let l:options = ale#Var(a:buffer, 'cpp_clangtidy_options')
let l:cflags = ale#c#GetCFlags(a:buffer, a:output) let l:cflags = ale#c#GetCFlags(a:buffer, a:output)
let l:options .= !empty(l:options) ? ale#Pad(l:cflags) : l:cflags let l:options .= !empty(l:options) ? ale#Pad(l:cflags) : l:cflags
endif
" Tell clang-tidy a .h header with a C++ filetype in Vim is a C++ file. " Tell clang-tidy a .h header with a C++ filetype in Vim is a C++ file
if expand('#' . a:buffer) =~# '\.h$' " only when compile-commands.json file is not there. Adding these
let l:options .= !empty(l:options) ? ' -x c++' : '-x c++' " flags makes clang-tidy completely ignore compile commmands.
if expand('#' . a:buffer) =~# '\.h$'
let l:options .= !empty(l:options) ? ' -x c++' : '-x c++'
endif
endif endif
" Get the options to pass directly to clang-tidy " Get the options to pass directly to clang-tidy

View File

@@ -68,7 +68,6 @@ Execute(The build directory should be used for header files):
\ ale#Escape('clang-tidy') \ ale#Escape('clang-tidy')
\ . ' -checks=' . ale#Escape('*') . ' %s' \ . ' -checks=' . ale#Escape('*') . ' %s'
\ . ' -p ' . ale#Escape('/foo/bar') \ . ' -p ' . ale#Escape('/foo/bar')
\ . ' -- -x c++'
call ale#test#SetFilename('test.hpp') call ale#test#SetFilename('test.hpp')