1From 1a5b4035e4cb75b87c716b4ebd5ffe32cd604c6e Mon Sep 17 00:00:00 2001
2From: "Sergey A. Osokin" <osa@FreeBSD.org.ru>
3Date: Sun, 8 Sep 2024 17:14:25 -0400
4Subject: [PATCH] Fix build with clang 19
5
6Please see https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=281359
7for details.
8
9Upstream-Status: Submitted [https://github.com/open-telemetry/opentelemetry-cpp/pull/3055]
10Credit:	Dimitry Andric <dim@FreeBSD.org>
11Signed-off-by: Khem Raj <raj.khem@gmail.com>
12---
13 api/include/opentelemetry/logs/event_logger.h       | 2 +-
14 api/include/opentelemetry/logs/logger.h             | 2 +-
15 api/include/opentelemetry/logs/logger_type_traits.h | 2 +-
16 3 files changed, 3 insertions(+), 3 deletions(-)
17
18diff --git a/api/include/opentelemetry/logs/event_logger.h b/api/include/opentelemetry/logs/event_logger.h
19index b5c94a70..5892e041 100644
20--- a/api/include/opentelemetry/logs/event_logger.h
21+++ b/api/include/opentelemetry/logs/event_logger.h
22@@ -66,7 +66,7 @@ class EventLogger
23     nostd::unique_ptr<LogRecord> log_record = delegate_logger->CreateLogRecord();
24
25     IgnoreTraitResult(
26-        detail::LogRecordSetterTrait<typename std::decay<ArgumentType>::type>::template Set(
27+        detail::LogRecordSetterTrait<typename std::decay<ArgumentType>::type>::template Set<>(
28             log_record.get(), std::forward<ArgumentType>(args))...);
29
30     EmitEvent(event_name, std::move(log_record));
31diff --git a/api/include/opentelemetry/logs/logger.h b/api/include/opentelemetry/logs/logger.h
32index dc09a0c2..19da3942 100644
33--- a/api/include/opentelemetry/logs/logger.h
34+++ b/api/include/opentelemetry/logs/logger.h
35@@ -73,7 +73,7 @@ class Logger
36     }
37
38     IgnoreTraitResult(
39-        detail::LogRecordSetterTrait<typename std::decay<ArgumentType>::type>::template Set(
40+        detail::LogRecordSetterTrait<typename std::decay<ArgumentType>::type>::template Set<>(
41             log_record.get(), std::forward<ArgumentType>(args))...);
42
43     EmitLogRecord(std::move(log_record));
44diff --git a/api/include/opentelemetry/logs/logger_type_traits.h b/api/include/opentelemetry/logs/logger_type_traits.h
45index 48613513..f140a545 100644
46--- a/api/include/opentelemetry/logs/logger_type_traits.h
47+++ b/api/include/opentelemetry/logs/logger_type_traits.h
48@@ -166,7 +166,7 @@ struct LogRecordSetterTrait
49                 * = nullptr>
50   inline static LogRecord *Set(LogRecord *log_record, ArgumentType &&arg) noexcept
51   {
52-    return LogRecordSetterTrait<common::KeyValueIterable>::template Set(
53+    return LogRecordSetterTrait<common::KeyValueIterable>::template Set<>(
54         log_record, std::forward<ArgumentType>(arg));
55   }
56
57