summaryrefslogtreecommitdiff
path: root/dev-util/clazy/files/clazy-1.10-gcc-build.patch
diff options
context:
space:
mode:
Diffstat (limited to 'dev-util/clazy/files/clazy-1.10-gcc-build.patch')
-rw-r--r--dev-util/clazy/files/clazy-1.10-gcc-build.patch44
1 files changed, 44 insertions, 0 deletions
diff --git a/dev-util/clazy/files/clazy-1.10-gcc-build.patch b/dev-util/clazy/files/clazy-1.10-gcc-build.patch
new file mode 100644
index 000000000000..647c254b644d
--- /dev/null
+++ b/dev-util/clazy/files/clazy-1.10-gcc-build.patch
@@ -0,0 +1,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