public inbox for git-commits@fedoraproject.org
help / color / mirror / Atom feed
* [rpms/clang17] rawhide: Orphaned for 6+ weeks
@ 2026-06-26  1:48 Orphaned Packages Process
  0 siblings, 0 replies; only message in thread
From: Orphaned Packages Process @ 2026-06-26  1:48 UTC (permalink / raw)
  To: git-commits

A new commit has been pushed.

Repo   : rpms/clang17
Branch : rawhide
Commit : 8df06d934aa1d3b8d404f32962b4bc67151cadfc
Author : Orphaned Packages Process <packaging-reports@fedoraproject.org>
Date   : 2026-06-25T20:48:53-05:00
Stats  : +1/-2796 in 19 file(s)
URL    : https://src.fedoraproject.org/rpms/clang17/c/8df06d934aa1d3b8d404f32962b4bc67151cadfc?branch=rawhide

Log:
Orphaned for 6+ weeks

---
diff --git a/.gitignore b/.gitignore
deleted file mode 100644
index 7def6ed..0000000
--- a/.gitignore
+++ /dev/null
@@ -1,4 +0,0 @@
-/clang-17.0.6.src.tar.xz
-/clang-17.0.6.src.tar.xz.sig
-/clang-tools-extra-17.0.6.src.tar.xz
-/clang-tools-extra-17.0.6.src.tar.xz.sig

diff --git a/0001-Clang-Defer-the-instantiation-of-explicit-specifier-.patch b/0001-Clang-Defer-the-instantiation-of-explicit-specifier-.patch
deleted file mode 100644
index 69fb3ba..0000000
--- a/0001-Clang-Defer-the-instantiation-of-explicit-specifier-.patch
+++ /dev/null
@@ -1,260 +0,0 @@
-From fabda7312b91a768617f4ff1fabe0e1cc7d9131c Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?=E5=88=98=E9=9B=A8=E5=9F=B9?= <liuyupei951018@hotmail.com>
-Date: Wed, 1 Nov 2023 21:45:48 +0800
-Subject: [PATCH] [Clang] Defer the instantiation of explicit-specifier until
- constraint checking completes (#70548)
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-
-Modifications:
-
-- Skip the instantiation of the explicit-specifier during Decl
-substitution if we are deducing template arguments and the
-explicit-specifier is value dependent.
-
-- Instantiate the explicit-specifier after the constraint checking
-completes.
-
-- Make `instantiateExplicitSpecifier` a member function in order to
-instantiate the explicit-specifier in different stages.
-
-This PR doesn’t defer the instantiation of the explicit specifier for
-deduction guides, because I’m not familiar with deduction guides yet.
-I’ll dig into it after this PR.
-
-According to my local test, GCC 13 tuple works with this PR.
-
-Fixes #59827.
-
----------
-
-Co-authored-by: Erich Keane <ekeane@nvidia.com>
-(cherry picked from commit 128b3b61fe6768c724975fd1df2be0abec848cf6)
----
- clang/docs/ReleaseNotes.rst                   |  4 ++
- clang/include/clang/Sema/Sema.h               |  3 ++
- clang/lib/Sema/SemaTemplateDeduction.cpp      | 53 +++++++++++++++++++
- .../lib/Sema/SemaTemplateInstantiateDecl.cpp  | 40 +++++++++-----
- .../SemaCXX/cxx2a-explicit-bool-deferred.cpp  | 31 +++++++++++
- 5 files changed, 117 insertions(+), 14 deletions(-)
- create mode 100644 clang/test/SemaCXX/cxx2a-explicit-bool-deferred.cpp
-
-diff --git a/clang/docs/ReleaseNotes.rst b/clang/docs/ReleaseNotes.rst
-index a1143e14562e..8e3b94ca2017 100644
---- a/clang/docs/ReleaseNotes.rst
-+++ b/clang/docs/ReleaseNotes.rst
-@@ -857,6 +857,10 @@ Bug Fixes to C++ Support
-   (`#64172 <https://github.com/llvm/llvm-project/issues/64172>`_) and
-   (`#64723 <https://github.com/llvm/llvm-project/issues/64723>`_).
- 
-+- Clang now defers the instantiation of explicit specifier until constraint checking
-+  completes (except deduction guides). Fixes:
-+  (`#59827 <https://github.com/llvm/llvm-project/issues/59827>`_)
-+
- Bug Fixes to AST Handling
- ^^^^^^^^^^^^^^^^^^^^^^^^^
- 
-diff --git a/clang/include/clang/Sema/Sema.h b/clang/include/clang/Sema/Sema.h
-index 3752a23faa85..b2ab6d0f8445 100644
---- a/clang/include/clang/Sema/Sema.h
-+++ b/clang/include/clang/Sema/Sema.h
-@@ -10293,6 +10293,9 @@ public:
-                                   const CXXConstructorDecl *Tmpl,
-                             const MultiLevelTemplateArgumentList &TemplateArgs);
- 
-+  ExplicitSpecifier instantiateExplicitSpecifier(
-+      const MultiLevelTemplateArgumentList &TemplateArgs, ExplicitSpecifier ES);
-+
-   NamedDecl *FindInstantiatedDecl(SourceLocation Loc, NamedDecl *D,
-                           const MultiLevelTemplateArgumentList &TemplateArgs,
-                           bool FindingInstantiatedContext = false);
-diff --git a/clang/lib/Sema/SemaTemplateDeduction.cpp b/clang/lib/Sema/SemaTemplateDeduction.cpp
-index 31ea7be2975e..58dd1b783bac 100644
---- a/clang/lib/Sema/SemaTemplateDeduction.cpp
-+++ b/clang/lib/Sema/SemaTemplateDeduction.cpp
-@@ -3546,6 +3546,48 @@ static unsigned getPackIndexForParam(Sema &S,
-   llvm_unreachable("parameter index would not be produced from template");
- }
- 
-+// if `Specialization` is a `CXXConstructorDecl` or `CXXConversionDecl`,
-+// we'll try to instantiate and update its explicit specifier after constraint
-+// checking.
-+static Sema::TemplateDeductionResult instantiateExplicitSpecifierDeferred(
-+    Sema &S, FunctionDecl *Specialization,
-+    const MultiLevelTemplateArgumentList &SubstArgs,
-+    TemplateDeductionInfo &Info, FunctionTemplateDecl *FunctionTemplate,
-+    ArrayRef<TemplateArgument> DeducedArgs) {
-+  auto GetExplicitSpecifier = [](FunctionDecl *D) {
-+    return isa<CXXConstructorDecl>(D)
-+               ? cast<CXXConstructorDecl>(D)->getExplicitSpecifier()
-+               : cast<CXXConversionDecl>(D)->getExplicitSpecifier();
-+  };
-+  auto SetExplicitSpecifier = [](FunctionDecl *D, ExplicitSpecifier ES) {
-+    isa<CXXConstructorDecl>(D)
-+        ? cast<CXXConstructorDecl>(D)->setExplicitSpecifier(ES)
-+        : cast<CXXConversionDecl>(D)->setExplicitSpecifier(ES);
-+  };
-+
-+  ExplicitSpecifier ES = GetExplicitSpecifier(Specialization);
-+  Expr *ExplicitExpr = ES.getExpr();
-+  if (!ExplicitExpr)
-+    return Sema::TDK_Success;
-+  if (!ExplicitExpr->isValueDependent())
-+    return Sema::TDK_Success;
-+
-+  Sema::InstantiatingTemplate Inst(
-+      S, Info.getLocation(), FunctionTemplate, DeducedArgs,
-+      Sema::CodeSynthesisContext::DeducedTemplateArgumentSubstitution, Info);
-+  if (Inst.isInvalid())
-+    return Sema::TDK_InstantiationDepth;
-+  Sema::SFINAETrap Trap(S);
-+  const ExplicitSpecifier InstantiatedES =
-+      S.instantiateExplicitSpecifier(SubstArgs, ES);
-+  if (InstantiatedES.isInvalid() || Trap.hasErrorOccurred()) {
-+    Specialization->setInvalidDecl(true);
-+    return Sema::TDK_SubstitutionFailure;
-+  }
-+  SetExplicitSpecifier(Specialization, InstantiatedES);
-+  return Sema::TDK_Success;
-+}
-+
- /// Finish template argument deduction for a function template,
- /// checking the deduced template arguments for completeness and forming
- /// the function template specialization.
-@@ -3675,6 +3717,17 @@ Sema::TemplateDeductionResult Sema::FinishTemplateArgumentDeduction(
-     }
-   }
- 
-+  // We skipped the instantiation of the explicit-specifier during the
-+  // substitution of `FD` before. So, we try to instantiate it back if
-+  // `Specialization` is either a constructor or a conversion function.
-+  if (isa<CXXConstructorDecl, CXXConversionDecl>(Specialization)) {
-+    if (TDK_Success != instantiateExplicitSpecifierDeferred(
-+                           *this, Specialization, SubstArgs, Info,
-+                           FunctionTemplate, DeducedArgs)) {
-+      return TDK_SubstitutionFailure;
-+    }
-+  }
-+
-   if (OriginalCallArgs) {
-     // C++ [temp.deduct.call]p4:
-     //   In general, the deduction process attempts to find template argument
-diff --git a/clang/lib/Sema/SemaTemplateInstantiateDecl.cpp b/clang/lib/Sema/SemaTemplateInstantiateDecl.cpp
-index f78d46f59503..a40510ce5f2c 100644
---- a/clang/lib/Sema/SemaTemplateInstantiateDecl.cpp
-+++ b/clang/lib/Sema/SemaTemplateInstantiateDecl.cpp
-@@ -555,18 +555,16 @@ static void instantiateDependentAMDGPUFlatWorkGroupSizeAttr(
-   S.addAMDGPUFlatWorkGroupSizeAttr(New, Attr, MinExpr, MaxExpr);
- }
- 
--static ExplicitSpecifier
--instantiateExplicitSpecifier(Sema &S,
--                             const MultiLevelTemplateArgumentList &TemplateArgs,
--                             ExplicitSpecifier ES, FunctionDecl *New) {
-+ExplicitSpecifier Sema::instantiateExplicitSpecifier(
-+    const MultiLevelTemplateArgumentList &TemplateArgs, ExplicitSpecifier ES) {
-   if (!ES.getExpr())
-     return ES;
-   Expr *OldCond = ES.getExpr();
-   Expr *Cond = nullptr;
-   {
-     EnterExpressionEvaluationContext Unevaluated(
--        S, Sema::ExpressionEvaluationContext::ConstantEvaluated);
--    ExprResult SubstResult = S.SubstExpr(OldCond, TemplateArgs);
-+        *this, Sema::ExpressionEvaluationContext::ConstantEvaluated);
-+    ExprResult SubstResult = SubstExpr(OldCond, TemplateArgs);
-     if (SubstResult.isInvalid()) {
-       return ExplicitSpecifier::Invalid();
-     }
-@@ -574,7 +572,7 @@ instantiateExplicitSpecifier(Sema &S,
-   }
-   ExplicitSpecifier Result(Cond, ES.getKind());
-   if (!Cond->isTypeDependent())
--    S.tryResolveExplicitSpecifier(Result);
-+    tryResolveExplicitSpecifier(Result);
-   return Result;
- }
- 
-@@ -2065,8 +2063,8 @@ Decl *TemplateDeclInstantiator::VisitFunctionDecl(
- 
-   ExplicitSpecifier InstantiatedExplicitSpecifier;
-   if (auto *DGuide = dyn_cast<CXXDeductionGuideDecl>(D)) {
--    InstantiatedExplicitSpecifier = instantiateExplicitSpecifier(
--        SemaRef, TemplateArgs, DGuide->getExplicitSpecifier(), DGuide);
-+    InstantiatedExplicitSpecifier = SemaRef.instantiateExplicitSpecifier(
-+        TemplateArgs, DGuide->getExplicitSpecifier());
-     if (InstantiatedExplicitSpecifier.isInvalid())
-       return nullptr;
-   }
-@@ -2440,11 +2438,25 @@ Decl *TemplateDeclInstantiator::VisitCXXMethodDecl(
-     }
-   }
- 
--  ExplicitSpecifier InstantiatedExplicitSpecifier =
--      instantiateExplicitSpecifier(SemaRef, TemplateArgs,
--                                   ExplicitSpecifier::getFromDecl(D), D);
--  if (InstantiatedExplicitSpecifier.isInvalid())
--    return nullptr;
-+  auto InstantiatedExplicitSpecifier = ExplicitSpecifier::getFromDecl(D);
-+  // deduction guides need this
-+  const bool CouldInstantiate =
-+      InstantiatedExplicitSpecifier.getExpr() == nullptr ||
-+      !InstantiatedExplicitSpecifier.getExpr()->isValueDependent();
-+
-+  // Delay the instantiation of the explicit-specifier until after the
-+  // constraints are checked during template argument deduction.
-+  if (CouldInstantiate ||
-+      SemaRef.CodeSynthesisContexts.back().Kind !=
-+          Sema::CodeSynthesisContext::DeducedTemplateArgumentSubstitution) {
-+    InstantiatedExplicitSpecifier = SemaRef.instantiateExplicitSpecifier(
-+        TemplateArgs, InstantiatedExplicitSpecifier);
-+
-+    if (InstantiatedExplicitSpecifier.isInvalid())
-+      return nullptr;
-+  } else {
-+    InstantiatedExplicitSpecifier.setKind(ExplicitSpecKind::Unresolved);
-+  }
- 
-   // Implicit destructors/constructors created for local classes in
-   // DeclareImplicit* (see SemaDeclCXX.cpp) might not have an associated TSI.
-diff --git a/clang/test/SemaCXX/cxx2a-explicit-bool-deferred.cpp b/clang/test/SemaCXX/cxx2a-explicit-bool-deferred.cpp
-new file mode 100644
-index 000000000000..4d667008f2e2
---- /dev/null
-+++ b/clang/test/SemaCXX/cxx2a-explicit-bool-deferred.cpp
-@@ -0,0 +1,31 @@
-+// RUN: %clang_cc1 -fsyntax-only -verify -std=c++2a %s
-+
-+template <typename T1, typename T2> struct is_same {
-+  static constexpr bool value = false;
-+};
-+
-+template <typename T> struct is_same<T, T> {
-+  static constexpr bool value = true;
-+};
-+
-+template <class T, class U>
-+concept SameHelper = is_same<T, U>::value;
-+template <class T, class U>
-+concept same_as = SameHelper<T, U> && SameHelper<U, T>;
-+
-+namespace deferred_instantiation {
-+template <class X> constexpr X do_not_instantiate() { return nullptr; }
-+
-+struct T {
-+  template <same_as<float> X> explicit(do_not_instantiate<X>()) T(X) {}
-+
-+  T(int) {}
-+};
-+
-+T t(5);
-+// expected-error@17{{cannot initialize}}
-+// expected-note@20{{in instantiation of function template specialization}}
-+// expected-note@30{{while substituting deduced template arguments}}
-+// expected-note@30{{in instantiation of function template specialization}}
-+T t2(5.0f);
-+} // namespace deferred_instantiation
--- 
-2.43.0
-

diff --git a/0001-Clang-Fix-build-with-GCC-14-on-ARM.patch b/0001-Clang-Fix-build-with-GCC-14-on-ARM.patch
deleted file mode 100644
index d916586..0000000
--- a/0001-Clang-Fix-build-with-GCC-14-on-ARM.patch
+++ /dev/null
@@ -1,65 +0,0 @@
-From bd2e848f15c0f25231126eb10cb0ab350717dfc0 Mon Sep 17 00:00:00 2001
-From: Nikita Popov <npopov@redhat.com>
-Date: Fri, 19 Jan 2024 12:09:13 +0100
-Subject: [PATCH] [Clang] Fix build with GCC 14 on ARM
-
-GCC 14 defines `__arm_streaming` as a macro expanding to
-`[[arm::streaming]]`. Due to the nested macro use, this gets
-expanded prior to concatenation.
-
-It doesn't look like C++ has a really clean way to prevent
-macro expansion. The best I have found is to use `EMPTY ## X` where
-`EMPTY` is an empty macro argument, so this is the hack I'm
-implementing here.
-
-Fixes https://github.com/llvm/llvm-project/issues/78691.
----
- clang/include/clang/Basic/TokenKinds.def  | 3 ++-
- clang/include/clang/Basic/TokenKinds.h    | 2 +-
- clang/utils/TableGen/ClangAttrEmitter.cpp | 2 +-
- 3 files changed, 4 insertions(+), 3 deletions(-)
-
-diff --git a/clang/include/clang/Basic/TokenKinds.def b/clang/include/clang/Basic/TokenKinds.def
-index ef0dad0f2dcd..3add13c079f3 100644
---- a/clang/include/clang/Basic/TokenKinds.def
-+++ b/clang/include/clang/Basic/TokenKinds.def
-@@ -752,8 +752,9 @@ KEYWORD(__builtin_available              , KEYALL)
- KEYWORD(__builtin_sycl_unique_stable_name, KEYSYCL)
- 
- // Keywords defined by Attr.td.
-+// The "EMPTY ## X" is used to prevent early macro-expansion of the keyword.
- #ifndef KEYWORD_ATTRIBUTE
--#define KEYWORD_ATTRIBUTE(X) KEYWORD(X, KEYALL)
-+#define KEYWORD_ATTRIBUTE(X, EMPTY) KEYWORD(EMPTY ## X, KEYALL)
- #endif
- #include "clang/Basic/AttrTokenKinds.inc"
- 
-diff --git a/clang/include/clang/Basic/TokenKinds.h b/clang/include/clang/Basic/TokenKinds.h
-index e4857405bc7f..ff117bd5afc5 100644
---- a/clang/include/clang/Basic/TokenKinds.h
-+++ b/clang/include/clang/Basic/TokenKinds.h
-@@ -109,7 +109,7 @@ bool isPragmaAnnotation(TokenKind K);
- 
- inline constexpr bool isRegularKeywordAttribute(TokenKind K) {
-   return (false
--#define KEYWORD_ATTRIBUTE(X) || (K == tok::kw_##X)
-+#define KEYWORD_ATTRIBUTE(X, ...) || (K == tok::kw_##X)
- #include "clang/Basic/AttrTokenKinds.inc"
-   );
- }
-diff --git a/clang/utils/TableGen/ClangAttrEmitter.cpp b/clang/utils/TableGen/ClangAttrEmitter.cpp
-index b5813c6abc2b..79db17501b64 100644
---- a/clang/utils/TableGen/ClangAttrEmitter.cpp
-+++ b/clang/utils/TableGen/ClangAttrEmitter.cpp
-@@ -3430,7 +3430,7 @@ void EmitClangAttrTokenKinds(RecordKeeper &Records, raw_ostream &OS) {
-                      "RegularKeyword attributes with arguments are not "
-                      "yet supported");
-         OS << "KEYWORD_ATTRIBUTE("
--           << S.getSpellingRecord().getValueAsString("Name") << ")\n";
-+           << S.getSpellingRecord().getValueAsString("Name") << ", )\n";
-       }
-   OS << "#undef KEYWORD_ATTRIBUTE\n";
- }
--- 
-2.43.0
-

