forked from qt-creator/qt-creator
ClangCodeModel: Enable clangd's new "dirty headers" flag, if possible
This feature will be availabe with LLVM 14, see https://reviews.llvm.org/D95046. Task-number: QTCREATORBUG-26810 Change-Id: I0a6797a836c56f5b72cca34be8f2d3edf8ac7359 Reviewed-by: <github-actions-qt-creator@cristianadam.eu> Reviewed-by: Christian Stenger <christian.stenger@qt.io>
This commit is contained in:
@@ -613,6 +613,8 @@ static BaseClientInterface *clientInterface(Project *project, const Utils::FileP
|
||||
cmd.addArg("--compile-commands-dir=" + jsonDbDir.toString());
|
||||
if (clangdLogServer().isDebugEnabled())
|
||||
cmd.addArgs({"--log=verbose", "--pretty"});
|
||||
if (settings.clangdVersion() >= QVersionNumber(14))
|
||||
cmd.addArg("--use-dirty-headers");
|
||||
const auto interface = new StdIOClientInterface;
|
||||
interface->setCommandLine(cmd);
|
||||
return interface;
|
||||
|
||||
@@ -335,7 +335,7 @@ ClangdSettings::ClangdSettings()
|
||||
|
||||
bool ClangdSettings::useClangd() const
|
||||
{
|
||||
return m_data.useClangd && clangdVersion(clangdFilePath()) >= QVersionNumber(13);
|
||||
return m_data.useClangd && clangdVersion() >= QVersionNumber(13);
|
||||
}
|
||||
|
||||
void ClangdSettings::setDefaultClangdPath(const FilePath &filePath)
|
||||
|
||||
@@ -147,6 +147,7 @@ public:
|
||||
Data data() const { return m_data; }
|
||||
|
||||
static QVersionNumber clangdVersion(const Utils::FilePath &clangdFilePath);
|
||||
QVersionNumber clangdVersion() const { return clangdVersion(clangdFilePath()); }
|
||||
|
||||
#ifdef WITH_TESTS
|
||||
static void setUseClangd(bool use);
|
||||
|
||||
Reference in New Issue
Block a user