Skip to content

Commit

Permalink
devel/doxygen: Fix TinyDeflate's clang-19 compatibility
Browse files Browse the repository at this point in the history
Clang >= 19.0 requires a template argument list after the template
keyword for CWG96 compliance, see
llvm/llvm-project#80801

Obtained from:	Bernhard Rosenkränzer, via
bisqwit/TinyDeflate@68ced8b

PR:             259331 (comment #6)
Reported by:    Tamaoki Aoki
Approved by:    portmgr@ (blanket approval for fixing broken builds)

(cherry picked from commit 4bd9003)
  • Loading branch information
mandree committed Jan 8, 2025
1 parent 6c175b5 commit 3cf80a2
Showing 1 changed file with 37 additions and 0 deletions.
37 changes: 37 additions & 0 deletions devel/doxygen/files/patch-TinyDeflate_gunzip.hh
Original file line number Diff line number Diff line change
@@ -0,0 +1,37 @@
https://github.com/bisqwit/TinyDeflate/commit/68ced8bd5c819264e628d4f063500753b77f613d.patch

From 68ced8bd5c819264e628d4f063500753b77f613d Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Bernhard=20Rosenkr=C3=A4nzer?= <[email protected]>
Date: Fri, 9 Aug 2024 14:09:01 +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
--- TinyDeflate/gunzip.hh.orig 2025-01-08 14:32:52 UTC
+++ 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
{

0 comments on commit 3cf80a2

Please sign in to comment.