diff --git a/srcpkgs/clazy/patches/llvm10.patch b/srcpkgs/clazy/patches/llvm10.patch new file mode 100644 index 00000000000..289deaabbe4 --- /dev/null +++ b/srcpkgs/clazy/patches/llvm10.patch @@ -0,0 +1,72 @@ +From df41bd29433937111edca3654a7beb11ec765029 Mon Sep 17 00:00:00 2001 +From: Johannes Ziegenbalg +Date: Fri, 27 Mar 2020 14:18:32 +0100 +Subject: [PATCH] Fix build issues using llvm 10.0.0 + +--- + CMakeLists.txt | 2 +- + src/ClazyStandaloneMain.cpp | 10 ++++++++++ + src/checks/level0/qstring-ref.cpp | 4 ++++ + 3 files changed, 15 insertions(+), 1 deletion(-) + +diff --git a/CMakeLists.txt b/CMakeLists.txt +index f1463cfe..a30813f8 100644 +--- CMakeLists.txt ++++ CMakeLists.txt +@@ -53,7 +53,7 @@ if(MSVC) + # disable trigger-happy warnings from Clang/LLVM headers + set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} /wd4267 /wd4244 /wd4291 /wd4800 /wd4141 /wd4146 /wd4251") + elseif(CMAKE_COMPILER_IS_GNUCXX OR CMAKE_CXX_COMPILER_ID MATCHES "Clang") +- set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11 -fno-common -Woverloaded-virtual -Wcast-qual -fno-strict-aliasing -pedantic -Wno-long-long -Wall -W -Wno-unused-parameter -Wwrite-strings -fno-exceptions -fno-rtti") ++ set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++14 -fno-common -Woverloaded-virtual -Wcast-qual -fno-strict-aliasing -pedantic -Wno-long-long -Wall -W -Wno-unused-parameter -Wwrite-strings -fno-exceptions -fno-rtti") + endif() + + set(CMAKE_MODULE_LINKER_FLAGS "${CMAKE_MODULE_LINKER_FLAGS} -Wl,-flat_namespace -Wl,-undefined -Wl,suppress") +diff --git a/src/ClazyStandaloneMain.cpp b/src/ClazyStandaloneMain.cpp +index aada1895..6baae329 100644 +--- src/ClazyStandaloneMain.cpp ++++ src/ClazyStandaloneMain.cpp +@@ -93,7 +93,11 @@ class ClazyToolActionFactory + { + } + ++#if LLVM_VERSION_MAJOR >= 10 ++ std::unique_ptr create() override ++#else + FrontendAction *create() override ++#endif + { + ClazyContext::ClazyOptions options = ClazyContext::ClazyOption_None; + +@@ -116,9 +120,15 @@ class ClazyToolActionFactory + options |= ClazyContext::ClazyOption_IgnoreIncludedFiles; + + // TODO: We need to agregate the fixes with previous run ++#if LLVM_VERSION_MAJOR >= 10 ++ return std::make_unique(s_checks.getValue(), s_headerFilter.getValue(), ++ s_ignoreDirs.getValue(), s_exportFixes.getValue(), ++ m_paths, options); ++#else + return new ClazyStandaloneASTAction(s_checks.getValue(), s_headerFilter.getValue(), + s_ignoreDirs.getValue(), s_exportFixes.getValue(), + m_paths, options); ++#endif + } + std::vector m_paths; + }; +diff --git a/src/checks/level0/qstring-ref.cpp b/src/checks/level0/qstring-ref.cpp +index d1d8a4ea..ec9e8901 100644 +--- src/checks/level0/qstring-ref.cpp ++++ src/checks/level0/qstring-ref.cpp +@@ -117,7 +117,11 @@ static bool containsChild(Stmt *s, Stmt *target) + return true; + + if (auto mte = dyn_cast(s)) { ++#if LLVM_VERSION_MAJOR >= 10 ++ return containsChild(mte->getSubExpr(), target); ++#else + return containsChild(mte->getTemporary(), target); ++#endif + } else if (auto ice = dyn_cast(s)) { + return containsChild(ice->getSubExpr(), target); + } else if (auto bte = dyn_cast(s)) { diff --git a/srcpkgs/clazy/template b/srcpkgs/clazy/template index f7f790395e6..d9846d5b41e 100644 --- a/srcpkgs/clazy/template +++ b/srcpkgs/clazy/template @@ -1,7 +1,7 @@ # Template file for 'clazy' pkgname=clazy version=1.6 -revision=1 +revision=2 build_style=cmake hostmakedepends="python" makedepends="clang llvm"