<html><head><meta name="color-scheme" content="light dark"></head><body><pre style="word-wrap: break-word; white-space: pre-wrap;">Fix clang-19 error: a template argument list is expected after a name prefixed by the template keyword
Upstream PR: https://github.com/open-telemetry/opentelemetry-cpp/pull/3133
--- a/api/include/opentelemetry/logs/event_logger.h
+++ b/api/include/opentelemetry/logs/event_logger.h
@@ -65,9 +65,8 @@ class EventLogger
     }
     nostd::unique_ptr&lt;LogRecord&gt; log_record = delegate_logger-&gt;CreateLogRecord();
 
-    IgnoreTraitResult(
-        detail::LogRecordSetterTrait&lt;typename std::decay&lt;ArgumentType&gt;::type&gt;::template Set(
-            log_record.get(), std::forward&lt;ArgumentType&gt;(args))...);
+    IgnoreTraitResult(detail::LogRecordSetterTrait&lt;typename std::decay&lt;ArgumentType&gt;::type&gt;::Set(
+        log_record.get(), std::forward&lt;ArgumentType&gt;(args))...);
 
     EmitEvent(event_name, std::move(log_record));
   }
--- a/api/include/opentelemetry/logs/logger.h
+++ b/api/include/opentelemetry/logs/logger.h
@@ -72,9 +72,8 @@ class Logger
       return;
     }
 
-    IgnoreTraitResult(
-        detail::LogRecordSetterTrait&lt;typename std::decay&lt;ArgumentType&gt;::type&gt;::template Set(
-            log_record.get(), std::forward&lt;ArgumentType&gt;(args))...);
+    IgnoreTraitResult(detail::LogRecordSetterTrait&lt;typename std::decay&lt;ArgumentType&gt;::type&gt;::Set(
+        log_record.get(), std::forward&lt;ArgumentType&gt;(args))...);
 
     EmitLogRecord(std::move(log_record));
   }
--- a/api/include/opentelemetry/logs/logger_type_traits.h
+++ b/api/include/opentelemetry/logs/logger_type_traits.h
@@ -166,8 +166,8 @@ struct LogRecordSetterTrait
                 * = nullptr&gt;
   inline static LogRecord *Set(LogRecord *log_record, ArgumentType &amp;&amp;arg) noexcept
   {
-    return LogRecordSetterTrait&lt;common::KeyValueIterable&gt;::template Set(
-        log_record, std::forward&lt;ArgumentType&gt;(arg));
+    return LogRecordSetterTrait&lt;common::KeyValueIterable&gt;::Set(log_record,
+                                                               std::forward&lt;ArgumentType&gt;(arg));
   }
 
   template &lt;class ArgumentType,
</pre></body></html>