]> git.ipfire.org Git - thirdparty/pdns.git/commitdiff
Avoid cases of "sorry, unimplemented: non-trivial designated initializers not supported"
authorOtto Moerbeek <otto.moerbeek@open-xchange.com>
Wed, 17 Dec 2025 13:49:41 +0000 (14:49 +0100)
committerOtto Moerbeek <otto.moerbeek@open-xchange.com>
Wed, 17 Dec 2025 14:06:49 +0000 (15:06 +0100)
reported by g++-15 (missing initializer)

Signed-off-by: Otto Moerbeek <otto.moerbeek@open-xchange.com>
pdns/recursordist/rec-eventtrace.cc
pdns/test-protozero-trace.cc

index 1260b9ee3760ad9324d827366aab8b5cf32702d5..b0c622d7fe96ff52015c96b2bf134a7f4dbfd4da 100644 (file)
@@ -99,8 +99,10 @@ std::vector<pdns::trace::Span> RecEventTrace::convertToOT(const InitialSpanInfo&
   ret.emplace_back(Span{
     .trace_id = span.trace_id,
     .span_id = span.span_id,
+    .trace_state = "",
     .parent_span_id = span.parent_span_id,
     .name = "RecRequest",
+    .kind = pdns::trace::Span::SpanKind::SPAN_KIND_SERVER,
     .start_time_unix_nano = span.start_time_unix_nano,
     .end_time_unix_nano = timestamp(),
   });
@@ -112,12 +114,11 @@ std::vector<pdns::trace::Span> RecEventTrace::convertToOT(const InitialSpanInfo&
   for (const auto& event : d_events) {
     if (event.d_start) {
       // It's an open event
-      Span work{
-        .trace_id = span.trace_id,
-        .name = RecEventTrace::toString(event.d_event),
-        .start_time_unix_nano = static_cast<uint64_t>(event.d_ts + diff),
-        .end_time_unix_nano = static_cast<uint64_t>(event.d_ts + diff), // will be updated when we process the close event
-      };
+      Span work{};
+      work.trace_id = span.trace_id;
+      work.name = RecEventTrace::toString(event.d_event);
+      work.start_time_unix_nano = static_cast<uint64_t>(event.d_ts + diff);
+      work.end_time_unix_nano = static_cast<uint64_t>(event.d_ts + diff); // will be updated when we process the close event
       if (event.d_parent == 0 || event.d_parent >= spanIDs.size()) {
         // Use the given parent
         work.parent_span_id = span.span_id;
index 20d32999ab68b647ebfb17e92f59868614e3e188..69489d929c5794e28ce39b6b0cd0f28c8b5a6895 100644 (file)
@@ -114,6 +114,7 @@ BOOST_AUTO_TEST_CASE(traces1)
   pdns::trace::Span span = {
     .trace_id = {0x5B, 0x8E, 0xFF, 0xF7, 0x98, 0x03, 0x81, 0x03, 0xD2, 0x69, 0xB6, 0x33, 0x81, 0x3F, 0xC6, 0x0C},
     .span_id = {0xEE, 0xE1, 0x9B, 0x7E, 0xC3, 0xC1, 0xB1, 0x74},
+    .trace_state = "",
     .parent_span_id = {0xEE, 0xE1, 0x9B, 0x7E, 0xC3, 0xC1, 0xB1, 0x73},
     .name = "I'm a server span",
     .kind = pdns::trace::Span::SpanKind::SPAN_KIND_SERVER,
@@ -163,6 +164,7 @@ BOOST_AUTO_TEST_CASE(traces2)
   pdns::trace::Span span1{
     .trace_id = {0x5B, 0x8E, 0xFF, 0xF7, 0x98, 0x03, 0x81, 0x03, 0xD2, 0x69, 0xB6, 0x33, 0x81, 0x3F, 0xC6, 0x0C},
     .span_id = {0xEE, 0xE1, 0x9B, 0x7E, 0xC3, 0xC1, 0xB1, 0x74},
+    .trace_state = "",
     .parent_span_id = {0xEE, 0xE1, 0x9B, 0x7E, 0xC3, 0xC1, 0xB1, 0x73},
     .name = "I'm a server span",
     .kind = pdns::trace::Span::SpanKind::SPAN_KIND_SERVER,