1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
|
https://invent.kde.org/sdk/clazy/-/commit/b74c8729b7b71528c1528579435cda7fdb5d31b4
From: Sergio Martins <smartins@kde.org>
Date: Thu, 2 Dec 2021 11:05:51 +0000
Subject: [PATCH] Fix build with some newer gcc complaining about deleted Lexer
--- a/src/SourceCompatibilityHelpers.h
+++ b/src/SourceCompatibilityHelpers.h
@@ -117,17 +117,13 @@ inline auto getBuffer(const clang::SourceManager &sm, clang::FileID id, bool *in
}
#if LLVM_VERSION_MAJOR >= 12
-inline clang::Lexer getLexer(clang::FileID id, llvm::Optional<llvm::MemoryBufferRef> inputFile,
- const clang::SourceManager &sm, const clang::LangOptions &lo)
-{
- return clang::Lexer(id, inputFile.getValue(), sm, lo);
-}
+
+#define GET_LEXER(id, inputFile, sm, lo) \
+clang::Lexer(id, inputFile.getValue(), sm, lo)
+
#else
-inline clang::Lexer getLexer(clang::FileID id, const llvm::MemoryBuffer *inputFile,
- const clang::SourceManager &sm, const clang::LangOptions &lo)
-{
- return clang::Lexer(id, inputFile, sm, lo);
-}
+#define GET_LEXER(id, inputFile, sm, lo) \
+clang::Lexer(id, inputFile.getValue(), sm, lo)
#endif
inline bool isFinal(const clang::CXXRecordDecl *record)
--- a/src/SuppressionManager.cpp
+++ b/src/SuppressionManager.cpp
@@ -91,7 +91,7 @@ void SuppressionManager::parseFile(FileID id, const SourceManager &sm, const cla
return;
}
- auto lexer = clazy::getLexer(id, buffer, sm, lo);
+ auto lexer = GET_LEXER(id, buffer, sm, lo);
lexer.SetCommentRetentionState(true);
Token token;
GitLab
|