summaryrefslogtreecommitdiff
path: root/app-text/doxygen/files/doxygen-1.12.0-clang-19.patch
diff options
context:
space:
mode:
Diffstat (limited to 'app-text/doxygen/files/doxygen-1.12.0-clang-19.patch')
-rw-r--r--app-text/doxygen/files/doxygen-1.12.0-clang-19.patch43
1 files changed, 43 insertions, 0 deletions
diff --git a/app-text/doxygen/files/doxygen-1.12.0-clang-19.patch b/app-text/doxygen/files/doxygen-1.12.0-clang-19.patch
new file mode 100644
index 000000000000..acca39a18d51
--- /dev/null
+++ b/app-text/doxygen/files/doxygen-1.12.0-clang-19.patch
@@ -0,0 +1,43 @@
+https://github.com/doxygen/doxygen/commit/cff64a87dea7596fd506a85521d4df4616dc845f
+https://github.com/doxygen/doxygen/pull/11064
+https://github.com/bisqwit/TinyDeflate/commit/68ced8bd5c819264e628d4f063500753b77f613d
+https://github.com/bisqwit/TinyDeflate/pull/9
+
+From cff64a87dea7596fd506a85521d4df4616dc845f Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Bernhard=20Rosenkr=C3=A4nzer?= <bero@lindev.ch>
+Date: Fri, 9 Aug 2024 14:13:34 +0200
+Subject: [PATCH] Fix build with clang >= 19.0
+
+Clang >= 19.0 requires a template argument list after the template
+keyword for CWG96 compliance, see
+https://github.com/llvm/llvm-project/pull/80801
+
+This patch has also been submitted to upstream TinyDeflate as
+https://github.com/bisqwit/TinyDeflate/pull/9
+--- a/deps/TinyDeflate/gunzip.hh
++++ b/deps/TinyDeflate/gunzip.hh
+@@ -1141,21 +1141,21 @@ namespace gunzip_ns
+ //fprintf(stderr, "both track flag\n");
+ SizeTracker<DeflateTrackBothSize> tracker;
+ return tracker(Gunzip<code & Flag_NoTrackFlagMask>
+- (tracker.template ForwardInput(i), tracker.template ForwardOutput(o), tracker.template ForwardWindow(c), std::forward<B>(b)));
++ (tracker.template ForwardInput<I>(i), tracker.template ForwardOutput<O>(o), tracker.template ForwardWindow<C>(c), std::forward<B>(b)));
+ }
+ else if constexpr(code & Flag_TrackIn)
+ {
+ //fprintf(stderr, "in track flag\n");
+ SizeTracker<DeflateTrackInSize> tracker;
+ return tracker(Gunzip<code & Flag_NoTrackFlagMask>
+- (tracker.template ForwardInput(i),std::forward<O>(o),std::forward<C>(c),std::forward<B>(b)));
++ (tracker.template ForwardInput<I>(i),std::forward<O>(o),std::forward<C>(c),std::forward<B>(b)));
+ }
+ else if constexpr(code & Flag_TrackOut)
+ {
+ //fprintf(stderr, "out track flag\n");
+ SizeTracker<DeflateTrackOutSize> tracker;
+ return tracker(Gunzip<code & Flag_NoTrackFlagMask>
+- (std::forward<I>(i), tracker.template ForwardOutput(o), tracker.template ForwardWindow(c), std::forward<B>(b)));
++ (std::forward<I>(i), tracker.template ForwardOutput<O>(o), tracker.template ForwardWindow<C>(c), std::forward<B>(b)));
+ }
+ else
+ {