forked from Lainports/freebsd-ports
Clang 19 now implements CWG 96 [1], which requires a template argument
list after a 'template' keyword, resulting in errors similar to:
/wrkdirs/usr/ports/devel/opentelemetry-cpp/work/opentelemetry-cpp-1.16.1/api/include/opentelemetry/logs/logger_type_traits.h:169:69: error: a template argument list is expected after a name prefixed by the template keyword [-Wmissing-template-arg-list-after-template-kw]
169 | return LogRecordSetterTrait<common::KeyValueIterable>::template Set(
| ^
/wrkdirs/usr/ports/devel/opentelemetry-cpp/work/opentelemetry-cpp-1.16.1/api/include/opentelemetry/logs/logger.h:76:89: error: a template argument list is expected after a name prefixed by the template keyword [-Wmissing-template-arg-list-after-template-kw]
76 | detail::LogRecordSetterTrait<typename std::decay<ArgumentType>::type>::template Set(
| ^
/wrkdirs/usr/ports/devel/opentelemetry-cpp/work/opentelemetry-cpp-1.16.1/api/include/opentelemetry/logs/event_logger.h:69:89: error: a template argument list is expected after a name prefixed by the template keyword [-Wmissing-template-arg-list-after-template-kw]
69 | detail::LogRecordSetterTrait<typename std::decay<ArgumentType>::type>::template Set(
| ^
In these cases, appending "<>" is enough to satisfy the constraint.
PR: 281359
Approved by: osa (maintainer)
MFH: 2024Q3
11 lines
495 B
C++
11 lines
495 B
C++
--- api/include/opentelemetry/logs/logger.h.orig 2024-07-17 20:04:10 UTC
|
|
+++ api/include/opentelemetry/logs/logger.h
|
|
@@ -73,7 +73,7 @@ class Logger (public)
|
|
}
|
|
|
|
IgnoreTraitResult(
|
|
- detail::LogRecordSetterTrait<typename std::decay<ArgumentType>::type>::template Set(
|
|
+ detail::LogRecordSetterTrait<typename std::decay<ArgumentType>::type>::template Set<>(
|
|
log_record.get(), std::forward<ArgumentType>(args))...);
|
|
|
|
EmitLogRecord(std::move(log_record));
|