diff --git a/0001-Driver-Add-a-gcc-equivalent-triple-to-the-list-of-tr.patch b/0001-Driver-Add-a-gcc-equivalent-triple-to-the-list-of-tr.patch
deleted file mode 100644
index 6c94b4d..0000000
--- a/0001-Driver-Add-a-gcc-equivalent-triple-to-the-list-of-tr.patch
+++ /dev/null
@@ -1,59 +0,0 @@
-From d68a5a7817dc0d43853d8b84c9185dc24338664f Mon Sep 17 00:00:00 2001
-From: Tom Stellard <tstellar@redhat.com>
-Date: Wed, 6 Oct 2021 05:32:44 +0000
-Subject: [PATCH] Driver: Add a gcc equivalent triple to the list of triples to
- search
-
-There are some gcc triples, like x86_64-redhat-linux, that provide the
-same behavior as a clang triple with a similar name (e.g.
-x86_64-redhat-linux-gnu).  When searching for a gcc install, also search
-for a gcc equivalent triple if one exists.
-
-Differential Revision: https://reviews.llvm.org/D111207
----
- clang/lib/Driver/ToolChains/Gnu.cpp | 22 ++++++++++++++++++++++
- 1 file changed, 22 insertions(+)
-
-diff --git a/clang/lib/Driver/ToolChains/Gnu.cpp b/clang/lib/Driver/ToolChains/Gnu.cpp
-index fe5bda5c6605..fd4a7f72be14 100644
---- a/clang/lib/Driver/ToolChains/Gnu.cpp
-+++ b/clang/lib/Driver/ToolChains/Gnu.cpp
-@@ -1884,6 +1884,18 @@ static llvm::StringRef getGCCToolchainDir(const ArgList &Args,
-   return GCC_INSTALL_PREFIX;
- }
- 
-+/// This function takes a 'clang' triple and converts it to an equivalent gcc
-+/// triple.
-+static const char *ConvertToGccTriple(StringRef CandidateTriple) {
-+  return llvm::StringSwitch<const char *>(CandidateTriple)
-+      .Case("aarch64-redhat-linux-gnu", "aarch64-redhat-linux")
-+      .Case("i686-redhat-linux-gnu", "i686-redhat-linux")
-+      .Case("ppc64le-redhat-linux-gnu", "ppc64le-redhat-linux")
-+      .Case("s390x-redhat-linux-gnu", "s390x-redhat-linux")
-+      .Case("x86_64-redhat-linux-gnu", "x86_64-redhat-linux")
-+      .Default(NULL);
-+}
-+
- /// Initialize a GCCInstallationDetector from the driver.
- ///
- /// This performs all of the autodetection and sets up the various paths.
-@@ -1904,6 +1916,16 @@ void Generic_GCC::GCCInstallationDetector::init(
-   // The compatible GCC triples for this particular architecture.
-   SmallVector<StringRef, 16> CandidateTripleAliases;
-   SmallVector<StringRef, 16> CandidateBiarchTripleAliases;
-+
-+  // In some cases gcc uses a slightly different triple than clang for the
-+  // same target.  Convert the clang triple to the gcc equivalent and use that
-+  // to search for the gcc install.
-+  const char *ConvertedTriple = ConvertToGccTriple(TargetTriple.str());
-+  if (ConvertedTriple) {
-+    CandidateTripleAliases.push_back(ConvertedTriple);
-+    CandidateBiarchTripleAliases.push_back(ConvertedTriple);
-+  }
-+
-   CollectLibDirsAndTriples(TargetTriple, BiarchVariantTriple, CandidateLibDirs,
-                            CandidateTripleAliases, CandidateBiarchLibDirs,
-                            CandidateBiarchTripleAliases);
--- 
-2.26.2
-

diff --git a/0001-PATCH-clang-Make-funwind-tables-the-default-on-all-a.patch b/0001-PATCH-clang-Make-funwind-tables-the-default-on-all-a.patch
deleted file mode 100644
index 113f2a7..0000000
--- a/0001-PATCH-clang-Make-funwind-tables-the-default-on-all-a.patch
+++ /dev/null
@@ -1,27 +0,0 @@
-From 49f827b09db549de62dcaf8b90b3fcb3e08c0ee5 Mon Sep 17 00:00:00 2001
-From: Serge Guelton <sguelton@redhat.com>
-Date: Mon, 6 Mar 2023 12:37:48 +0100
-Subject: [PATCH] Make -funwind-tables the default on all archs
-
----
- clang/lib/Driver/ToolChains/Gnu.cpp | 4 ++++
- 1 file changed, 4 insertions(+)
-
-diff --git a/clang/lib/Driver/ToolChains/Gnu.cpp b/clang/lib/Driver/ToolChains/Gnu.cpp
-index 24fbdcffc07b..8fed46b49515 100644
---- a/clang/lib/Driver/ToolChains/Gnu.cpp
-+++ b/clang/lib/Driver/ToolChains/Gnu.cpp
-@@ -2904,6 +2904,10 @@ Generic_GCC::getDefaultUnwindTableLevel(const ArgList &Args) const {
-   case llvm::Triple::riscv64:
-   case llvm::Triple::x86:
-   case llvm::Triple::x86_64:
-+  // Enable -funwind-tables on all architectures supported by Fedora:
-+  // rhbz#1655546
-+  case llvm::Triple::systemz:
-+  case llvm::Triple::arm:
-     return UnwindTableLevel::Asynchronous;
-   default:
-     return UnwindTableLevel::None;
--- 
-2.39.1
-

diff --git a/0001-Produce-DWARF4-by-default.patch b/0001-Produce-DWARF4-by-default.patch
deleted file mode 100644
index 9b5b46b..0000000
--- a/0001-Produce-DWARF4-by-default.patch
+++ /dev/null
@@ -1,125 +0,0 @@
-From adbe188f3b1e3a0dd5ec80d9409601ba7f5b0423 Mon Sep 17 00:00:00 2001
-From: Konrad Kleine <kkleine@redhat.com>
-Date: Thu, 24 Mar 2022 09:44:21 +0100
-Subject: [PATCH] Produce DWARF4 by default
-
-Have a look at the following commit to see when the move from DWARF 4 to 5 first happened upstream:
-
-https://github.com/llvm/llvm-project/commit/d3b26dea16108c427b19b5480c9edc76edf8f5b4?diff=unified
----
- clang/lib/Driver/ToolChain.cpp     | 4 +---
- clang/test/CodeGen/dwarf-version.c | 4 ++--
- clang/test/Driver/as-options.s     | 4 ++--
- clang/test/Driver/cl-options.c     | 2 +-
- clang/test/Driver/clang-g-opts.c   | 2 +-
- clang/test/Driver/ve-toolchain.c   | 2 +-
- clang/test/Driver/ve-toolchain.cpp | 2 +-
- 7 files changed, 9 insertions(+), 11 deletions(-)
-
-diff --git a/clang/lib/Driver/ToolChain.cpp b/clang/lib/Driver/ToolChain.cpp
-index 8dafc3d481c2..92bf26dc8ec6 100644
---- a/clang/lib/Driver/ToolChain.cpp
-+++ b/clang/lib/Driver/ToolChain.cpp
-@@ -428,9 +428,7 @@ ToolChain::getDefaultUnwindTableLevel(const ArgList &Args) const {
- }
- 
- unsigned ToolChain::GetDefaultDwarfVersion() const {
--  // TODO: Remove the RISC-V special case when R_RISCV_SET_ULEB128 linker
--  // support becomes more widely available.
--  return getTriple().isRISCV() ? 4 : 5;
-+  return 4;
- }
- 
- Tool *ToolChain::getClang() const {
-diff --git a/clang/test/CodeGen/dwarf-version.c b/clang/test/CodeGen/dwarf-version.c
-index d307eb3f101f..e7e93bf6688c 100644
---- a/clang/test/CodeGen/dwarf-version.c
-+++ b/clang/test/CodeGen/dwarf-version.c
-@@ -2,8 +2,8 @@
- // RUN: %clang -target x86_64-linux-gnu -gdwarf-3 -S -emit-llvm -o - %s | FileCheck %s --check-prefix=VER3
- // RUN: %clang -target x86_64-linux-gnu -gdwarf-4 -S -emit-llvm -o - %s | FileCheck %s --check-prefix=VER4
- // RUN: %clang -target x86_64-linux-gnu -gdwarf-5 -S -emit-llvm -o - %s | FileCheck %s --check-prefix=VER5
--// RUN: %clang -target x86_64-linux-gnu -g -S -emit-llvm -o - %s | FileCheck %s --check-prefix=VER5
--// RUN: %clang -target x86_64-linux-gnu -gdwarf -S -emit-llvm -o - %s | FileCheck %s --check-prefix=VER5
-+// RUN: %clang -target x86_64-linux-gnu -g -S -emit-llvm -o - %s | FileCheck %s --check-prefix=VER4
-+// RUN: %clang -target x86_64-linux-gnu -gdwarf -S -emit-llvm -o - %s | FileCheck %s --check-prefix=VER4
- 
- // The -isysroot is used as a hack to avoid LIT messing with the SDKROOT
- // environment variable which indirecty overrides the version in the target
-diff --git a/clang/test/Driver/as-options.s b/clang/test/Driver/as-options.s
-index 73d002c7ef7e..71d55f7fd537 100644
---- a/clang/test/Driver/as-options.s
-+++ b/clang/test/Driver/as-options.s
-@@ -122,7 +122,7 @@
- // RUN:   FileCheck --check-prefix=DEBUG %s
- // RUN: %clang --target=aarch64-linux-gnu -fno-integrated-as -g0 -g %s -### 2>&1 | \
- // RUN:   FileCheck --check-prefix=DEBUG %s
--// DEBUG: "-g" "-gdwarf-5"
-+// DEBUG: "-g" "-gdwarf-4"
- // RUN: %clang --target=aarch64-linux-gnu -fno-integrated-as -g -g0 %s -### 2>&1 | \
- // RUN:   FileCheck --check-prefix=NODEBUG %s
- // RUN: %clang --target=aarch64-linux-gnu -fno-integrated-as -gdwarf-5 -g0 %s -### 2>&1 | \
-@@ -141,7 +141,7 @@
- // RUN: %clang --target=aarch64-linux-gnu -fno-integrated-as -gdwarf-2 %s -### 2>&1 | \
- // RUN:   FileCheck --check-prefix=GDWARF2 %s
- // RUN: %clang --target=aarch64-linux-gnu -fno-integrated-as -gdwarf %s -### 2>&1 | \
--// RUN:   FileCheck --check-prefix=GDWARF5 %s
-+// RUN:   FileCheck --check-prefix=GDWARF4 %s
- 
- // RUN: %clang --target=aarch64-linux-gnu -fno-integrated-as -gdwarf-5 %s -### 2>&1 | \
- // RUN:   FileCheck --check-prefix=GDWARF5 %s
-diff --git a/clang/test/Driver/cl-options.c b/clang/test/Driver/cl-options.c
-index 6d929b19e7e2..373905c2e0fc 100644
---- a/clang/test/Driver/cl-options.c
-+++ b/clang/test/Driver/cl-options.c
-@@ -569,7 +569,7 @@
- // RUN: %clang_cl /Z7 -gdwarf /c -### -- %s 2>&1 | FileCheck -check-prefix=Z7_gdwarf %s
- // Z7_gdwarf: "-gcodeview"
- // Z7_gdwarf: "-debug-info-kind=constructor"
--// Z7_gdwarf: "-dwarf-version=
-+// Z7_gdwarf: "-dwarf-version=4
- 
- // RUN: %clang_cl /ZH:MD5 /c -### -- %s 2>&1 | FileCheck -check-prefix=ZH_MD5 %s
- // ZH_MD5: "-gsrc-hash=md5"
-diff --git a/clang/test/Driver/clang-g-opts.c b/clang/test/Driver/clang-g-opts.c
-index 5ee0fe64fe48..985158746137 100644
---- a/clang/test/Driver/clang-g-opts.c
-+++ b/clang/test/Driver/clang-g-opts.c
-@@ -32,7 +32,7 @@
- 
- // CHECK-WITHOUT-G-NOT: -debug-info-kind
- // CHECK-WITH-G: "-debug-info-kind=constructor"
--// CHECK-WITH-G: "-dwarf-version=5"
-+// CHECK-WITH-G: "-dwarf-version=4"
- // CHECK-WITH-G-DWARF2: "-dwarf-version=2"
- 
- // CHECK-WITH-G-STANDALONE: "-debug-info-kind=standalone"
-diff --git a/clang/test/Driver/ve-toolchain.c b/clang/test/Driver/ve-toolchain.c
-index 32e25769b6da..b8a2852daba8 100644
---- a/clang/test/Driver/ve-toolchain.c
-+++ b/clang/test/Driver/ve-toolchain.c
-@@ -6,7 +6,7 @@
- /// Checking dwarf-version
- 
- // RUN: %clang -### -g --target=ve %s 2>&1 | FileCheck -check-prefix=DWARF_VER %s
--// DWARF_VER: "-dwarf-version=5"
-+// DWARF_VER: "-dwarf-version=4"
- 
- ///-----------------------------------------------------------------------------
- /// Checking include-path
-diff --git a/clang/test/Driver/ve-toolchain.cpp b/clang/test/Driver/ve-toolchain.cpp
-index 5a33d5eceb61..cedf895b36dc 100644
---- a/clang/test/Driver/ve-toolchain.cpp
-+++ b/clang/test/Driver/ve-toolchain.cpp
-@@ -7,7 +7,7 @@
- 
- // RUN: %clangxx -### -g --target=ve-unknown-linux-gnu \
- // RUN:     %s 2>&1 | FileCheck -check-prefix=DWARF_VER %s
--// DWARF_VER: "-dwarf-version=5"
-+// DWARF_VER: "-dwarf-version=4"
- 
- ///-----------------------------------------------------------------------------
- /// Checking include-path
--- 
-2.41.0
-

diff --git a/0001-Workaround-a-bug-in-ORC-on-ppc64le.patch b/0001-Workaround-a-bug-in-ORC-on-ppc64le.patch
deleted file mode 100644
index af236a1..0000000
--- a/0001-Workaround-a-bug-in-ORC-on-ppc64le.patch
+++ /dev/null
@@ -1,30 +0,0 @@
-From a2449cee8c995b56f1892502aab3dfad3d6f3ca1 Mon Sep 17 00:00:00 2001
-From: Tulio Magno Quites Machado Filho <tuliom@redhat.com>
-Date: Fri, 8 Sep 2023 11:45:34 -0300
-Subject: [PATCH] Workaround a bug in ORC on ppc64le
-
-The Jit code appears to be returning the wrong printf symbol on ppc64le
-after the transition of the default long double to IEEE 128-bit floating
-point.
----
- clang/unittests/Interpreter/InterpreterTest.cpp | 4 +++-
- 1 file changed, 3 insertions(+), 1 deletion(-)
-
-diff --git a/clang/unittests/Interpreter/InterpreterTest.cpp b/clang/unittests/Interpreter/InterpreterTest.cpp
-index abb8e6377aab..7b6697ebc6ed 100644
---- a/clang/unittests/Interpreter/InterpreterTest.cpp
-+++ b/clang/unittests/Interpreter/InterpreterTest.cpp
-@@ -243,7 +243,9 @@ TEST(IncrementalProcessing, FindMangledNameSymbol) {
-   EXPECT_FALSE(!Addr);
- 
-   // FIXME: Re-enable when we investigate the way we handle dllimports on Win.
--#ifndef _WIN32
-+  // FIXME: The printf symbol returned from the Jit may not be correct on
-+  //        ppc64le when the default long double is IEEE 128-bit fp.
-+#if !defined _WIN32 && !(defined __PPC64__ && defined __LITTLE_ENDIAN__)
-   EXPECT_EQ((uintptr_t)&printf, Addr->getValue());
- #endif // _WIN32
- }
--- 
-2.41.0
-

diff --git a/0001-clang-shlib-Add-symbol-versioning-to-all-symbols.patch b/0001-clang-shlib-Add-symbol-versioning-to-all-symbols.patch
deleted file mode 100644
index aa80db6..0000000
--- a/0001-clang-shlib-Add-symbol-versioning-to-all-symbols.patch
+++ /dev/null
@@ -1,39 +0,0 @@
-From 59673ed97d92df34d6f662da5a51f6e28806b5af Mon Sep 17 00:00:00 2001
-From: Tom Stellard <tstellar@redhat.com>
-Date: Thu, 26 Sep 2024 13:53:18 +0000
-Subject: [PATCH] [clang-shlib] Add symbol versioning to all symbols
-
-We do the same thing for libLLVM.so.  This should help avoid issues
-when an applications loads two different versions of the library at
-the same time.
----
- clang/tools/clang-shlib/CMakeLists.txt               | 7 +++++++
- clang/tools/clang-shlib/simple_version_script.map.in | 1 +
- 2 files changed, 8 insertions(+)
- create mode 100644 clang/tools/clang-shlib/simple_version_script.map.in
-
-diff --git a/clang/tools/clang-shlib/CMakeLists.txt b/clang/tools/clang-shlib/CMakeLists.txt
-index 298d3a9d18fe..004ce2897960 100644
---- a/clang/tools/clang-shlib/CMakeLists.txt
-+++ b/clang/tools/clang-shlib/CMakeLists.txt
-@@ -61,3 +61,10 @@ if (MINGW OR CYGWIN)
-   # make sure we export all symbols despite potential dllexports.
-   target_link_options(clang-cpp PRIVATE LINKER:--export-all-symbols)
- endif()
-+
-+# Solaris ld does not accept global: *; so there is no way to version *all* global symbols
-+if (NOT LLVM_LINKER_IS_SOLARISLD AND NOT MINGW)
-+  configure_file(${CMAKE_CURRENT_SOURCE_DIR}/simple_version_script.map.in
-+	         ${CMAKE_CURRENT_BINARY_DIR}/simple_version_script.map)
-+  target_link_options(clang-cpp PRIVATE -Wl,--version-script,${CMAKE_CURRENT_BINARY_DIR}/simple_version_script.map)
-+endif()
-diff --git a/clang/tools/clang-shlib/simple_version_script.map.in b/clang/tools/clang-shlib/simple_version_script.map.in
-new file mode 100644
-index 000000000000..cb2306d1f596
---- /dev/null
-+++ b/clang/tools/clang-shlib/simple_version_script.map.in
-@@ -0,0 +1 @@
-+@LLVM_SHLIB_SYMBOL_VERSION@ { global: *; };
--- 
-2.46.0
-

diff --git a/0001-clang-tools-extra-Make-test-dependency-on-LLVMHello-.patch b/0001-clang-tools-extra-Make-test-dependency-on-LLVMHello-.patch
deleted file mode 100644
index b69c7e7..0000000
--- a/0001-clang-tools-extra-Make-test-dependency-on-LLVMHello-.patch
+++ /dev/null
@@ -1,85 +0,0 @@
-From 22d62b32cd3be5fb0ae10723b35a781e0f862b71 Mon Sep 17 00:00:00 2001
-From: Tom Stellard <tstellar@redhat.com>
-Date: Tue, 24 Jan 2023 22:46:25 +0000
-Subject: [PATCH] clang-tools-extra: Make test dependency on LLVMHello optional
-
-This fixes clang + clang-tools-extra standalone build after
-36892727e4f19a60778e371d78f8fb09d8122c85.
----
- clang-tools-extra/test/CMakeLists.txt                  | 10 +++++++++-
- clang-tools-extra/test/clang-tidy/CTTestTidyModule.cpp |  2 +-
- clang-tools-extra/test/lit.cfg.py                      |  3 +++
- clang-tools-extra/test/lit.site.cfg.py.in              |  1 +
- 4 files changed, 14 insertions(+), 2 deletions(-)
-
-diff --git a/clang-tools-extra/test/CMakeLists.txt b/clang-tools-extra/test/CMakeLists.txt
-index f4c529ee8af2..1cfb4dd529aa 100644
---- a/clang-tools-extra/test/CMakeLists.txt
-+++ b/clang-tools-extra/test/CMakeLists.txt
-@@ -7,10 +7,15 @@
- set(CLANG_TOOLS_SOURCE_DIR "${CMAKE_CURRENT_SOURCE_DIR}/..")
- set(CLANG_TOOLS_BINARY_DIR "${CMAKE_CURRENT_BINARY_DIR}/..")
- 
-+if (TARGET LLVMHello)
-+  set (LLVM_HAS_LLVM_HELLO 1)
-+endif()
-+
- llvm_canonicalize_cmake_booleans(
-   CLANG_TIDY_ENABLE_STATIC_ANALYZER
-   CLANG_PLUGIN_SUPPORT
-   LLVM_INSTALL_TOOLCHAIN_ONLY
-+  LLVM_HAS_LLVM_HELLO
-   )
- 
- configure_lit_site_cfg(
-@@ -86,7 +91,10 @@ if (NOT LLVM_INSTALL_TOOLCHAIN_ONLY)
-   endif()
- 
-   if(TARGET CTTestTidyModule)
--      list(APPEND CLANG_TOOLS_TEST_DEPS CTTestTidyModule LLVMHello)
-+      list(APPEND CLANG_TOOLS_TEST_DEPS CTTestTidyModule)
-+      if (TARGET  LLVMHello)
-+        list(APPEND CLANG_TOOLS_TEST_DEPS CTTestTidyModule)
-+      endif()
-       target_include_directories(CTTestTidyModule PUBLIC BEFORE "${CLANG_TOOLS_SOURCE_DIR}")
-       if(CLANG_PLUGIN_SUPPORT AND (WIN32 OR CYGWIN))
-         set(LLVM_LINK_COMPONENTS
-diff --git a/clang-tools-extra/test/clang-tidy/CTTestTidyModule.cpp b/clang-tools-extra/test/clang-tidy/CTTestTidyModule.cpp
-index c66a94f458cf..b4e7a5d691e5 100644
---- a/clang-tools-extra/test/clang-tidy/CTTestTidyModule.cpp
-+++ b/clang-tools-extra/test/clang-tidy/CTTestTidyModule.cpp
-@@ -1,4 +1,4 @@
--// REQUIRES: plugins
-+// REQUIRES: plugins, llvm-hello
- // RUN: clang-tidy -checks='-*,mytest*' --list-checks -load %llvmshlibdir/CTTestTidyModule%pluginext -load %llvmshlibdir/LLVMHello%pluginext | FileCheck --check-prefix=CHECK-LIST %s
- // CHECK-LIST: Enabled checks:
- // CHECK-LIST-NEXT:    mytest1
-diff --git a/clang-tools-extra/test/lit.cfg.py b/clang-tools-extra/test/lit.cfg.py
-index 9f64fd3d2ffa..1b258a00ddf9 100644
---- a/clang-tools-extra/test/lit.cfg.py
-+++ b/clang-tools-extra/test/lit.cfg.py
-@@ -75,6 +75,9 @@ config.substitutions.append(("%clang_tidy_headers", clang_tidy_headers))
- if config.has_plugins and config.llvm_plugin_ext:
-     config.available_features.add("plugins")
- 
-+if config.has_llvm_hello:
-+    config.available_features.add("llvm-hello")
-+
- # It is not realistically possible to account for all options that could
- # possibly be present in system and user configuration files, so disable
- # default configs for the test runs.
-diff --git a/clang-tools-extra/test/lit.site.cfg.py.in b/clang-tools-extra/test/lit.site.cfg.py.in
-index 4eb830a1baf1..6e5559348454 100644
---- a/clang-tools-extra/test/lit.site.cfg.py.in
-+++ b/clang-tools-extra/test/lit.site.cfg.py.in
-@@ -11,6 +11,7 @@ config.target_triple = "@LLVM_TARGET_TRIPLE@"
- config.host_triple = "@LLVM_HOST_TRIPLE@"
- config.clang_tidy_staticanalyzer = @CLANG_TIDY_ENABLE_STATIC_ANALYZER@
- config.has_plugins = @CLANG_PLUGIN_SUPPORT@ & ~@LLVM_INSTALL_TOOLCHAIN_ONLY@
-+config.has_llvm_hello = @LLVM_HAS_LLVM_HELLO@
- # Support substitution of the tools and libs dirs with user parameters. This is
- # used when we can't determine the tool dir at configuration time.
- config.llvm_tools_dir = lit_config.substitute("@LLVM_TOOLS_DIR@")
--- 
-2.40.1
-

diff --git a/0003-PATCH-clang-Don-t-install-static-libraries.patch b/0003-PATCH-clang-Don-t-install-static-libraries.patch
deleted file mode 100644
index bc8fa51..0000000
--- a/0003-PATCH-clang-Don-t-install-static-libraries.patch
+++ /dev/null
@@ -1,25 +0,0 @@
-From 88704fc2eabb9dd19a9c3eb81a9b3dc37d95651c Mon Sep 17 00:00:00 2001
-From: Tom Stellard <tstellar@redhat.com>
-Date: Fri, 31 Jan 2020 11:04:57 -0800
-Subject: [PATCH][clang] Don't install static libraries
-
----
- clang/cmake/modules/AddClang.cmake | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/clang/cmake/modules/AddClang.cmake b/clang/cmake/modules/AddClang.cmake
-index 5752f4277444..0f52822d91f0 100644
---- a/clang/cmake/modules/AddClang.cmake
-+++ b/clang/cmake/modules/AddClang.cmake
-@@ -113,7 +113,7 @@ macro(add_clang_library name)
-     if(TARGET ${lib})
-       target_link_libraries(${lib} INTERFACE ${LLVM_COMMON_LIBS})
- 
--      if (NOT LLVM_INSTALL_TOOLCHAIN_ONLY OR ARG_INSTALL_WITH_TOOLCHAIN)
-+      if (ARG_SHARED AND (NOT LLVM_INSTALL_TOOLCHAIN_ONLY OR ARG_INSTALL_WITH_TOOLCHAIN))
-         get_target_export_arg(${name} Clang export_to_clangtargets UMBRELLA clang-libraries)
-         install(TARGETS ${lib}
-           COMPONENT ${lib}
--- 
-2.30.2
-

diff --git a/0009-disable-recommonmark.patch b/0009-disable-recommonmark.patch
deleted file mode 100644
index f6db5da..0000000
--- a/0009-disable-recommonmark.patch
+++ /dev/null
@@ -1,26 +0,0 @@
-diff -Naur a/clang/docs/conf.py b/clang/docs/conf.py
---- a/clang/docs/conf.py	2020-09-15 09:12:24.318287611 +0000
-+++ b/clang/docs/conf.py	2020-09-15 15:01:00.025893199 +0000
-@@ -37,21 +37,7 @@
-     ".rst": "restructuredtext",
- }
- 
--try:
--    import recommonmark
--except ImportError:
--    # manpages do not use any .md sources
--    if not tags.has("builder-man"):
--        raise
--else:
--    import sphinx
--
--    if sphinx.version_info >= (3, 0):
--        # This requires 0.5 or later.
--        extensions.append("recommonmark")
--    else:
--        source_parsers = {".md": "recommonmark.parser.CommonMarkParser"}
--    source_suffix[".md"] = "markdown"
-+import sphinx
- 
- # The encoding of source files.
- # source_encoding = 'utf-8-sig'

diff --git a/README.md b/README.md
deleted file mode 100644
index 873cfc1..0000000
--- a/README.md
+++ /dev/null
@@ -1,3 +0,0 @@
-# clang17
-
-The clang17 package

diff --git a/cfg.patch b/cfg.patch
deleted file mode 100644
index 779558a..0000000
--- a/cfg.patch
+++ /dev/null
@@ -1,298 +0,0 @@
-commit ad4a5130277776d8f15f40ac5a6dede6ad3aabfb
-Author: Timm Bäder <tbaeder@redhat.com>
-Date:   Tue Aug 8 14:11:33 2023 +0200
-
-    [clang][CFG] Cleanup functions
-    
-    Add declarations declared with attribute(cleanup(...)) to the CFG,
-    similar to destructors.
-    
-    Differential Revision: https://reviews.llvm.org/D157385
-
-diff --git a/clang/include/clang/Analysis/CFG.h b/clang/include/clang/Analysis/CFG.h
-index cf4fa2da2a35..67383bb316d3 100644
---- a/clang/include/clang/Analysis/CFG.h
-+++ b/clang/include/clang/Analysis/CFG.h
-@@ -14,10 +14,11 @@
- #ifndef LLVM_CLANG_ANALYSIS_CFG_H
- #define LLVM_CLANG_ANALYSIS_CFG_H
- 
--#include "clang/Analysis/Support/BumpVector.h"
--#include "clang/Analysis/ConstructionContext.h"
-+#include "clang/AST/Attr.h"
- #include "clang/AST/ExprCXX.h"
- #include "clang/AST/ExprObjC.h"
-+#include "clang/Analysis/ConstructionContext.h"
-+#include "clang/Analysis/Support/BumpVector.h"
- #include "clang/Basic/LLVM.h"
- #include "llvm/ADT/DenseMap.h"
- #include "llvm/ADT/GraphTraits.h"
-@@ -74,7 +75,8 @@ public:
-     MemberDtor,
-     TemporaryDtor,
-     DTOR_BEGIN = AutomaticObjectDtor,
--    DTOR_END = TemporaryDtor
-+    DTOR_END = TemporaryDtor,
-+    CleanupFunction,
-   };
- 
- protected:
-@@ -383,6 +385,32 @@ private:
-   }
- };
- 
-+class CFGCleanupFunction final : public CFGElement {
-+public:
-+  CFGCleanupFunction() = default;
-+  CFGCleanupFunction(const VarDecl *VD)
-+      : CFGElement(Kind::CleanupFunction, VD) {
-+    assert(VD->hasAttr<CleanupAttr>());
-+  }
-+
-+  const VarDecl *getVarDecl() const {
-+    return static_cast<VarDecl *>(Data1.getPointer());
-+  }
-+
-+  /// Returns the function to be called when cleaning up the var decl.
-+  const FunctionDecl *getFunctionDecl() const {
-+    const CleanupAttr *A = getVarDecl()->getAttr<CleanupAttr>();
-+    return A->getFunctionDecl();
-+  }
-+
-+private:
-+  friend class CFGElement;
-+
-+  static bool isKind(const CFGElement E) {
-+    return E.getKind() == Kind::CleanupFunction;
-+  }
-+};
-+
- /// Represents C++ object destructor implicitly generated for automatic object
- /// or temporary bound to const reference at the point of leaving its local
- /// scope.
-@@ -1142,6 +1170,10 @@ public:
-     Elements.push_back(CFGAutomaticObjDtor(VD, S), C);
-   }
- 
-+  void appendCleanupFunction(const VarDecl *VD, BumpVectorContext &C) {
-+    Elements.push_back(CFGCleanupFunction(VD), C);
-+  }
-+
-   void appendLifetimeEnds(VarDecl *VD, Stmt *S, BumpVectorContext &C) {
-     Elements.push_back(CFGLifetimeEnds(VD, S), C);
-   }
-diff --git a/clang/lib/Analysis/CFG.cpp b/clang/lib/Analysis/CFG.cpp
-index b82f9010a83f..03ab4c6fdf29 100644
---- a/clang/lib/Analysis/CFG.cpp
-+++ b/clang/lib/Analysis/CFG.cpp
-@@ -881,6 +881,10 @@ private:
-     B->appendAutomaticObjDtor(VD, S, cfg->getBumpVectorContext());
-   }
- 
-+  void appendCleanupFunction(CFGBlock *B, VarDecl *VD) {
-+    B->appendCleanupFunction(VD, cfg->getBumpVectorContext());
-+  }
-+
-   void appendLifetimeEnds(CFGBlock *B, VarDecl *VD, Stmt *S) {
-     B->appendLifetimeEnds(VD, S, cfg->getBumpVectorContext());
-   }
-@@ -1346,7 +1350,8 @@ private:
-     return {};
-   }
- 
--  bool hasTrivialDestructor(VarDecl *VD);
-+  bool hasTrivialDestructor(const VarDecl *VD) const;
-+  bool needsAutomaticDestruction(const VarDecl *VD) const;
- };
- 
- } // namespace
-@@ -1861,14 +1866,14 @@ void CFGBuilder::addAutomaticObjDestruction(LocalScope::const_iterator B,
-   if (B == E)
-     return;
- 
--  SmallVector<VarDecl *, 10> DeclsNonTrivial;
--  DeclsNonTrivial.reserve(B.distance(E));
-+  SmallVector<VarDecl *, 10> DeclsNeedDestruction;
-+  DeclsNeedDestruction.reserve(B.distance(E));
- 
-   for (VarDecl* D : llvm::make_range(B, E))
--    if (!hasTrivialDestructor(D))
--      DeclsNonTrivial.push_back(D);
-+    if (needsAutomaticDestruction(D))
-+      DeclsNeedDestruction.push_back(D);
- 
--  for (VarDecl *VD : llvm::reverse(DeclsNonTrivial)) {
-+  for (VarDecl *VD : llvm::reverse(DeclsNeedDestruction)) {
-     if (BuildOpts.AddImplicitDtors) {
-       // If this destructor is marked as a no-return destructor, we need to
-       // create a new block for the destructor which does not have as a
-@@ -1879,7 +1884,8 @@ void CFGBuilder::addAutomaticObjDestruction(LocalScope::const_iterator B,
-         Ty = getReferenceInitTemporaryType(VD->getInit());
-       Ty = Context->getBaseElementType(Ty);
- 
--      if (Ty->getAsCXXRecordDecl()->isAnyDestructorNoReturn())
-+      const CXXRecordDecl *CRD = Ty->getAsCXXRecordDecl();
-+      if (CRD && CRD->isAnyDestructorNoReturn())
-         Block = createNoReturnBlock();
-     }
- 
-@@ -1890,8 +1896,10 @@ void CFGBuilder::addAutomaticObjDestruction(LocalScope::const_iterator B,
-     // objects, we end lifetime with scope end.
-     if (BuildOpts.AddLifetime)
-       appendLifetimeEnds(Block, VD, S);
--    if (BuildOpts.AddImplicitDtors)
-+    if (BuildOpts.AddImplicitDtors && !hasTrivialDestructor(VD))
-       appendAutomaticObjDtor(Block, VD, S);
-+    if (VD->hasAttr<CleanupAttr>())
-+      appendCleanupFunction(Block, VD);
-   }
- }
- 
-@@ -1922,7 +1930,7 @@ void CFGBuilder::addScopeExitHandling(LocalScope::const_iterator B,
-   // is destroyed, for automatic variables, this happens when the end of the
-   // scope is added.
-   for (VarDecl* D : llvm::make_range(B, E))
--    if (hasTrivialDestructor(D))
-+    if (!needsAutomaticDestruction(D))
-       DeclsTrivial.push_back(D);
- 
-   if (DeclsTrivial.empty())
-@@ -2095,7 +2103,11 @@ LocalScope* CFGBuilder::addLocalScopeForDeclStmt(DeclStmt *DS,
-   return Scope;
- }
- 
--bool CFGBuilder::hasTrivialDestructor(VarDecl *VD) {
-+bool CFGBuilder::needsAutomaticDestruction(const VarDecl *VD) const {
-+  return !hasTrivialDestructor(VD) || VD->hasAttr<CleanupAttr>();
-+}
-+
-+bool CFGBuilder::hasTrivialDestructor(const VarDecl *VD) const {
-   // Check for const references bound to temporary. Set type to pointee.
-   QualType QT = VD->getType();
-   if (QT->isReferenceType()) {
-@@ -2149,7 +2161,7 @@ LocalScope* CFGBuilder::addLocalScopeForVarDecl(VarDecl *VD,
-     return Scope;
- 
-   if (!BuildOpts.AddLifetime && !BuildOpts.AddScopes &&
--      hasTrivialDestructor(VD)) {
-+      !needsAutomaticDestruction(VD)) {
-     assert(BuildOpts.AddImplicitDtors);
-     return Scope;
-   }
-@@ -5287,6 +5299,7 @@ CFGImplicitDtor::getDestructorDecl(ASTContext &astContext) const {
-     case CFGElement::CXXRecordTypedCall:
-     case CFGElement::ScopeBegin:
-     case CFGElement::ScopeEnd:
-+    case CFGElement::CleanupFunction:
-       llvm_unreachable("getDestructorDecl should only be used with "
-                        "ImplicitDtors");
-     case CFGElement::AutomaticObjectDtor: {
-@@ -5830,6 +5843,11 @@ static void print_elem(raw_ostream &OS, StmtPrinterHelper &Helper,
-     break;
-   }
- 
-+  case CFGElement::Kind::CleanupFunction:
-+    OS << "CleanupFunction ("
-+       << E.castAs<CFGCleanupFunction>().getFunctionDecl()->getName() << ")\n";
-+    break;
-+
-   case CFGElement::Kind::LifetimeEnds:
-     Helper.handleDecl(E.castAs<CFGLifetimeEnds>().getVarDecl(), OS);
-     OS << " (Lifetime ends)\n";
-diff --git a/clang/lib/Analysis/PathDiagnostic.cpp b/clang/lib/Analysis/PathDiagnostic.cpp
-index 348afc42319e..0cb03943c547 100644
---- a/clang/lib/Analysis/PathDiagnostic.cpp
-+++ b/clang/lib/Analysis/PathDiagnostic.cpp
-@@ -567,6 +567,7 @@ getLocationForCaller(const StackFrameContext *SFC,
-   }
-   case CFGElement::ScopeBegin:
-   case CFGElement::ScopeEnd:
-+  case CFGElement::CleanupFunction:
-     llvm_unreachable("not yet implemented!");
-   case CFGElement::LifetimeEnds:
-   case CFGElement::LoopExit:
-diff --git a/clang/lib/StaticAnalyzer/Core/ExprEngine.cpp b/clang/lib/StaticAnalyzer/Core/ExprEngine.cpp
-index 0e2ac78f7089..d7c5bd1d4042 100644
---- a/clang/lib/StaticAnalyzer/Core/ExprEngine.cpp
-+++ b/clang/lib/StaticAnalyzer/Core/ExprEngine.cpp
-@@ -993,6 +993,7 @@ void ExprEngine::processCFGElement(const CFGElement E, ExplodedNode *Pred,
-       ProcessLoopExit(E.castAs<CFGLoopExit>().getLoopStmt(), Pred);
-       return;
-     case CFGElement::LifetimeEnds:
-+    case CFGElement::CleanupFunction:
-     case CFGElement::ScopeBegin:
-     case CFGElement::ScopeEnd:
-       return;
-diff --git a/clang/test/Analysis/scopes-cfg-output.cpp b/clang/test/Analysis/scopes-cfg-output.cpp
-index 6877d124e67a..4eb8967e3735 100644
---- a/clang/test/Analysis/scopes-cfg-output.cpp
-+++ b/clang/test/Analysis/scopes-cfg-output.cpp
-@@ -1419,3 +1419,68 @@ label:
-     }
-   }
- }
-+
-+// CHECK:      [B1]
-+// CHECK-NEXT:   1: CFGScopeBegin(i)
-+// CHECK-NEXT:   2: int i __attribute__((cleanup(cleanup_int)));
-+// CHECK-NEXT:   3: CleanupFunction (cleanup_int)
-+// CHECK-NEXT:   4: CFGScopeEnd(i)
-+void cleanup_int(int *i);
-+void test_cleanup_functions() {
-+  int i __attribute__((cleanup(cleanup_int)));
-+}
-+
-+// CHECK:      [B1]
-+// CHECK-NEXT:    1: 10
-+// CHECK-NEXT:    2: i
-+// CHECK-NEXT:    3: [B1.2] = [B1.1]
-+// CHECK-NEXT:    4: return;
-+// CHECK-NEXT:    5: CleanupFunction (cleanup_int)
-+// CHECK-NEXT:    6: CFGScopeEnd(i)
-+// CHECK-NEXT:    Preds (1): B3
-+// CHECK-NEXT:    Succs (1): B0
-+// CHECK:      [B2]
-+// CHECK-NEXT:    1: return;
-+// CHECK-NEXT:    2: CleanupFunction (cleanup_int)
-+// CHECK-NEXT:    3: CFGScopeEnd(i)
-+// CHECK-NEXT:    Preds (1): B3
-+// CHECK-NEXT:    Succs (1): B0
-+// CHECK:      [B3]
-+// CHECK-NEXT:    1: CFGScopeBegin(i)
-+// CHECK-NEXT:    2: int i __attribute__((cleanup(cleanup_int)));
-+// CHECK-NEXT:    3: m
-+// CHECK-NEXT:    4: [B3.3] (ImplicitCastExpr, LValueToRValue, int)
-+// CHECK-NEXT:    5: 1
-+// CHECK-NEXT:    6: [B3.4] == [B3.5]
-+// CHECK-NEXT:    T: if [B3.6]
-+// CHECK-NEXT:    Preds (1): B4
-+// CHECK-NEXT:    Succs (2): B2 B1
-+void test_cleanup_functions2(int m) {
-+  int i __attribute__((cleanup(cleanup_int)));
-+
-+  if (m == 1) {
-+    return;
-+  }
-+
-+  i = 10;
-+  return;
-+}
-+
-+// CHECK:       [B1]
-+// CHECK-NEXT:    1: CFGScopeBegin(f)
-+// CHECK-NEXT:    2:  (CXXConstructExpr, [B1.3], F)
-+// CHECK-NEXT:    3: F f __attribute__((cleanup(cleanup_F)));
-+// CHECK-NEXT:    4: CleanupFunction (cleanup_F)
-+// CHECK-NEXT:    5: [B1.3].~F() (Implicit destructor)
-+// CHECK-NEXT:    6: CFGScopeEnd(f)
-+// CHECK-NEXT:    Preds (1): B2
-+// CHECK-NEXT:    Succs (1): B0
-+class F {
-+public:
-+  ~F();
-+};
-+void cleanup_F(F *f);
-+
-+void test() {
-+  F f __attribute((cleanup(cleanup_F)));
-+}

diff --git a/clang17.spec b/clang17.spec
deleted file mode 100644
index 7945fde..0000000
--- a/clang17.spec
+++ /dev/null
@@ -1,1507 +0,0 @@
-%bcond_with snapshot_build
-
-%if %{with snapshot_build}
-%{llvm_sb}
-%endif
-
-%global toolchain clang
-
-# Opt out of https://fedoraproject.org/wiki/Changes/fno-omit-frame-pointer
-# https://bugzilla.redhat.com/show_bug.cgi?id=2158587
-%undefine _include_frame_pointers
-
-%bcond_without compat_build
-%bcond_without check
-
-%global maj_ver 17
-%global min_ver 0
-%global patch_ver 6
-#global rc_ver 4
-
-%if %{with snapshot_build}
-%undefine rc_ver
-%global maj_ver %{llvm_snapshot_version_major}
-%global min_ver %{llvm_snapshot_version_minor}
-%global patch_ver %{llvm_snapshot_version_patch}
-%endif
-
-%global clang_version %{maj_ver}.%{min_ver}.%{patch_ver}
-
-%if %{with compat_build}
-%global pkg_name clang%{maj_ver}
-%global sub_pkg_suffix %{maj_ver}
-# Install clang to same prefix as llvm, so that apps that use llvm-config
-# will also be able to find clang libs.
-%global install_prefix %{_libdir}/llvm%{maj_ver}
-%global install_bindir %{install_prefix}/bin
-%global install_includedir %{install_prefix}/include
-%global install_libdir %{install_prefix}/lib
-%global install_datadir %{install_prefix}/share
-%global install_libexecdir %{install_prefix}/libexec
-%global install_docdir %{install_datadir}/doc
-
-%global pkg_includedir %{install_includedir}
-%else
-%global pkg_name clang
-%global install_prefix %{_prefix}
-%global install_bindir %{_bindir}
-%global install_datadir %{_datadir}
-%global install_libdir %{_libdir}
-%global install_includedir %{_includedir}
-%global install_libexecdir %{_libexecdir}
-%global install_docdir %{_docdir}
-%endif
-
-%ifarch ppc64le
-# Too many threads on ppc64 systems causes OOM errors.
-%global _smp_mflags -j8
-%endif
-
-# Try to limit memory use on i686.
-%ifarch %ix86
-%constrain_build -m 3072
-%endif
-
-%global clang_srcdir clang-%{clang_version}%{?rc_ver:rc%{rc_ver}}.src
-%global clang_tools_srcdir clang-tools-extra-%{clang_version}%{?rc_ver:rc%{rc_ver}}.src
-
-Name:		%pkg_name
-Version:	%{clang_version}%{?rc_ver:~rc%{rc_ver}}%{?llvm_snapshot_version_suffix:~%{llvm_snapshot_version_suffix}}
-Release:	13%{?dist}
-Summary:	A C language family front-end for LLVM
-
-License:	Apache-2.0 WITH LLVM-exception OR NCSA
-URL:		http://llvm.org
-%if %{with snapshot_build}
-Source0:    %{llvm_snapshot_source_prefix}clang-%{llvm_snapshot_yyyymmdd}.src.tar.xz
-Source1:    %{llvm_snapshot_source_prefix}clang-tools-extra-%{llvm_snapshot_yyyymmdd}.src.tar.xz
-%{llvm_snapshot_extra_source_tags}
-
-%else
-Source0:	https://github.com/llvm/llvm-project/releases/download/llvmorg-%{clang_version}%{?rc_ver:-rc%{rc_ver}}/%{clang_srcdir}.tar.xz
-Source3:	https://github.com/llvm/llvm-project/releases/download/llvmorg-%{clang_version}%{?rc_ver:-rc%{rc_ver}}/%{clang_srcdir}.tar.xz.sig
-Source1:	https://github.com/llvm/llvm-project/releases/download/llvmorg-%{clang_version}%{?rc_ver:-rc%{rc_ver}}/%{clang_tools_srcdir}.tar.xz
-Source2:	https://github.com/llvm/llvm-project/releases/download/llvmorg-%{clang_version}%{?rc_ver:-rc%{rc_ver}}/%{clang_tools_srcdir}.tar.xz.sig
-Source4:	release-keys.asc
-%endif
-%if %{without compat_build}
-Source5:	macros.%{name}
-%endif
-
-# Patches for clang
-Patch1:     0001-PATCH-clang-Make-funwind-tables-the-default-on-all-a.patch
-Patch2:     0003-PATCH-clang-Don-t-install-static-libraries.patch
-Patch3:     0001-Driver-Add-a-gcc-equivalent-triple-to-the-list-of-tr.patch
-# Drop the following patch after debugedit adds support to DWARF-5:
-# https://sourceware.org/bugzilla/show_bug.cgi?id=28728
-Patch4:     0001-Produce-DWARF4-by-default.patch
-# Workaround a bug in ORC on ppc64le.
-# More info is available here: https://reviews.llvm.org/D159115#4641826
-Patch5:     0001-Workaround-a-bug-in-ORC-on-ppc64le.patch
-# Patches for https://issues.redhat.com/browse/RHEL-1650
-# Remove in clang 18.
-Patch6:     cfg.patch
-Patch7:     tsa.patch
-Patch8:     0001-Clang-Fix-build-with-GCC-14-on-ARM.patch
-Patch9:     0001-Clang-Defer-the-instantiation-of-explicit-specifier-.patch
-# https://github.com/llvm/llvm-project/pull/110758
-Patch10:    0001-clang-shlib-Add-symbol-versioning-to-all-symbols.patch
-
-
-# RHEL specific patches
-# Avoid unwanted dependency on python-recommonmark
-Patch101:  0009-disable-recommonmark.patch
-
-# Patches for clang-tools-extra
-# See https://reviews.llvm.org/D120301
-Patch201:   0001-clang-tools-extra-Make-test-dependency-on-LLVMHello-.patch
-
-BuildRequires:	clang
-BuildRequires:	cmake
-BuildRequires:	ninja-build
-
-%if %{with compat_build}
-%global llvm_pkg_name llvm%{maj_ver}
-%else
-%global llvm_pkg_name llvm
-BuildRequires:  %{llvm_pkg_name}-test = %{version}
-BuildRequires:  %{llvm_pkg_name}-googletest = %{version}
-%endif
-
-BuildRequires:	%{llvm_pkg_name}-devel = %{version}
-# llvm-static is required, because clang-tablegen needs libLLVMTableGen, which
-# is not included in libLLVM.so.
-BuildRequires:	%{llvm_pkg_name}-static = %{version}
-BuildRequires:	%{llvm_pkg_name}-cmake-utils = %{version}
-
-BuildRequires:	libxml2-devel
-BuildRequires:	perl-generators
-BuildRequires:	ncurses-devel
-# According to https://fedoraproject.org/wiki/Packaging:Emacs a package
-# should BuildRequires: emacs if it packages emacs integration files.
-BuildRequires:	emacs
-
-# The testsuite uses /usr/bin/lit which is part of the python3-lit package.
-BuildRequires:	python3-lit
-
-BuildRequires:	python3-sphinx
-%if %{undefined rhel}
-BuildRequires:	python3-recommonmark
-%endif
-BuildRequires:	libatomic
-
-# We need python3-devel for %%py3_shebang_fix
-BuildRequires:	python3-devel
-
-# For reproducible pyc file generation
-# See https://docs.fedoraproject.org/en-US/packaging-guidelines/Python_Appendix/#_byte_compilation_reproducibility
-BuildRequires: /usr/bin/marshalparser
-%if %{without compat_build}
-%global py_reproducible_pyc_path %{buildroot}%{python3_sitelib}
-%endif
-
-# Needed for %%multilib_fix_c_header
-BuildRequires:	multilib-rpm-config
-
-# For origin certification
-BuildRequires:	gnupg2
-
-# scan-build uses these perl modules so they need to be installed in order
-# to run the tests.
-BuildRequires: perl(Digest::MD5)
-BuildRequires: perl(File::Copy)
-BuildRequires: perl(File::Find)
-BuildRequires: perl(File::Path)
-BuildRequires: perl(File::Temp)
-BuildRequires: perl(FindBin)
-BuildRequires: perl(Hash::Util)
-BuildRequires: perl(lib)
-BuildRequires: perl(Term::ANSIColor)
-BuildRequires: perl(Text::ParseWords)
-BuildRequires: perl(Sys::Hostname)
-
-Requires:	%{name}-libs%{?_isa} = %{version}-%{release}
-
-# clang requires gcc, clang++ requires libstdc++-devel
-# - https://bugzilla.redhat.com/show_bug.cgi?id=1021645
-# - https://bugzilla.redhat.com/show_bug.cgi?id=1158594
-Requires:	libstdc++-devel
-Requires:	gcc-c++
-
-Provides:	clang(major) = %{maj_ver}
-
-Conflicts:	compiler-rt < 11.0.0
-
-%description
-clang: noun
-    1. A loud, resonant, metallic sound.
-    2. The strident call of a crane or goose.
-    3. C-language family front-end toolkit.
-
-The goal of the Clang project is to create a new C, C++, Objective C
-and Objective C++ front-end for the LLVM compiler. Its tools are built
-as libraries and designed to be loosely-coupled and extensible.
-
-Install compiler-rt if you want the Blocks C language extension or to
-enable sanitization and profiling options when building, and
-libomp-devel to enable -fopenmp.
-
-%package libs
-Summary: Runtime library for clang
-Requires: %{name}-resource-filesystem = %{version}
-Recommends: compiler-rt%{?_isa} = %{version}
-# atomic support is not part of compiler-rt
-Recommends: libatomic%{?_isa}
-# libomp-devel is required, so clang can find the omp.h header when compiling
-# with -fopenmp.
-Recommends: libomp-devel%{_isa} = %{version}
-Recommends: libomp%{_isa} = %{version}
-
-%description libs
-Runtime library for clang.
-
-%package devel
-Summary: Development header files for clang
-Requires: %{name}-libs = %{version}-%{release}
-Requires: %{name}%{?_isa} = %{version}-%{release}
-# The clang CMake files reference tools from clang-tools-extra.
-Requires: %{name}-tools-extra%{?_isa} = %{version}-%{release}
-Provides: %{name}-devel(major) = %{maj_ver}
-
-%description devel
-Development header files for clang.
-
-%package resource-filesystem
-Summary: Filesystem package that owns the clang resource directory
-Provides: clang-resource-filesystem(major) = %{maj_ver}
-# This package can't be noarch for compat builds, becuase the x86_64 and i686
-# builds are installed to different prefixes.
-%if %{without compat_build}
-BuildArch:	noarch
-%endif
-
-%description resource-filesystem
-This package owns the clang resouce directory: lib/clang/$version/
-
-%package analyzer
-Summary:	A source code analysis framework
-License:	Apache-2.0 WITH LLVM-exception OR NCSA OR MIT
-# This package can't be noarch for compat builds, becuase the x86_64 and i686
-# builds are installed to different prefixes.
-%if %{without compat_build}
-BuildArch:	noarch
-%endif
-Requires:	%{name} = %{version}-%{release}
-
-%description analyzer
-The Clang Static Analyzer consists of both a source code analysis
-framework and a standalone tool that finds bugs in C and Objective-C
-programs. The standalone tool is invoked from the command-line, and is
-intended to run in tandem with a build of a project or code base.
-
-%package tools-extra
-Summary:	Extra tools for clang
-Requires:	%{name}-libs%{?_isa} = %{version}-%{release}
-Requires:	emacs-filesystem
-
-%description tools-extra
-A set of extra tools built using Clang's tooling API.
-
-%package tools-extra-devel
-Summary: Development header files for clang tools
-Requires: %{name}-tools-extra = %{version}-%{release}
-
-%description tools-extra-devel
-Development header files for clang tools.
-
-# Put git-clang-format in its own package, because it Requires git
-# and we don't want to force users to install all those dependenices if they
-# just want clang.
-%package -n git-clang-format%{?sub_pkg_suffix}
-Summary:	Integration of clang-format for git
-Requires:	%{name}-tools-extra = %{version}-%{release}
-Requires:	git
-Requires:	python3
-
-%description -n git-clang-format%{?sub_pkg_suffix}
-clang-format integration for git.
-
-%if %{without compat_build}
-%package -n python3-clang
-Summary:       Python3 bindings for clang
-Requires:      %{name}-devel%{?_isa} = %{version}-%{release}
-Requires:      python3
-%description -n python3-clang
-%{summary}.
-
-
-%endif
-
-
-%prep
-%if %{without snapshot_build}
-%{gpgverify} --keyring='%{SOURCE4}' --signature='%{SOURCE3}' --data='%{SOURCE0}'
-%endif
-
-
-%if %{without snapshot_build}
-%{gpgverify} --keyring='%{SOURCE4}' --signature='%{SOURCE2}' --data='%{SOURCE1}'
-%endif
-
-%setup -T -q -b 1 -n %{clang_tools_srcdir}
-%autopatch -m200 -p2
-
-# failing test case
-rm test/clang-tidy/checkers/altera/struct-pack-align.cpp
-
-%py3_shebang_fix \
-	clang-tidy/tool/ \
-	clang-include-fixer/find-all-symbols/tool/run-find-all-symbols.py
-
-%setup -q -n %{clang_srcdir}
-%autopatch -M%{?!rhel:100}%{?rhel:200} -p2
-
-# failing test case
-rm test/CodeGen/profile-filter.c
-
-%py3_shebang_fix \
-	tools/clang-format/ \
-	tools/clang-format/git-clang-format \
-	utils/hmaptool/hmaptool \
-	tools/scan-view/bin/scan-view \
-	tools/scan-view/share/Reporter.py \
-	tools/scan-view/share/startfile.py \
-	tools/scan-build-py/bin/* \
-	tools/scan-build-py/libexec/*
-
-%build
-
-# And disable LTO on AArch64 entirely.
-%ifarch aarch64
-%define _lto_cflags %{nil}
-%endif
-
-# Disable LTO to speed up builds
-%if %{with snapshot_build}
-%global _lto_cflags %nil
-%endif
-
-%ifarch s390 s390x aarch64 %ix86 ppc64le
-# Decrease debuginfo verbosity to reduce memory consumption during final library linking
-%global optflags %(echo %{optflags} | sed 's/-g /-g1 /')
-%endif
-
-# Disable dwz on aarch64, because it takes a huge amount of time to decide not to optimize things.
-%ifarch aarch64
-%define _find_debuginfo_dwz_opts %{nil}
-%endif
-
-# We set CLANG_DEFAULT_PIE_ON_LINUX=OFF and PPC_LINUX_DEFAULT_IEEELONGDOUBLE=ON to match the
-# defaults used by Fedora's GCC.
-%cmake -G Ninja \
-	-DCLANG_DEFAULT_PIE_ON_LINUX=OFF \
-%if 0%{?fedora} || 0%{?rhel} > 9
-	-DPPC_LINUX_DEFAULT_IEEELONGDOUBLE=ON \
-%endif
-	-DLLVM_PARALLEL_LINK_JOBS=1 \
-	-DLLVM_LINK_LLVM_DYLIB:BOOL=ON \
-	-DCMAKE_BUILD_TYPE=RelWithDebInfo \
-	-DPYTHON_EXECUTABLE=%{__python3} \
-	-DCMAKE_SKIP_RPATH:BOOL=ON \
-%ifarch s390 s390x %ix86 ppc64le
-	-DCMAKE_C_FLAGS_RELWITHDEBINFO="%{optflags} -DNDEBUG" \
-	-DCMAKE_CXX_FLAGS_RELWITHDEBINFO="%{optflags} -DNDEBUG" \
-%endif
-%if %{with compat_build}
-	-DCMAKE_INSTALL_PREFIX=%{install_prefix} \
-	-DLLVM_CMAKE_DIR=%{install_libdir}/cmake/llvm \
-%else
-%if 0%{?__isa_bits} == 64
-	-DLLVM_LIBDIR_SUFFIX=64 \
-%else
-	-DLLVM_LIBDIR_SUFFIX= \
-%endif
-%endif
-	-DCLANG_INCLUDE_TESTS:BOOL=ON \
-	-DLLVM_BUILD_UTILS:BOOL=ON \
-	-DLLVM_EXTERNAL_CLANG_TOOLS_EXTRA_SOURCE_DIR=../%{clang_tools_srcdir} \
-	-DLLVM_EXTERNAL_LIT=%{_bindir}/lit \
-	-DLLVM_LIT_ARGS="-vv" \
-	-DLLVM_MAIN_SRC_DIR=%{_datadir}/llvm/src \
-	\
-%if %{with snapshot_build}
-	-DLLVM_VERSION_SUFFIX="%{llvm_snapshot_version_suffix}" \
-%endif
-	\
-%if %{with compat_build}
-	-DLLVM_TABLEGEN_EXE:FILEPATH=%{_bindir}/llvm-tblgen-%{maj_ver} \
-%else
-	-DLLVM_TABLEGEN_EXE:FILEPATH=%{_bindir}/llvm-tblgen \
-%endif
-	-DLLVM_COMMON_CMAKE_UTILS=%{install_datadir}/llvm/cmake \
-	-DCLANG_ENABLE_ARCMT:BOOL=ON \
-	-DCLANG_ENABLE_STATIC_ANALYZER:BOOL=ON \
-	-DCLANG_INCLUDE_DOCS:BOOL=ON \
-	-DCLANG_PLUGIN_SUPPORT:BOOL=ON \
-	-DENABLE_LINKER_BUILD_ID:BOOL=ON \
-	-DLLVM_ENABLE_EH=ON \
-	-DLLVM_ENABLE_RTTI=ON \
-	-DLLVM_BUILD_DOCS=ON \
-	-DLLVM_ENABLE_SPHINX=ON \
-	-DCLANG_LINK_CLANG_DYLIB=ON \
-	-DSPHINX_WARNINGS_AS_ERRORS=OFF \
-	\
-	-DCLANG_BUILD_EXAMPLES:BOOL=OFF \
-	-DBUILD_SHARED_LIBS=OFF \
-	-DLLVM_SHLIB_SYMBOL_VERSION=LLVM_%{maj_ver} \
-	-DCLANG_REPOSITORY_STRING="%{?dist_vendor} %{version}-%{release}" \
-%if %{with compat_build}
-	-DCLANG_RESOURCE_DIR=../../../lib/clang/%{maj_ver} \
-%else
-	-DCLANG_RESOURCE_DIR=../lib/clang/%{maj_ver} \
-%endif
-	-DCLANG_DEFAULT_UNWINDLIB=libgcc
-
-%cmake_build
-
-%install
-
-%cmake_install
-
-# Add a symlink in /usr/bin to clang-format-diff
-ln -s %{install_datadir}/clang/clang-format-diff.py %{buildroot}%{install_bindir}/clang-format-diff
-
-# File in the macros file for other packages to use.  We are not doing this
-# in the compat package, because the version macros would # conflict with
-# eachother if both clang and the clang compat package were installed together.
-%if %{without compat_build}
-install -p -m0644 -D %{SOURCE5} %{buildroot}%{_rpmmacrodir}/macros.%{name}
-sed -i -e "s|@@CLANG_MAJOR_VERSION@@|%{maj_ver}|" \
-       -e "s|@@CLANG_MINOR_VERSION@@|%{min_ver}|" \
-       -e "s|@@CLANG_PATCH_VERSION@@|%{patch_ver}|" \
-       %{buildroot}%{_rpmmacrodir}/macros.%{name}
-
-# install clang python bindings
-mkdir -p %{buildroot}%{python3_sitelib}/clang/
-install -p -m644 bindings/python/clang/* %{buildroot}%{python3_sitelib}/clang/
-%py_byte_compile %{__python3} %{buildroot}%{python3_sitelib}/clang
-
-# install scanbuild-py to python sitelib.
-mv %{buildroot}%{_prefix}/%{_lib}/{libear,libscanbuild} %{buildroot}%{python3_sitelib}
-%py_byte_compile %{__python3} %{buildroot}%{python3_sitelib}/{libear,libscanbuild}
-
-# Move emacs integration files to the correct directory
-mkdir -p %{buildroot}%{_emacs_sitestartdir}
-for f in clang-format.el clang-rename.el clang-include-fixer.el; do
-mv %{buildroot}{%{_datadir}/clang,%{_emacs_sitestartdir}}/$f
-done
-
-# Create Manpage symlinks
-ln -s clang.1.gz %{buildroot}%{_mandir}/man1/clang++.1.gz
-ln -s clang.1.gz %{buildroot}%{_mandir}/man1/clang-%{maj_ver}.1.gz
-ln -s clang.1.gz %{buildroot}%{_mandir}/man1/clang++-%{maj_ver}.1.gz
-
-# Fix permission
-chmod u-x %{buildroot}%{_mandir}/man1/scan-build.1*
-
-# Add clang++-{version} symlink
-ln -s clang++ %{buildroot}%{_bindir}/clang++-%{maj_ver}
-
-%else
-# Not sure where to put these python modules for the compat build.
-rm -Rf %{buildroot}%{install_libdir}/{libear,libscanbuild}
-
-# Not sure where to put the emacs integration files for the compat build.
-rm -Rf %{buildroot}%{install_datadir}/clang/*.el
-
-# Not sure what to do with man pages for the compat builds
-rm -Rf %{buildroot}%{install_prefix}/share/man/
-
-# Add version suffix to binaries
-mkdir -p %{buildroot}%{_bindir}
-for f in %{buildroot}/%{install_bindir}/*; do
-  filename=`basename $f`
-  if echo $filename | grep -e '%{maj_ver}'; then
-    continue
-  fi
-  ln -s ../../%{install_bindir}/$filename %{buildroot}/%{_bindir}/$filename-%{maj_ver}
-done
-
-# Add clang++-{version} symlink
-ln -s ../../%{install_bindir}/clang++  %{buildroot}%{install_bindir}/clang++-%{maj_ver}
-
-%endif
-
-# Fix permissions of scan-view scripts
-chmod a+x %{buildroot}%{install_datadir}/scan-view/{Reporter.py,startfile.py}
-
-# multilib fix
-%multilib_fix_c_header --file %{install_includedir}/clang/Config/config.h
-
-# remove editor integrations (bbedit, sublime, emacs, vim)
-rm -vf %{buildroot}%{install_datadir}/clang/clang-format-bbedit.applescript
-rm -vf %{buildroot}%{install_datadir}/clang/clang-format-sublime.py*
-
-# TODO: Package html docs
-rm -Rvf %{buildroot}%{install_docdir}/Clang/clang/html
-rm -Rvf %{buildroot}%{install_datadir}/clang/clang-doc-default-stylesheet.css
-rm -Rvf %{buildroot}%{install_datadir}/clang/index.js
-
-# TODO: What are the Fedora guidelines for packaging bash autocomplete files?
-rm -vf %{buildroot}%{install_datadir}/clang/bash-autocomplete.sh
-
-
-# Create sub-directories in the clang resource directory that will be
-# populated by other packages
-mkdir -p %{buildroot}%{_prefix}/lib/clang/%{maj_ver}/{bin,include,lib,share}/
-
-
-%check
-%if %{with check}
-# Build test dependencies separately, to prevent invocations of host clang from being affected
-# by LD_LIBRARY_PATH below.
-%cmake_build --target clang-test-depends \
-    ExtraToolsUnitTests ClangdUnitTests ClangIncludeCleanerUnitTests ClangPseudoUnitTests
-# requires lit.py from LLVM utilities
-LD_LIBRARY_PATH=%{buildroot}/%{install_libdir} %{__ninja} check-all -C %{__cmake_builddir}
-%endif
-
-
-%files
-%license LICENSE.TXT
-%{install_bindir}/clang
-%{install_bindir}/clang++
-%{install_bindir}/clang-%{maj_ver}
-%{install_bindir}/clang++-%{maj_ver}
-%{install_bindir}/clang-cl
-%{install_bindir}/clang-cpp
-%if %{without compat_build}
-%{_mandir}/man1/clang.1.gz
-%{_mandir}/man1/clang++.1.gz
-%{_mandir}/man1/clang-%{maj_ver}.1.gz
-%{_mandir}/man1/clang++-%{maj_ver}.1.gz
-%else
-%{_bindir}/clang-%{maj_ver}
-%{_bindir}/clang++-%{maj_ver}
-%{_bindir}/clang-cl-%{maj_ver}
-%{_bindir}/clang-cpp-%{maj_ver}
-%endif
-
-%files libs
-%{_prefix}/lib/clang/%{maj_ver}/include/*
-%{install_libdir}/*.so.*
-
-%files devel
-%{install_libdir}/*.so
-%{install_includedir}/clang/
-%{install_includedir}/clang-c/
-%{install_libdir}/cmake/*
-%{install_bindir}/clang-tblgen
-%if %{with compat_build}
-%{_bindir}/clang-tblgen-%{maj_ver}
-%endif
-%dir %{install_datadir}/clang/
-
-%files resource-filesystem
-%dir %{_prefix}/lib/clang/
-%dir %{_prefix}/lib/clang/%{maj_ver}/
-%dir %{_prefix}/lib/clang/%{maj_ver}/bin/
-%dir %{_prefix}/lib/clang/%{maj_ver}/include/
-%dir %{_prefix}/lib/clang/%{maj_ver}/lib/
-%dir %{_prefix}/lib/clang/%{maj_ver}/share/
-%if %{without compat_build}
-%{_rpmmacrodir}/macros.%{name}
-%endif
-
-
-%files analyzer
-%{install_bindir}/scan-view
-%{install_bindir}/scan-build
-%{install_bindir}/analyze-build
-%{install_bindir}/intercept-build
-%{install_bindir}/scan-build-py
-%if %{with compat_build}
-%{_bindir}/scan-view-%{maj_ver}
-%{_bindir}/scan-build-%{maj_ver}
-%{_bindir}/analyze-build-%{maj_ver}
-%{_bindir}/intercept-build-%{maj_ver}
-%{_bindir}/scan-build-py-%{maj_ver}
-%endif
-%{install_libexecdir}/ccc-analyzer
-%{install_libexecdir}/c++-analyzer
-%{install_libexecdir}/analyze-c++
-%{install_libexecdir}/analyze-cc
-%{install_libexecdir}/intercept-c++
-%{install_libexecdir}/intercept-cc
-%{install_datadir}/scan-view/
-%{install_datadir}/scan-build/
-%if %{without compat_build}
-%{_mandir}/man1/scan-build.1.*
-%{python3_sitelib}/libear
-%{python3_sitelib}/libscanbuild
-%endif
-
-
-%files tools-extra
-%{install_bindir}/amdgpu-arch
-%{install_bindir}/clang-apply-replacements
-%{install_bindir}/clang-change-namespace
-%{install_bindir}/clang-check
-%{install_bindir}/clang-doc
-%{install_bindir}/clang-extdef-mapping
-%{install_bindir}/clang-format
-%{install_bindir}/clang-include-cleaner
-%{install_bindir}/clang-include-fixer
-%{install_bindir}/clang-move
-%{install_bindir}/clang-offload-bundler
-%{install_bindir}/clang-offload-packager
-%{install_bindir}/clang-linker-wrapper
-%{install_bindir}/clang-pseudo
-%{install_bindir}/clang-query
-%{install_bindir}/clang-refactor
-%{install_bindir}/clang-rename
-%{install_bindir}/clang-reorder-fields
-%{install_bindir}/clang-repl
-%{install_bindir}/clang-scan-deps
-%{install_bindir}/clang-tidy
-%{install_bindir}/clangd
-%{install_bindir}/diagtool
-%{install_bindir}/hmaptool
-%{install_bindir}/nvptx-arch
-%{install_bindir}/pp-trace
-%{install_bindir}/c-index-test
-%{install_bindir}/find-all-symbols
-%{install_bindir}/modularize
-%{install_bindir}/clang-format-diff
-%{install_bindir}/run-clang-tidy
-%if %{with compat_build}
-%{_bindir}/amdgpu-arch-%{maj_ver}
-%{_bindir}/clang-apply-replacements-%{maj_ver}
-%{_bindir}/clang-change-namespace-%{maj_ver}
-%{_bindir}/clang-check-%{maj_ver}
-%{_bindir}/clang-doc-%{maj_ver}
-%{_bindir}/clang-extdef-mapping-%{maj_ver}
-%{_bindir}/clang-format-%{maj_ver}
-%{_bindir}/clang-include-cleaner-%{maj_ver}
-%{_bindir}/clang-include-fixer-%{maj_ver}
-%{_bindir}/clang-move-%{maj_ver}
-%{_bindir}/clang-offload-bundler-%{maj_ver}
-%{_bindir}/clang-offload-packager-%{maj_ver}
-%{_bindir}/clang-linker-wrapper-%{maj_ver}
-%{_bindir}/clang-pseudo-%{maj_ver}
-%{_bindir}/clang-query-%{maj_ver}
-%{_bindir}/clang-refactor-%{maj_ver}
-%{_bindir}/clang-rename-%{maj_ver}
-%{_bindir}/clang-reorder-fields-%{maj_ver}
-%{_bindir}/clang-repl-%{maj_ver}
-%{_bindir}/clang-scan-deps-%{maj_ver}
-%{_bindir}/clang-tidy-%{maj_ver}
-%{_bindir}/clangd-%{maj_ver}
-%{_bindir}/diagtool-%{maj_ver}
-%{_bindir}/hmaptool-%{maj_ver}
-%{_bindir}/nvptx-arch-%{maj_ver}
-%{_bindir}/pp-trace-%{maj_ver}
-%{_bindir}/c-index-test-%{maj_ver}
-%{_bindir}/find-all-symbols-%{maj_ver}
-%{_bindir}/modularize-%{maj_ver}
-%{_bindir}/clang-format-diff-%{maj_ver}
-%{_bindir}/run-clang-tidy-%{maj_ver}
-%else
-%{_mandir}/man1/diagtool.1.gz
-%{_emacs_sitestartdir}/clang-format.el
-%{_emacs_sitestartdir}/clang-rename.el
-%{_emacs_sitestartdir}/clang-include-fixer.el
-%endif
-%{install_datadir}/clang/clang-format.py*
-%{install_datadir}/clang/clang-format-diff.py*
-%{install_datadir}/clang/clang-include-fixer.py*
-%{install_datadir}/clang/clang-tidy-diff.py*
-%{install_datadir}/clang/run-find-all-symbols.py*
-%{install_datadir}/clang/clang-rename.py*
-
-%files tools-extra-devel
-%{install_includedir}/clang-tidy/
-
-%files -n git-clang-format%{?sub_pkg_suffix}
-%{install_bindir}/git-clang-format
-%if %{with compat_build}
-%{_bindir}/git-clang-format-%{maj_ver}
-%endif
-
-%if %{without compat_build}
-%files -n python3-clang
-%{python3_sitelib}/clang/
-
-
-%endif
-%changelog
-* Fri Jan 16 2026 Fedora Release Engineering <releng@fedoraproject.org> - 17.0.6-13
-- Rebuilt for https://fedoraproject.org/wiki/Fedora_44_Mass_Rebuild
-
-* Fri Jan 16 2026 Fedora Release Engineering <releng@fedoraproject.org> - 17.0.6-12
-- Rebuilt for https://fedoraproject.org/wiki/Fedora_44_Mass_Rebuild
-
-* Wed Jul 23 2025 Fedora Release Engineering <releng@fedoraproject.org> - 17.0.6-11
-- Rebuilt for https://fedoraproject.org/wiki/Fedora_43_Mass_Rebuild
-
-* Thu Jan 16 2025 Fedora Release Engineering <releng@fedoraproject.org> - 17.0.6-10
-- Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild
-
-* Thu Oct 03 2024 Tom Stellard <tstellar@redhat.com> - 17.0.6-9
-- Add symbol versions to libclang-cpp.so
-
-* Wed Jul 17 2024 Fedora Release Engineering <releng@fedoraproject.org> - 17.0.6-8
-- Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild
-
-* Wed Mar 06 2024 Tom Stellard <tstellar@redhat.com> - 17.0.6-7
-- Fix clang resource directory to match compiler-rt
-- Fix provides for clang-resource-filesystem
-
-* Fri Jan 26 2024 Kefu Chai <kefu.chai@scylladb.com> - 17.0.6-6
-- Fix the too-early instantiation of conditional "explict" by applying the patch
-  of https://github.com/llvm/llvm-project/commit/128b3b61fe6768c724975fd1df2be0abec848cf6
-
-* Tue Jan 23 2024 Fedora Release Engineering <releng@fedoraproject.org> - 17.0.6-5
-- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild
-
-%{?llvm_snapshot_changelog_entry}
-
-* Mon Jan 22 2024 Nikita Popov <npopov@redhat.com> - 17.0.6-4
-- Fix build with GCC 14 on ARM. Fix rhbz#2259254.
-
-* Fri Jan 19 2024 Fedora Release Engineering <releng@fedoraproject.org> - 17.0.6-3
-- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild
-
-* Mon Dec 18 2023 Jeremy Newton <alexjnewt at hotmail dot com> - 17.0.6-2
-- Add clang-devel(major) provides
-
-* Tue Nov 28 2023 Tulio Magno Quites Machado Filho <tuliom@redhat.com> - 17.0.6-1
-- Update to LLVM 17.0.6
-
-* Tue Nov 14 2023 Tulio Magno Quites Machado Filho <tuliom@redhat.com> - 17.0.5-1
-- Update to LLVM 17.0.5
-
-* Wed Nov 01 2023 Tulio Magno Quites Machado Filho <tuliom@redhat.com> - 17.0.4-1
-- Update to LLVM 17.0.4
-
-* Tue Oct 17 2023 Tulio Magno Quites Machado Filho <tuliom@redhat.com> - 17.0.3-1
-- Update to LLVM 17.0.3
-
-* Mon Oct 09 2023 Timm Bäder <tbaeder@redhat.com> - 17.0.2-2
-- Backport upstream fixes for https://issues.redhat.com/browse/RHEL-1650
-
-* Wed Oct 04 2023 Tulio Magno Quites Machado Filho <tuliom@redhat.com> - 17.0.2-1
-- Update to LLVM 17.0.2
-
-* Sat Sep 23 2023 Tulio Magno Quites Machado Filho <tuliom@redhat.com> - 17.0.1-1
-- Update to LLVM 17.0.1
-
-* Tue Sep 19 2023 Tulio Magno Quites Machado Filho <tuliom@redhat.com> - 17.0.0~rc4-4
-- Re-add dwarf4 patch. Fix rhbz#2239619.
-
-* Tue Sep 19 2023 Tulio Magno Quites Machado Filho <tuliom@redhat.com> - 17.0.0~rc4-3
-- Move macros.clang to resource-filesystem
-
-* Mon Sep 18 2023 Alessandro Astone <ales.astone@gmail.com> - 17.0.0~rc4-2
-- Fix resource-filesystem after https://fedoraproject.org/wiki/Changes/LLVM-17
-
-* Wed Sep 06 2023 Tom Stellard <tstellar@redhat.com> - 17.0.0~rc3-2
-- Drop dwarf4 patch in favor of config files
-
-* Tue Sep 05 2023 Tulio Magno Quites Machado Filho <tuliom@redhat.com> - 17.0.0~rc4-1
-- Update to LLVM 17.0.0 RC4
-
-* Wed Aug 23 2023 Tulio Magno Quites Machado Filho <tuliom@redhat.com> - 17.0.0~rc3-1
-- Update to LLVM 17.0.0 RC3
-
-* Mon Aug 21 2023 Tulio Magno Quites Machado Filho <tuliom@redhat.com> - 17.0.0~rc2-1
-- Update to LLVM 17.0.0 RC2
-
-* Tue Aug 01 2023 Tulio Magno Quites Machado Filho <tuliom@redhat.com> - 17.0.0~rc1-1
-- Update to LLVM 17.0.0 RC1
-
-* Wed Jul 19 2023 Fedora Release Engineering <releng@fedoraproject.org> - 16.0.6-3
-- Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild
-
-* Wed Jul 12 2023 Tulio Magno Quites Machado Filho <tuliom@redhat.com> - 16.0.6-2
-- Fix rhbz#2221585
-
-* Fri Jun 16 2023 Tulio Magno Quites Machado Filho <tuliom@redhat.com> - 16.0.6-1
-- Update to LLVM 16.0.6
-
-* Fri Jun 16 2023 Python Maint <python-maint@redhat.com> - 16.0.5-4
-- Rebuilt for Python 3.12
-
-* Thu Jun 15 2023 Nikita Popov <npopov@redhat.com> - 16.0.5-3
-- Use llvm-cmake-utils package
-
-* Thu Jun 15 2023 Python Maint <python-maint@redhat.com> - 16.0.5-2
-- Rebuilt for Python 3.12
-
-* Tue Jun 06 2023 Tulio Magno Quites Machado Filho <tuliom@redhat.com> - 16.0.5-1
-- Update to LLVM 16.0.5
-
-* Fri May 19 2023 Tulio Magno Quites Machado Filho <tuliom@redhat.com> - 16.0.4-1
-- Update to LLVM 16.0.4
-
-* Mon May 15 2023 Tulio Magno Quites Machado Filho <tuliom@redhat.com> - 16.0.3-2
-- Remove patch for ppc64le triple in favor of https://reviews.llvm.org/D149746
-
-* Tue May 09 2023 Tulio Magno Quites Machado Filho <tuliom@redhat.com> - 16.0.3-1
-- Update to LLVM 16.0.3
-
-* Wed Apr 26 2023 Tulio Magno Quites Machado Filho <tuliom@redhat.com> - 16.0.2-1
-- Update to LLVM 16.0.2
-
-* Wed Apr 12 2023 Tulio Magno Quites Machado Filho <tuliom@redhat.com> - 16.0.1-1
-- Update to LLVM 16.0.1
-
-* Wed Apr 12 2023 Timm Bäder <tbaeder@redhat.com> - 16.0.0-3
-- Use correct source for clang.macros file
-
-* Thu Mar 23 2023 Tulio Magno Quites Machado Filho <tuliom@redhat.com> - 16.0.0-2
-- Remove unnecessary patch and macro
-
-* Mon Mar 20 2023 Tulio Magno Quites Machado Filho <tuliom@redhat.com> - 16.0.0-1
-- Update to LLVM 16.0.0
-
-* Thu Mar 16 2023 Tulio Magno Quites Machado Filho <tuliom@redhat.com> - 16.0.0~rc4-2
-- Fix tests with the right triple
-
-* Tue Mar 14 2023 Tulio Magno Quites Machado Filho <tuliom@redhat.com> - 16.0.0~rc4-1
-- Update to LLVM 16.0.0 RC4
-
-* Tue Mar 14 2023 Tulio Magno Quites Machado Filho <tuliom@redhat.com> - 16.0.0~rc3-2
-- Fix RPM macro clang_resource_dir
-
-* Thu Feb 23 2023 Tulio Magno Quites Machado Filho <tuliom@redhat.com> - 16.0.0~rc3-1
-- Update to LLVM 16.0.0 RC3
-
-* Thu Jan 19 2023 Tulio Magno Quites Machado Filho <tuliom@redhat.com> - 15.0.7-3
-- Update license to SPDX identifiers.
-- Include the Apache license adopted in 2019.
-
-* Wed Jan 18 2023 Fedora Release Engineering <releng@fedoraproject.org> - 15.0.7-2
-- Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild
-
-* Thu Jan 12 2023 Nikita Popov <npopov@redhat.com> - 15.0.7-1
-- Update to LLVM 15.0.7
-
-* Thu Jan 12 2023 Nikita Popov <npopov@redhat.com> - 15.0.6-5
-- Fix resource-filesystem ownership conflict
-
-* Mon Jan 09 2023 Tom Stellard <tstellar@redhat.com> - 15.0.6-4
-- Omit frame pointers when building
-
-* Wed Dec 21 2022 Nikita Popov <npopov@redhat.com> - 15.0.6-3
-- Add clang-devel dep to python3-clang
-
-* Mon Dec 12 2022 Nikita Popov <npopov@redhat.com> - 15.0.6-2
-- Backport patches for ucrt64 toolchain detection
-
-* Mon Dec 05 2022 Nikita Popov <npopov@redhat.com> - 15.0.6-1
-- Update to LLVM 15.0.6
-
-* Thu Nov 03 2022 Nikita Popov <npopov@redhat.com> - 15.0.4-1
-- Update to LLVM 15.0.4
-
-* Wed Oct 19 2022 Nikita Popov <npopov@redhat.com> - 15.0.0-6
-- Enable ieeelongdouble for ppc64le, fix rhbz#2136099
-
-* Thu Oct 13 2022 Nikita Popov <npopov@redhat.com> - 15.0.0-5
-- Default to non-pie, fix rhbz#2134146
-
-* Wed Oct 05 2022 sguelton@redhat.com - 15.0.0-4
-- Package clang-tidy headers in clang-tools-extra-devel, fix rhbz#2123479
-
-* Thu Sep 22 2022 Nikita Popov <npopov@redhat.com> - 15.0.0-3
-- Add patch for inline builtins with asm label
-
-* Sat Sep 17 2022 sguelton@redhat.com - 15.0.0-3
-- Improve integration of llvm's libunwind
-
-* Wed Sep 14 2022 Nikita Popov <npopov@redhat.com> - 15.0.0-2
-- Downgrade implicit int and implicit function declaration to warning only
-
-* Tue Sep 06 2022 Nikita Popov <npopov@redhat.com> - 15.0.0-1
-- Update to LLVM 15.0.0
-
-* Mon Aug 29 2022 sguelton@redhat.com - 14.0.5-7
-- Add a Recommends on libatomic, see rhbz#2118592
-
-* Wed Aug 10 2022 Nikita Popov <npopov@redhat.com> - 14.0.5-6
-- Revert powerpc -mabi=ieeelongdouble default
-
-* Thu Aug 04 2022 Tom Stellard <tstellar@redhat.com> - 14.0.5-5
-- Re-enable ieee128 as the default long double format on ppc64le
-
-* Thu Jul 28 2022 Amit Shah <amitshah@fedoraproject.org> - 14.0.5-4
-- Use the dist_vendor macro to identify the distribution
-
-* Wed Jul 20 2022 Fedora Release Engineering <releng@fedoraproject.org> - 14.0.5-3
-- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild
-
-* Thu Jun 30 2022 Miro Hrončok <mhroncok@redhat.com> - 14.0.5-2
-- Revert "Use the ieee128 format for long double on ppc64le" until rhbz#2100546 is fixed
-
-* Tue Jun 14 2022 Timm Bäder <tbaeder@redhat.com> - 14.0.5-1
-- Update to 14.0.5
-
-* Mon Jun 13 2022 Python Maint <python-maint@redhat.com> - 14.0.0-4
-- Rebuilt for Python 3.11
-
-* Thu May 19 2022 Tom Stellard <tstellar@redhat.com> - 14.0.0-3
-- Use the ieee128 format for long double on ppc64le
-
-* Mon Apr 04 2022 Jeremy Newton <alexjnewt AT hotmail DOT com> - 14.0.0-2
-- Add patch for HIP (cherry-picked from llvm trunk, to be LLVM15)
-
-* Wed Mar 23 2022 Timm Bäder <tbaeder@redhat.com> - 14.0.0-1
-- Update to 14.0.0
-
-* Wed Feb 16 2022 Tom Stellard <tstellar@redhat.com> - 13.0.1-2
-- Fix some rpmlinter errors
-
-* Thu Feb 03 2022 Nikita Popov <npopov@redhat.com> - 13.0.1-1
-- Update to LLVM 13.0.1 final
-
-* Tue Feb 01 2022 Nikita Popov <npopov@redhat.com> - 13.0.1~rc3-1
-- Update to LLVM 13.0.1rc3
-
-* Wed Jan 19 2022 Fedora Release Engineering <releng@fedoraproject.org> - 13.0.1~rc2-2
-- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild
-
-* Fri Jan 14 2022 Nikita Popov <npopov@redhat.com> - 13.0.1~rc2-1
-- Update to LLVM 13.0.1rc2
-
-* Wed Jan 12 2022 Nikita Popov <npopov@redhat.com> - 13.0.1~rc1-1
-- Update to LLVM 13.0.1rc1
-
-* Thu Oct 28 2021 Tom Stellard <tstellar@redhat.com> - 13.0.0-5
-- Make lld the default linker on arm
-
-* Wed Oct 27 2021 Tom Stellard <tstellar@redhat.com> - 13.0.0-4
-- Remove Conflicts: compiler-rt for newer versions of compiler-rt
-
-* Wed Oct 06 2021 Tom Stellard <tstellar@redhat.com> - 13.0.0-3
-- Fix gcc detection with redhat triples
-
-* Tue Oct 05 2021 Tom Stellard <tstellar@redhat.com> - 13.0.0-2
-- Drop abi_revision from soname
-
-* Fri Oct 01 2021 Tom Stellard <tstellar@redhat.com> - 13.0.0-1
-- 13.0.0 Release
-
-* Sat Sep 18 2021 Tom Stellard <tstellar@redhat.com> - 13.0.0~rc1-5
-- 13.0.0-rc3 Release
-
-* Tue Sep 14 2021 Konrad Kleine <kkleine@redhat.com> - 13.0.0~rc1-4
-- Add --without=check option
-
-* Fri Sep 10 2021 sguelton@redhat.com - 13.0.0~rc1-3
-- Apply scan-build-py intergation patch
-
-* Thu Sep 09 2021 Tom Stellard <tstellar@redhat.com> - 13.0.0~rc1-2
-- Add macros.clang file
-
-* Fri Aug 06 2021 Tom Stellard <tstellar@redhat.com> - 13.0.0~rc1-1
-- 13.0.0-rc1 Release
-
-* Thu Jul 22 2021 Tom Stellard <tstellar@redhat.com> - 12.0.1-3
-- Fix compat build
-
-* Wed Jul 21 2021 Fedora Release Engineering <releng@fedoraproject.org> - 12.0.1-2
-- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild
-
-* Tue Jul 13 2021 Tom Stellard <tstellar@redhat.com> - 12.0.1-1
-- 12.0.1 Release
-
-* Fri Jul 09 2021 Tom Stellard <tstellar@redhat.com> - 12.0.1~rc3-2
-- Fix ambiguous python shebangs
-
-* Wed Jun 30 2021 Tom Stellard <tstellar@redhat.com> - clang-12.0.1~rc3-1
-- 12.0.1-rc3 Release
-
-* Tue Jun 08 2021 Tom Stellard <tstellar@redhat.com> - 12.0.1~rc1-3
-- Only enable -funwind-tables by default on Fedora arches
-
-* Fri Jun 04 2021 Python Maint <python-maint@redhat.com> - 12.0.1~rc1-2
-- Rebuilt for Python 3.10
-
-* Thu May 27 2021 Tom Stellard <tstellar@redhat.com> - clang-12.0.1~rc1-1
-- 12.0.1-rc1 Release
-
-* Tue May 18 2021 sguelton@redhat.com - 12.0.0-2
-- Use the alternative-managed version of llvm-config
-
-* Fri Apr 16 2021 Tom Stellard <tstellar@redhat.cm> - 12.0.0-1
-- 12.0.0 Release
-
-* Wed Apr 14 2021 Tom Stellard <tstellar@redhat.com> - 12.0.0-0.12.rc5
-- Add symlink to clang-format-diff in /usr/bin
-- rhbz#1939018
-
-* Thu Apr 08 2021 sguelton@redhat.com - 12.0.0-0.11.rc5
-- New upstream release candidate
-
-* Sat Apr 03 2021 sguelton@redhat.com - 12.0.0-0.10.rc4
-- Make pyc files from python3-clang reproducible
-
-* Fri Apr 02 2021 sguelton@redhat.com - 12.0.0-0.9.rc4
-- New upstream release candidate
-
-* Wed Mar 31 2021 Jonathan Wakely <jwakely@redhat.com> - 12.0.0-0.8.rc3
-- Rebuilt for removed libstdc++ symbols (#1937698)
-
-* Mon Mar 15 2021 sguelton@redhat.com - 12.0.0-0.7.rc3
-- Apply patch D97846 to fix rhbz#1934065
-
-* Mon Mar 15 2021 Timm Bäder <tbaeder@redhat.com> 12.0.0-0.6.rc3
-- Set CLANG_DEFAULT_UNWIND_LIB instead of using custom patch
-- Add toolchains test to the tests.yml
-
-* Thu Mar 11 2021 sguelton@redhat.com - 12.0.0-0.5.rc3
-- LLVM 12.0.0 rc3
-
-* Tue Mar 09 2021 sguelton@redhat.com - 12.0.0-0.4.rc2
-- rebuilt
-
-* Mon Mar 01 2021 sguelton@redhat.com - 12.0.0-0.3.rc2
-- Reapply some wrongly removed patch
-
-* Wed Feb 24 2021 sguelton@redhat.com - 12.0.0-0.2.rc2
-- 12.0.0-rc2 release
-
-* Sun Feb 14 2021 sguelton@redhat.com - 12.0.0-0.1.rc1
-- 12.0.0-rc1 release
-
-* Tue Feb 09 2021 Tom Stellard <tstellar@redhat.com> - 11.1.0-0.5.rc2
-- Remove some unnecessary scan-view files
-
-* Tue Jan 26 2021 Fedora Release Engineering <releng@fedoraproject.org> - 11.1.0-0.4.rc2
-- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild
-
-* Fri Jan 22 2021 Serge Guelton - 11.1.0-0.3.rc2
-- 11.1.0-rc2 release
-
-* Wed Jan 20 2021 Serge Guelton - 11.1.0-0.2.rc1
-- rebuilt with https://reviews.llvm.org/D94941 applied.
-
-* Thu Jan 14 2021 Serge Guelton - 11.1.0-0.1.rc1
-- 11.1.0-rc1 release
-
-* Wed Jan 06 2021 Serge Guelton - 11.0.1-4
-- LLVM 11.0.1 final
-
-* Sun Dec 20 2020 sguelton@redhat.com - 11.0.1-3.rc2
-- llvm 11.0.1-rc2
-
-* Wed Dec 16 2020 Tom Stellard <tstellar@redhat.com> - 11.0.1-2.rc1
-- Don't build with -flto
-
-* Tue Dec 01 2020 sguelton@redhat.com - 11.0.1-1.rc1
-- llvm 11.0.1-rc1
-
-* Thu Oct 29 2020 Tom Stellard <tstellar@redhat.com> - 11.0.0-3
-- Remove -ffat-lto-objects compiler flag
-
-* Wed Oct 28 2020 Tom Stellard <tstellar@redhat.com> - 11.0.0-2
-- Add clang-resource-filesystem sub-package
-
-* Thu Oct 15 2020 sguelton@redhat.com - 11.0.0-1
-- Fix NVR
-
-* Mon Oct 12 2020 sguelton@redhat.com - 11.0.0-0.7
-- llvm 11.0.0 - final release
-
-* Thu Oct 08 2020 sguelton@redhat.com - 11.0.0-0.6.rc6
-- 11.0.0-rc6
-
-* Fri Oct 02 2020 sguelton@redhat.com - 11.0.0-0.5.rc5
-- 11.0.0-rc5 Release
-
-* Sun Sep 27 2020 sguelton@redhat.com - 11.0.0-0.4.rc3
-- Fix NVR
-
-* Thu Sep 24 2020 sguelton@redhat.com - 11.0.0-0.1.rc3
-- 11.0.0-rc3 Release
-
-* Tue Sep 22 2020 sguelton@redhat.com - 11.0.0-0.3.rc2
-- Prefer gcc toolchains with libgcc_s
-
-* Tue Sep 01 2020 sguelton@redhat.com - 11.0.0-0.2.rc2
-- Normalize some doc directory locations
-
-* Tue Sep 01 2020 sguelton@redhat.com - 11.0.0-0.1.rc2
-- 11.0.0-rc2 Release
-- Use %%license macro
-
-* Tue Aug 11 2020 Tom Stellard <tstellar@redhat.com> - 11.0.0-0.2.rc1
-- Fix test failures
-
-* Mon Aug 10 2020 Tom Stellard <tstellar@redhat.com> - 11.0.0-0.1.rc1
-- 11.0.0-rc1 Release
-
-* Tue Aug 04 2020 Tom Stellard <tstellar@redhat.com> - 10.0.0-11
-- Remove Requires: emacs-filesystem
-
-* Sat Aug 01 2020 Fedora Release Engineering <releng@fedoraproject.org> - 10.0.0-10
-- Second attempt - Rebuilt for
-  https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild
-
-* Tue Jul 28 2020 Jeff Law <law@redhat.com> - 10.0.0-9
-- Disable LTO on arm and i686
-
-* Mon Jul 27 2020 Fedora Release Engineering <releng@fedoraproject.org> - 10.0.0-8
-- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild
-
-* Mon Jul 20 2020 sguelton@redhat.com - 10.0.0-7
-- Update cmake macro usage
-- Finalize source verification
-
-* Fri Jun 26 2020 Tom Stellard <tstellar@redhat.com> - 10.0.0-6
-- Add cet.h header
-
-* Mon Jun 08 2020 Tom Stellard <tstellar@redhat.com> - 10.0.0-5
-- Accept multiple --config options
-
-* Wed Jun  3 2020 Dan Čermák <dan.cermak@cgc-instruments.com> - 10.0.0-4
-- Add symlink to %%{_libdir}/clang/%%{maj_ver} for persistent access to the resource directory accross minor version bumps
-
-* Mon May 25 2020 Miro Hrončok <mhroncok@redhat.com> - 10.0.0-3
-- Rebuilt for Python 3.9
-
-* Tue May 19 2020 sguelton@redhat.com - 10.0.0-2
-- Backport ad7211df6f257e39da2e5a11b2456b4488f32a1e, see rhbz#1825593
-
-* Thu Mar 26 2020 sguelton@redhat.com - 10.0.0-1
-- 10.0.0 final
-
-* Tue Mar 24 2020 sguelton@redhat.com - 10.0.0-0.11.rc6
-- 10.0.0 rc6
-
-* Sun Mar 22 2020 sguelton@redhat.com - 10.0.0-0.10.rc5
-- Update git-clang-format dependency, see rhbz#1815913
-
-* Fri Mar 20 2020 Tom Stellard <tstellar@redhat.com> - 10.0.0-0.9.rc5
-- Add dependency on libomp-devel
-
-* Fri Mar 20 2020 sguelton@redhat.com - 10.0.0-0.8.rc5
-- 10.0.0 rc5
-
-* Sat Mar 14 2020 sguelton@redhat.com - 10.0.0-0.7.rc4
-- 10.0.0 rc4
-
-* Thu Mar 12 2020 sguelton@redhat.com - 10.0.0-0.6.rc3
-- Move a few files from clang to clang-tools-extra.
-
-* Thu Mar 05 2020 sguelton@redhat.com - 10.0.0-0.5.rc3
-- 10.0.0 rc3
-
-* Tue Feb 25 2020 sguelton@redhat.com - 10.0.0-0.4.rc2
-- Apply -fdiscard-value-names patch.
-
-* Mon Feb 17 2020 sguelton@redhat.com - 10.0.0-0.3.rc2
-- Fix NVR
-
-* Fri Feb 14 2020 sguelton@redhat.com - 10.0.0-0.1.rc2
-- 10.0.0 rc2
-
-* Tue Feb 11 2020 sguelton@redhat.com - 10.0.0-0.2.rc1
-- Explicitly conflicts with any different compiler-rt version, see rhbz#1800705
-
-* Fri Jan 31 2020 Tom Stellard <tstellar@redhat.com> - 10.0.0-0.1.rc1
-- Stop shipping individual component libraries
-- https://fedoraproject.org/wiki/Changes/Stop-Shipping-Individual-Component-Libraries-In-clang-lib-Package
-
-* Fri Jan 31 2020 sguelton@redhat.com - 10.0.0-0.1.rc1
-- 10.0.0 rc1
-
-* Tue Jan 28 2020 Fedora Release Engineering <releng@fedoraproject.org> - 9.0.1-3
-- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild
-
-* Fri Jan 10 2020 Tom Stellard <tstellar@redhat.com> - 9.0.1-2
-- Fix crash with kernel bpf self-tests
-
-* Thu Dec 19 2019 Tom Stellard <tstellar@redhat.com> - 9.0.1-1
-- 9.0.1 Release
-
-* Wed Dec 11 2019 Tom Stellard <tstellar@redhat.com> - 9.0.0-3
-- Add explicit requires for clang-libs to fix rpmdiff errors
-
-* Tue Dec 10 2019 sguelton@redhat.com - 9.0.0-2
-- Activate -funwind-tables on all arches, see rhbz#1655546.
-
-* Thu Sep 19 2019 Tom Stellard <tstellar@redhat.com> - 9.0.0-1
-- 9.0.0 Release
-
-* Wed Sep 11 2019 Tom Stellard <tstellar@redhat.com> - 9.0.0-0.2.rc3
-- Reduce debug info verbosity on ppc64le to avoid OOM errors in koji
-
-* Thu Aug 22 2019 Tom Stellard <tstellar@redhat.com> - 9.0.0-0.1.rc3
-- 9.0.0 Release candidate 3
-
-* Tue Aug 20 2019 sguelton@redhat.com - 8.0.0-4
-- Rebuilt for Python 3.8
-
-* Mon Aug 19 2019 Miro Hrončok <mhroncok@redhat.com> - 8.0.0-3.2
-- Rebuilt for Python 3.8
-
-* Wed Jul 24 2019 Fedora Release Engineering <releng@fedoraproject.org> - 8.0.0-3.1
-- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild
-
-* Thu May 16 2019 sguelton@redhat.com - 8.0.0-3
-- Fix for rhbz#1674031
-
-* Fri Apr 12 2019 sguelton@redhat.com - 8.0.0-2
-- Remove useless patch thanks to GCC upgrade
-
-* Wed Mar 20 2019 sguelton@redhat.com - 8.0.0-1
-- 8.0.0 final
-
-* Tue Mar 12 2019 sguelton@redhat.com - 8.0.0-0.6.rc4
-- 8.0.0 Release candidate 4
-
-* Mon Mar 4 2019 sguelton@redhat.com - 8.0.0-0.5.rc3
-- Cleanup specfile after llvm dependency update
-
-* Mon Mar 4 2019 sguelton@redhat.com - 8.0.0-0.4.rc3
-- 8.0.0 Release candidate 3
-
-* Mon Feb 25 2019 tstellar@redhat.com - 8.0.0-0.3.rc2
-- Fix compiling with -stdlib=libc++
-
-* Thu Feb 21 2019 sguelton@redhat.com - 8.0.0-0.2.rc2
-- 8.0.0 Release candidate 2
-
-* Sat Feb 09 2019 sguelton@redhat.com - 8.0.0-0.1.rc1
-- 8.0.0 Release candidate 1
-
-* Tue Feb 05 2019 sguelton@redhat.com - 7.0.1-6
-- Update patch for Python3 port of scan-view
-
-* Tue Feb 05 2019 sguelton@redhat.com - 7.0.1-5
-- Working CI test suite
-
-* Mon Feb 04 2019 sguelton@redhat.com - 7.0.1-4
-- Workaround gcc-9 bug when compiling bitfields
-
-* Fri Feb 01 2019 sguelton@redhat.com - 7.0.1-3
-- Fix uninitialized error detected by gcc-9
-
-* Thu Jan 31 2019 Fedora Release Engineering <releng@fedoraproject.org> - 7.0.1-2.1
-- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild
-
-* Wed Dec 19 2018 Tom Stellard <tstellar@redhat.com> - 7.0.1-2
-- Fix for rhbz#1657544
-
-* Tue Dec 18 2018 sguelton@redhat.com - 7.0.1-1
-- 7.0.1
-
-* Tue Dec 18 2018 sguelton@redhat.com - 7.0.0-10
-- Install proper manpage symlinks for clang/clang++ versions
-
-* Fri Dec 14 2018 sguelton@redhat.com - 7.0.0-9
-- No longer Ignore -fstack-clash-protection option
-
-* Tue Dec 04 2018 sguelton@redhat.com - 7.0.0-8
-- Ensure rpmlint passes on specfile
-
-* Fri Nov 30 2018 Tom Stellard <tstellar@redhat.com> - 7.0.0-7
-- Drop python2 dependency from clang-tools-extra
-
-* Wed Nov 21 2018 sguelton@redhat.com - 7.0.0-6
-- Prune unneeded reference to llvm-test-suite sub-package
-
-* Mon Nov 19 2018 Tom Stellard <tstellar@redhat.com> - 7.0.0-5
-- Run 'make check-all' instead of 'make check-clang'
-
-* Mon Nov 19 2018 sergesanspaille <sguelton@redhat.com> - 7.0.0-4
-- Avoid Python2 + Python3 dependency for clang-analyzer
-
-* Mon Nov 05 2018 Tom Stellard <tstellar@redhat.com> - 7.0.0-3
-- User helper macro to fixup config.h for multilib
-
-* Tue Oct 02 2018 Tom Stellard <tstellar@redhat.com> - 7.0.0-2
-- Use correct shebang substitution for python scripts
-
-* Mon Sep 24 2018 Tom Stellard <tstellar@redhat.com> - 7.0.0-1
-- 7.0.0 Release
-
-* Wed Sep 19 2018 Tom Stellard <tstellar@redhat.com> - 7.0.0-0.16.rc3
-- Move builtin headers into clang-libs sub-package
-
-* Wed Sep 19 2018 Tom Stellard <tstellar@redhat.com> - 7.0.0-0.15.rc3
-- Remove ambiguous python shebangs
-
-* Thu Sep 13 2018 Tom Stellard <tstellar@redhat.com> - 7.0.0-0.14.rc3
-- Move unversioned shared objects to devel package
-
-* Thu Sep 13 2018 Tom Stellard <tstellar@redhat.com> - 7.0.0-0.13.rc3
-- Rebuild with new llvm-devel that disables rpath on install
-
-* Thu Sep 13 2018 Tom Stellard <tstellar@redhat.com> - 7.0.0-0.12.rc3
-- Fix clang++-7 symlink
-
-* Wed Sep 12 2018 Tom Stellard <tstellar@redhat.com> - 7.0.0-0.11.rc3
-- 7.0.0-rc3 Release
-
-* Mon Sep 10 2018 Tom Stellard <tstellar@redhat.com> - 7.0.0-0.10.rc2
-- Drop siod from llvm-test-suite
-
-* Fri Sep 07 2018 Tom Stellard <tstellar@redhat.com> - 7.0.0-0.9.rc2
-- Drop python2 dependency from clang package
-
-* Thu Sep 06 2018 Tom Stellard <tstellar@redhat.com> - 7.0.0-0.8.rc2
-- Drop all uses of python2 from lit tests
-
-* Sat Sep 01 2018 Tom Stellard <tstellar@redhat.com> - 7.0.0-0.7.rc2
-- Add Fedora specific version string
-
-* Tue Aug 28 2018 Tom Stellard <tstellar@redhat.com> - 7.0.0-0.6.rc2
-- 7.0.0-rc2 Release
-
-* Tue Aug 28 2018 Tom Stellard <tstellar@redhat.com> - 7.0.0-0.5.rc1
-- Enable unit tests
-
-* Fri Aug 17 2018 Tom Stellard <tstellar@redhat.com> - 7.0.0-0.4.rc1
-- Move llvm-test-suite into a sub-package
-
-* Fri Aug 17 2018 Tom Stellard <tstellar@redhat.com> - 7.0.0-0.3.rc1
-- Recommend the same version of compiler-rt
-
-* Wed Aug 15 2018 Tom Stellard <tstellar@redhat.com> - 7.0.0-0.2.rc1
-- Rebuild for f30
-
-* Mon Aug 13 2018 Tom Stellard <tstellar@redhat.com> - 7.0.0-0.1.rc1
-- 7.0.0-rc1 Release
-
-* Mon Jul 23 2018 Tom Stellard <tstellar@redhat.com> - 6.0.1-3
-- Sync spec file with the clang6.0 package
-
-* Thu Jul 12 2018 Fedora Release Engineering <releng@fedoraproject.org> - 6.0.1-2
-- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild
-
-* Tue Jun 26 2018 Tom Stellard <tstellar@redhat.com> - 6.0.1-1
-- 6.0.1 Release
-
-* Wed Jun 13 2018 Tom Stellard <tstellar@redhat.com> - 6.0.1-0.2.rc2
-- 6.0.1-rc2
-
-* Fri May 11 2018 Tom Stellard <tstellar@redhat.com> - 6.0.1-0.1.rc1
-- 6.0.1-rc1 Release
-
-* Fri Mar 23 2018 Tom Stellard <tstellar@redhat.com> - 6.0.0-5
-- Add a clang++-{version} symlink rhbz#1534098
-
-* Thu Mar 22 2018 Tom Stellard <tstellar@redhat.com> - 6.0.0-4
-- Use correct script for running lit tests
-
-* Wed Mar 21 2018 Tom Stellard <tstellar@redhat.com> - 6.0.0-3
-- Fix toolchain detection so we don't default to using cross-compilers:
-  rhbz#1482491
-
-* Mon Mar 12 2018 Tom Stellard <tstellar@redhat.com> - 6.0.0-2
-- Add Provides: clang(major) rhbz#1547444
-
-* Fri Mar 09 2018 Tom Stellard <tstellar@redhat.com> - 6.0.0-1
-- 6.0.0 Release
-
-* Mon Feb 12 2018 Tom Stellard <tstellar@redhat.com> - 6.0.0-0.6.rc2
-- 6.0.0-rc2 Release
-
-* Wed Feb 07 2018 Fedora Release Engineering <releng@fedoraproject.org> - 6.0.0-0.5.rc1
-- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild
-
-* Thu Feb 01 2018 Tom Stellard <tstellar@redhat.com> - 6.0.0-0.4.rc1
-- Package python helper scripts for tools
-
-* Fri Jan 26 2018 Tom Stellard <tstellar@redhat.com> - 6.0.0-0.3.rc1
-- Ignore -fstack-clash-protection option instead of giving an error
-
-* Fri Jan 26 2018 Tom Stellard <tstellar@redhat.com> - 6.0.0-0.2.rc1
-- Package emacs integration files
-
-* Wed Jan 24 2018 Tom Stellard <tstellar@redhat.com> - 6.0.0-0.1.rc1
-- 6.0.0-rc1 Release
-
-* Wed Jan 24 2018 Tom Stellard <tstellar@redhat.com> - 5.0.1-3
-- Rebuild against llvm5.0 compatibility package
-- rhbz#1538231
-
-* Wed Jan 03 2018 Iryna Shcherbina <ishcherb@redhat.com> - 5.0.1-2
-- Update Python 2 dependency declarations to new packaging standards
-  (See https://fedoraproject.org/wiki/FinalizingFedoraSwitchtoPython3)
-
-* Wed Dec 20 2017 Tom Stellard <tstellar@redhat.com> - 5.0.1-1
-- 5.0.1 Release
-
-* Wed Dec 13 2017 Tom Stellard <tstellar@redhat.com> - 5.0.0-3
-- Make compiler-rt a weak dependency and add a weak dependency on libomp
-
-* Mon Nov 06 2017 Merlin Mathesius <mmathesi@redhat.com> - 5.0.0-2
-- Cleanup spec file conditionals
-
-* Mon Oct 16 2017 Tom Stellard <tstellar@redhat.com> - 5.0.0-1
-- 5.0.0 Release
-
-* Wed Oct 04 2017 Rex Dieter <rdieter@fedoraproject.org> - 4.0.1-6
-- python2-clang subpkg (#1490997)
-- tools-extras: tighten (internal) -libs dep
-- %%install: avoid cd
-
-* Wed Aug 30 2017 Tom Stellard <tstellar@redhat.com> - 4.0.1-5
-- Add Requires: python for git-clang-format
-
-* Sun Aug 06 2017 Björn Esser <besser82@fedoraproject.org> - 4.0.1-4
-- Rebuilt for AutoReq cmake-filesystem
-
-* Wed Aug 02 2017 Fedora Release Engineering <releng@fedoraproject.org> - 4.0.1-3
-- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild
-
-* Wed Jul 26 2017 Fedora Release Engineering <releng@fedoraproject.org> - 4.0.1-2
-- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild
-
-* Fri Jun 23 2017 Tom Stellard <tstellar@redhat.com> - 4.0.1-1
-- 4.0.1 Release.
-
-* Fri Jun 16 2017 Tom Stellard <tstellar@redhat.com> - 4.0.0-8
-- Enable make check-clang
-
-* Mon Jun 12 2017 Tom Stellard <tstellar@redhat.com> - 4.0.0-7
-- Package git-clang-format
-
-* Thu Jun 08 2017 Tom Stellard <tstellar@redhat.com> - 4.0.0-6
-- Generate man pages
-
-* Thu Jun 08 2017 Tom Stellard <tstellar@redhat.com> - 4.0.0-5
-- Ignore test-suite failures until all arches are fixed.
-
-* Mon Apr 03 2017 Tom Stellard <tstellar@redhat.com> - 4.0.0-4
-- Run llvm test-suite
-
-* Mon Mar 27 2017 Tom Stellard <tstellar@redhat.com> - 4.0.0-3
-- Enable eh/rtti, which are required by lldb.
-
-* Fri Mar 24 2017 Tom Stellard <tstellar@redhat.com> - 4.0.0-2
-- Fix clang-tools-extra build
-- Fix install
-
-* Thu Mar 23 2017 Tom Stellard <tstellar@redhat.com> - 4.0.0-1
-- clang 4.0.0 final release
-
-* Mon Mar 20 2017 David Goerger <david.goerger@yale.edu> - 3.9.1-3
-- add clang-tools-extra rhbz#1328091
-
-* Thu Mar 16 2017 Tom Stellard <tstellar@redhat.com> - 3.9.1-2
-- Enable build-id by default rhbz#1432403
-
-* Thu Mar 02 2017 Dave Airlie <airlied@redhat.com> - 3.9.1-1
-- clang 3.9.1 final release
-
-* Fri Feb 10 2017 Fedora Release Engineering <releng@fedoraproject.org> - 3.9.0-4
-- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild
-
-* Mon Nov 14 2016 Nathaniel McCallum <npmccallum@redhat.com> - 3.9.0-3
-- Add Requires: compiler-rt to clang-libs.
-- Without this, compiling with certain CFLAGS breaks.
-
-* Tue Nov  1 2016 Peter Robinson <pbrobinson@fedoraproject.org> 3.9.0-2
-- Rebuild for new arches
-
-* Fri Oct 14 2016 Dave Airlie <airlied@redhat.com> - 3.9.0-1
-- clang 3.9.0 final release
-
-* Fri Jul 01 2016 Stephan Bergmann <sbergman@redhat.com> - 3.8.0-2
-- Resolves: rhbz#1282645 add GCC abi_tag support
-
-* Thu Mar 10 2016 Dave Airlie <airlied@redhat.com> 3.8.0-1
-- clang 3.8.0 final release
-
-* Thu Mar 03 2016 Dave Airlie <airlied@redhat.com> 3.8.0-0.4
-- clang 3.8.0rc3
-
-* Wed Feb 24 2016 Dave Airlie <airlied@redhat.com> - 3.8.0-0.3
-- package all libs into clang-libs.
-
-* Wed Feb 24 2016 Dave Airlie <airlied@redhat.com> 3.8.0-0.2
-- enable dynamic linking of clang against llvm
-
-* Thu Feb 18 2016 Dave Airlie <airlied@redhat.com> - 3.8.0-0.1
-- clang 3.8.0rc2
-
-* Fri Feb 12 2016 Dave Airlie <airlied@redhat.com> 3.7.1-4
-- rebuild against latest llvm packages
-- add BuildRequires llvm-static
-
-* Wed Feb 03 2016 Fedora Release Engineering <releng@fedoraproject.org> - 3.7.1-3
-- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild
-
-* Thu Jan 28 2016 Dave Airlie <airlied@redhat.com> 3.7.1-2
-- just accept clang includes moving to /usr/lib64, upstream don't let much else happen
-
-* Thu Jan 28 2016 Dave Airlie <airlied@redhat.com> 3.7.1-1
-- initial build in Fedora.
-
-* Tue Oct 06 2015 Jan Vcelak <jvcelak@fedoraproject.org> 3.7.0-100
-- initial version using cmake build system

diff --git a/dead.package b/dead.package
new file mode 100644
index 0000000..5204a84
--- /dev/null
+++ b/dead.package
@@ -0,0 +1 @@
+Orphaned for 6+ weeks

diff --git a/macros.clang b/macros.clang
deleted file mode 100644
index 88f259d..0000000
--- a/macros.clang
+++ /dev/null
@@ -1,11 +0,0 @@
-%clang_major_version @@CLANG_MAJOR_VERSION@@
-%clang_minor_version @@CLANG_MINOR_VERSION@@
-%clang_patch_version @@CLANG_PATCH_VERSION@@
-
-%clang_version %{clang_major_version}.%{clang_minor_version}.%{clang_patch_version}
-
-# This is the path to the clang resource directory that has clang's internal
-# headers and libraries.  This path should be used by packages that need to
-# install files into this directory.  This macro's value changes every time
-# clang's version changes.
-%clang_resource_dir %{_prefix}/lib/clang/%{clang_major_version}

diff --git a/release-keys.asc b/release-keys.asc
deleted file mode 100644
index 0d3789a..0000000
--- a/release-keys.asc
+++ /dev/null
@@ -1,104 +0,0 @@
------BEGIN PGP PUBLIC KEY BLOCK-----
-
-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
-9RmlwZlOTFGcWBYl/cfRONn9qi9a6w==
-=Lvw+
------END PGP PUBLIC KEY BLOCK-----
------BEGIN PGP PUBLIC KEY BLOCK-----
-
-mQINBFrqgT0BEAC7xo0WH+eNrLlU5LrCk59KmImn1abFcmWNd8kYr5XfqmJKyVqo
-EY7A/yRjf+Yn1621EDkpKPjbql7q7MlZMpqKVdOWKWgmhvz08IOKJxaIABd/iIRT
-FwhIvB68YjtmzcoOJRi1wLnwuG55fJ9E69HyZ33jgAlRaWV3bE/YyszoTlZriUOE
-RbzC5WzX004cE9evlrr+YLt5Y6z7tntOdSXPLyGOFAO5LYMsHsEdi2JBYWrjlslG
-6iJr5iEt9v442PrJ79YYbu5QWe/6APRWtI3AtKBp7y250oon2lbj+bIVD7U9fOBB
-n/Frqx54UN22sJycET63hgYW4pIjIi5zq+FF15aU+ZqBdtNltoX4hEN7wlDpuNc0
-ezVu2Z8hdt8thpjiFUioTQ1t3RmsN6N548VwxmHdoYpAmiZqPIYBYvm85JB7S/3h
-RLuoeGxufBhXGCpnG8ghTOGtbbdanuLB/UROFXTdyZbTCBN5S6jvwkPSaHG7H35Z
-3fazMriTXwL1RGAbKITSWhDe5dXy/yOInWe8emJx+35vwQYCB2L4S8wRyQyRw6x4
-YoXCscW041DUMBX2CC7SjMCcmAC39UX1c3GbTpS3rkJR9cmXt50nviMnKpIwlIPd
-ZYhmxKifwTJ70+c4GVK2o0MG9bTYvpYhLnYxv6iJCfgmT40E+qkDSzSoZwARAQAB
-tCJUb20gU3RlbGxhcmQgPHRzdGVsbGFyQHJlZGhhdC5jb20+iQI/BBMBAgApBQJa
-6oE9AhsDBQkB4TOABwsJCAcDAgEGFQgCCQoLBBYCAwECHgECF4AACgkQoseUqYZB
-nYp8Gg//RmX6Nup/Dv05jTL7dKRBSD08MF400tRtTmRhIuAgGv27qO2hbqzprKVu
-vd20vKBB9CNZpXC2oY8k9VhGv2PZNi/X7iuULIYmzjeFMbJ5CjU6XvuUBmNasITH
-6K/0KLhGebPs5h/DNtd7lbzDm86dLcjxgl6LXUULaSyYvTAKn6YB6mAv5J3qJs2X
-lfTmenNh9p7TPFTfcMHcS70ywjqKXlDiH0q9bRKJnSX7xUFlTHjKkNnAcRjlPaGf
-wUUhIPrnpDboqfwfcmScLrHANW9nwFWSFkNAJu1HQUEuF+An/RZUHDxFbLPKKAIp
-hwZ0aORTfBVZ80AjehDMYCbmp1DJeTyLjC1/94un6mlxPIKnPPPM8rMxr83xnrvP
-+Y1+pJaDUL7ZvKnmt2LrGRa9GvsNiYKpCNCORfiwZTeSxxXb+LgaodnbCHvGBnk7
-nlbLdMY08vNlxSx8LNyG0krFxJw/rq260+73yc+qjENeG68fozTEy/4jSVrF4t3m
-8AAUu5r6i/Aomo7Q27TjU928bbCVunpvDpserfDqr3zsA96LO9k8T6THR6zC9i+R
-LiN9Vjl+Rr2YuU26DjFYkCNEA2kNflYCWPJi5I0eodTPZrIPBWJ+H0YTRX31bMH9
-X88FnWJuCwaqAMN3rWlX/lXNCouWDdCuPWseZApISAMnVDE2mM+JAlYEEwEIAEAC
-GwMHCwkIBwMCAQYVCAIJCgsEFgIDAQIeAQIXgBYhBEdOIjFqv0eFqIxujqLHlKmG
-QZ2KBQJgkytfBQkJaxEiAAoJEKLHlKmGQZ2Kv8YP/jNPjcMAP0ZTpUcYV46mGKwf
-aQ0g5FUMSfxP7uJHtctj2dUckPGpA9SAH+ApiJutVgTQpWqNJKPd2vVxOiu5sywN
-iDKCOMlKug5m6lgLX5h3zBvSN90Hpn4I0qHRA3rgENLoPs/UYBxohvFPIhOOjPqO
-HIUuSPhAIuIZawxtqlADswHiKPy38Ao5GnWRb60zKfrB+N+ZiOtg7ITrlTGYm2tX
-0W9iWUG32gIA/RX2qmFPoLrDFqsk66Eir0Ghk5gppRrmpEl/M1lqA8bxlqWto/8w
-V8yDbSEu5fmM3WN3OUcSA23lYJi4j656Q4hS5PU+IWuZbBhcpYwDGexV5+m/ySZb
-wtHZMIb4Au+dgJHCvRiSqHgplyfiamxX5CfA0DJVHoGXpBOw8a2geRT0+DrjSbOS
-+CDDnlfmQLfHgjEuyQPU8V0Wlb0tJEvnPPqNPmAv0Rv7MC4qmD/zDrgwuddpfr1x
-H+nWus2plR8E6p/x9uvPLb3plJ94ri1XjXiJPyPvqzBAwA40Zeg0rE7sTVwCC3E9
-RZa7dHh17exkcZdOIS/vRQ1G/VNaOVUwrcC/vIMgZSe37bCLeOKViMtacAiBJDjo
-INC1QJ2F3CYVwktrcgmuz9S8e2WrqdTWwijjConB80EwfHQllz5sp/jU6Bgv297X
-UXkgpk1y+ibQ9/syRQpFuQINBFrqgT0BEADB2vDHMuexkaUm3rPi6SvyMGcsHWle
-feAWm+UjROKIaV77rHwo0/8ncKbtoQx4ZZjDXdI77M2bXB7tPgyEML90bWDMMGN/
-gnpwWSsiDRWpFIV/+hD6B+l9UaEi4UvEstUbIchOkGrZgPZ4Qism4FSVosEK+FE7
-EKCT4PSS+LiBKSxJZB8/g2uX+3pJvVxYurvcVpTmiNlXvUyll4KMpzy5e0KKa/0y
-w9h7SAre5399cSM8E7PDQZQDb1EwbyVyO2yDLgs+p3yzPtRJAydaqRPmT1JbSCYf
-hcihTrViMA4EDN5GRjH2EElI37+2HMpgLs4rc6Abz1F4FUVFhqWJXCKUcAIrG17w
-A7YUlYg38S6Xws2Xj1VfZ/WP7/qIMJZidYTHZbN9WWCaifCPfLlE5VDNsa8y6Mxm
-uFMBAB4PpB1gmmP9pPZsOzV9SmeYt8h2P8cVKDW2f56azpBZvZX6NFn8e0+ZDXS4
-8BQz31G2Xdfa3uOEV0J3JxPXcEbfuPzDHb7OMYP+2Ypjox1TozT1e9zr46SQl9OF
-MglOBnwLZJ9baA/IqZkqLq5iu5Oqda44EIVNAntQ3gebi3+q3YG1SvNUseIy2+8y
-cNWtdDuWv366Af0okCdrKAdap8+KbREer9uXhamtvxc49RCoWwuKoKfBz0RdVvMv
-R/Py2xV8A7PaIQARAQABiQIlBBgBAgAPBQJa6oE9AhsMBQkB4TOAAAoJEKLHlKmG
-QZ2KAaMQALHif2E0PBLVt09vlr4i8jAsQvDrzRajmVPd2B9RpfNU6HJe/y93SZd2
-udr9vzgmfd2o5u12vbegKNiMRgp1VyHQDmYlce27jrH5aPuKmos78+o5/p5yPWCv
-Rj8zxGKh7le7UPO+7UveKu+bgb3zwTj6bEuHX7fVI+WjGmEH3bbjDGamWxXrpfGc
-7+Jr8TN4ZO2OwYBcFOS9U2ZQ6TxrPaCSIm6+j8f+a9HPOuuDc62mMuV/EWQZy0i7
-DhDqU2PNpVjQDWQNpHA8oLDrjNFAoJS8gbHABVsFM1VnwBNT2MKcZQmm05dlQ+ll
-S6meHNCvTniKIKC+Giz1Yd5JVGDACZWWPxEz6VhpQW/twkxRqwlUdpFt7UgDquTL
-M1beQUCZRt81yJTNdrggbhQ2POxOdIO0CPiQv7U1IzndZp6baedeBw4a7FCbj6GY
-cQeHxQCrWpQrwigiseG5uhhS9aiaVFEHja9baSLfXlZu/vsR4MdDG5/iEpier/Xw
-h1qnpTSY+r31Uw3lTUlPHzlg47PMgPslaIhCzfVggxh9bTqxcDbuYJ7NuoMho3tN
-yWfeofTJ7PhKzoXM2Y/rRFoM5gNh1RVA19ngLT5Jwiof8fPZvHJ/9ZkHn+O7eMNm
-m5++gYza3pnn2/PoGpGGAKok+sfJiq5Tb7RUefyJTeZiyTZ/XJrA
-=tMzl
------END PGP PUBLIC KEY BLOCK-----

diff --git a/sources b/sources
deleted file mode 100644
index a63e042..0000000
--- a/sources
+++ /dev/null
@@ -1,4 +0,0 @@
-SHA512 (clang-17.0.6.src.tar.xz) = da6f670a52d60c46bbe6bfa2870106f6a6714c9566fab293b8c624a555308104a1a05cd065643091d7006ef4533a9a722dff1fccaf26f348a0c0a5c7b9331439
-SHA512 (clang-17.0.6.src.tar.xz.sig) = 091dca426d275f5a71836f2230e0f12f212527259cc4a941638104b8fcf42b4a122f9c140d07f8c663d38242d10ca5390de1f89d9d7bc0171b66c77a9aebbb3f
-SHA512 (clang-tools-extra-17.0.6.src.tar.xz) = 5110dd36ee1c966d22760000f0c28cf070fd00b05445d418d264dbd3b48426a203f934e402d408fab2602dbf39a29d66898cc7c69c1a52b5e0e6e7097f9db877
-SHA512 (clang-tools-extra-17.0.6.src.tar.xz.sig) = 17ed3072a402ffa9f723e5ae5257a68ea6f9c874bec50d91c88159d38d8c121d23974ff3983f6f0d3308b5ec07086ba5c2d4cabfe6cbefeb6613fc30b577f966

diff --git a/tsa.patch b/tsa.patch
deleted file mode 100644
index 2cf698e..0000000
--- a/tsa.patch
+++ /dev/null
@@ -1,124 +0,0 @@
-commit cf8e189a99f988398a48148b9ea7901948665ab0
-Author: Timm Bäder <tbaeder@redhat.com>
-Date:   Wed Sep 6 12:19:20 2023 +0200
-
-    [clang][TSA] Thread safety cleanup functions
-    
-    Consider cleanup functions in thread safety analysis.
-    
-    Differential Revision: https://reviews.llvm.org/D152504
-
-diff --git a/clang/include/clang/Analysis/Analyses/ThreadSafetyCommon.h b/clang/include/clang/Analysis/Analyses/ThreadSafetyCommon.h
-index 9d28325c1ea6..13e37ac2b56b 100644
---- a/clang/include/clang/Analysis/Analyses/ThreadSafetyCommon.h
-+++ b/clang/include/clang/Analysis/Analyses/ThreadSafetyCommon.h
-@@ -361,7 +361,7 @@ public:
-     unsigned NumArgs = 0;
- 
-     // Function arguments
--    const Expr *const *FunArgs = nullptr;
-+    llvm::PointerUnion<const Expr *const *, til::SExpr *> FunArgs = nullptr;
- 
-     // is Self referred to with -> or .?
-     bool SelfArrow = false;
-diff --git a/clang/lib/Analysis/ThreadSafety.cpp b/clang/lib/Analysis/ThreadSafety.cpp
-index 3107d035254d..3e6ceb7d54c4 100644
---- a/clang/lib/Analysis/ThreadSafety.cpp
-+++ b/clang/lib/Analysis/ThreadSafety.cpp
-@@ -1773,7 +1773,8 @@ void BuildLockset::checkPtAccess(const Expr *Exp, AccessKind AK,
- ///
- /// \param Exp   The call expression.
- /// \param D     The callee declaration.
--/// \param Self  If \p Exp = nullptr, the implicit this argument.
-+/// \param Self  If \p Exp = nullptr, the implicit this argument or the argument
-+///              of an implicitly called cleanup function.
- /// \param Loc   If \p Exp = nullptr, the location.
- void BuildLockset::handleCall(const Expr *Exp, const NamedDecl *D,
-                               til::LiteralPtr *Self, SourceLocation Loc) {
-@@ -2417,6 +2418,15 @@ void ThreadSafetyAnalyzer::runAnalysis(AnalysisDeclContext &AC) {
-                                     AD.getTriggerStmt()->getEndLoc());
-           break;
-         }
-+
-+        case CFGElement::CleanupFunction: {
-+          const CFGCleanupFunction &CF = BI.castAs<CFGCleanupFunction>();
-+          LocksetBuilder.handleCall(/*Exp=*/nullptr, CF.getFunctionDecl(),
-+                                    SxBuilder.createVariable(CF.getVarDecl()),
-+                                    CF.getVarDecl()->getLocation());
-+          break;
-+        }
-+
-         case CFGElement::TemporaryDtor: {
-           auto TD = BI.castAs<CFGTemporaryDtor>();
- 
-diff --git a/clang/lib/Analysis/ThreadSafetyCommon.cpp b/clang/lib/Analysis/ThreadSafetyCommon.cpp
-index b8286cef396c..63cc66852a9e 100644
---- a/clang/lib/Analysis/ThreadSafetyCommon.cpp
-+++ b/clang/lib/Analysis/ThreadSafetyCommon.cpp
-@@ -110,7 +110,8 @@ static StringRef ClassifyDiagnostic(QualType VDT) {
- /// \param D       The declaration to which the attribute is attached.
- /// \param DeclExp An expression involving the Decl to which the attribute
- ///                is attached.  E.g. the call to a function.
--/// \param Self    S-expression to substitute for a \ref CXXThisExpr.
-+/// \param Self    S-expression to substitute for a \ref CXXThisExpr in a call,
-+///                or argument to a cleanup function.
- CapabilityExpr SExprBuilder::translateAttrExpr(const Expr *AttrExp,
-                                                const NamedDecl *D,
-                                                const Expr *DeclExp,
-@@ -144,7 +145,11 @@ CapabilityExpr SExprBuilder::translateAttrExpr(const Expr *AttrExp,
- 
-   if (Self) {
-     assert(!Ctx.SelfArg && "Ambiguous self argument");
--    Ctx.SelfArg = Self;
-+    assert(isa<FunctionDecl>(D) && "Self argument requires function");
-+    if (isa<CXXMethodDecl>(D))
-+      Ctx.SelfArg = Self;
-+    else
-+      Ctx.FunArgs = Self;
- 
-     // If the attribute has no arguments, then assume the argument is "this".
-     if (!AttrExp)
-@@ -312,8 +317,14 @@ til::SExpr *SExprBuilder::translateDeclRefExpr(const DeclRefExpr *DRE,
-               ? (cast<FunctionDecl>(D)->getCanonicalDecl() == Canonical)
-               : (cast<ObjCMethodDecl>(D)->getCanonicalDecl() == Canonical)) {
-         // Substitute call arguments for references to function parameters
--        assert(I < Ctx->NumArgs);
--        return translate(Ctx->FunArgs[I], Ctx->Prev);
-+        if (const Expr *const *FunArgs =
-+                Ctx->FunArgs.dyn_cast<const Expr *const *>()) {
-+          assert(I < Ctx->NumArgs);
-+          return translate(FunArgs[I], Ctx->Prev);
-+        }
-+
-+        assert(I == 0);
-+        return Ctx->FunArgs.get<til::SExpr *>();
-       }
-     }
-     // Map the param back to the param of the original function declaration
-diff --git a/clang/test/Sema/warn-thread-safety-analysis.c b/clang/test/Sema/warn-thread-safety-analysis.c
-index 355616b73d96..642ea88ec3c9 100644
---- a/clang/test/Sema/warn-thread-safety-analysis.c
-+++ b/clang/test/Sema/warn-thread-safety-analysis.c
-@@ -72,6 +72,8 @@ int get_value(int *p) SHARED_LOCKS_REQUIRED(foo_.mu_){
-   return *p;
- }
- 
-+void unlock_scope(struct Mutex *const *mu) __attribute__((release_capability(**mu)));
-+
- int main(void) {
- 
-   Foo_fun1(1); // expected-warning{{calling function 'Foo_fun1' requires holding mutex 'mu2'}} \
-@@ -127,6 +129,13 @@ int main(void) {
-                                 // expected-note@-1{{mutex released here}}
-   mutex_shared_unlock(&mu1);    // expected-warning {{releasing mutex 'mu1' that was not held}}
- 
-+  /// Cleanup functions
-+  {
-+    struct Mutex* const __attribute__((cleanup(unlock_scope))) scope = &mu1;
-+    mutex_exclusive_lock(scope);  // Note that we have to lock through scope, because no alias analysis!
-+    // Cleanup happens automatically -> no warning.
-+  }
-+
-   return 0;
- }
- 

^ permalink raw reply related	[flat|nested] only message in thread

only message in thread, other threads:[~2026-06-26  1:48 UTC | newest]

Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2026-06-26  1:48 [rpms/clang17] rawhide: Orphaned for 6+ weeks Orphaned Packages Process

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox