Remove clang:find_bad_constructs suppression from logging (part 1).
This CL removes //build/config/clang:find_bad_constructs from the
suppressed_configs list, which means that clang:find_bad_constructs
is now enabled on these translation units.
Bug: webrtc:9251, webrtc:163
Change-Id: I443c0c77cef30a3f5712f72ce88db80d1fb29874
Reviewed-on: https://webrtc-review.googlesource.com/96642
Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#24567}
diff --git a/logging/BUILD.gn b/logging/BUILD.gn
index 843c38d..eefb836 100644
--- a/logging/BUILD.gn
+++ b/logging/BUILD.gn
@@ -287,11 +287,6 @@
"../rtc_base:rtc_base_approved",
"//third_party/abseil-cpp/absl/memory",
]
-
- if (!build_with_chromium && is_clang) {
- # Suppress warnings from the Chromium Clang plugin (bugs.webrtc.org/163).
- suppressed_configs += [ "//build/config/clang:find_bad_constructs" ]
- }
}
if (rtc_include_tests) {
diff --git a/logging/rtc_event_log/rtc_event_log_parser.cc b/logging/rtc_event_log/rtc_event_log_parser.cc
index 27bb2b2..802af18 100644
--- a/logging/rtc_event_log/rtc_event_log_parser.cc
+++ b/logging/rtc_event_log/rtc_event_log_parser.cc
@@ -236,6 +236,13 @@
} // namespace
+ParsedRtcEventLog::ParsedRtcEventLog() = default;
+ParsedRtcEventLog::~ParsedRtcEventLog() = default;
+
+ParsedRtcEventLog::BweProbeResultEvent::BweProbeResultEvent() = default;
+ParsedRtcEventLog::BweProbeResultEvent::BweProbeResultEvent(
+ const BweProbeResultEvent&) = default;
+
bool ParsedRtcEventLog::ParseFile(const std::string& filename) {
std::ifstream file(filename, std::ios_base::in | std::ios_base::binary);
if (!file.good() || !file.is_open()) {
diff --git a/logging/rtc_event_log/rtc_event_log_parser.h b/logging/rtc_event_log/rtc_event_log_parser.h
index 862a48d..310e5a8 100644
--- a/logging/rtc_event_log/rtc_event_log_parser.h
+++ b/logging/rtc_event_log/rtc_event_log_parser.h
@@ -46,6 +46,9 @@
friend class RtcEventLogTestHelper;
public:
+ ParsedRtcEventLog();
+ ~ParsedRtcEventLog();
+
struct BweProbeClusterCreatedEvent {
uint64_t timestamp;
uint32_t id;
@@ -55,6 +58,9 @@
};
struct BweProbeResultEvent {
+ BweProbeResultEvent();
+ BweProbeResultEvent(const BweProbeResultEvent&);
+
uint64_t timestamp;
uint32_t id;
absl::optional<uint64_t> bitrate_bps;
diff --git a/logging/rtc_event_log/rtc_event_log_parser_new.cc b/logging/rtc_event_log/rtc_event_log_parser_new.cc
index b2b3264..f905a04 100644
--- a/logging/rtc_event_log/rtc_event_log_parser_new.cc
+++ b/logging/rtc_event_log/rtc_event_log_parser_new.cc
@@ -272,6 +272,60 @@
} // namespace
+LoggedRtcpPacket::LoggedRtcpPacket(uint64_t timestamp_us,
+ const uint8_t* packet,
+ size_t total_length)
+ : timestamp_us(timestamp_us), raw_data(packet, packet + total_length) {}
+LoggedRtcpPacket::LoggedRtcpPacket(const LoggedRtcpPacket& rhs) = default;
+LoggedRtcpPacket::~LoggedRtcpPacket() = default;
+
+LoggedVideoSendConfig::LoggedVideoSendConfig(
+ int64_t timestamp_us,
+ const std::vector<rtclog::StreamConfig>& configs)
+ : timestamp_us(timestamp_us), configs(configs) {}
+LoggedVideoSendConfig::LoggedVideoSendConfig(const LoggedVideoSendConfig& rhs) =
+ default;
+LoggedVideoSendConfig::~LoggedVideoSendConfig() = default;
+
+ParsedRtcEventLogNew::~ParsedRtcEventLogNew() = default;
+
+ParsedRtcEventLogNew::LoggedRtpStreamIncoming::LoggedRtpStreamIncoming() =
+ default;
+ParsedRtcEventLogNew::LoggedRtpStreamIncoming::LoggedRtpStreamIncoming(
+ const LoggedRtpStreamIncoming& rhs) = default;
+ParsedRtcEventLogNew::LoggedRtpStreamIncoming::~LoggedRtpStreamIncoming() =
+ default;
+
+ParsedRtcEventLogNew::LoggedRtpStreamOutgoing::LoggedRtpStreamOutgoing() =
+ default;
+ParsedRtcEventLogNew::LoggedRtpStreamOutgoing::LoggedRtpStreamOutgoing(
+ const LoggedRtpStreamOutgoing& rhs) = default;
+ParsedRtcEventLogNew::LoggedRtpStreamOutgoing::~LoggedRtpStreamOutgoing() =
+ default;
+
+ParsedRtcEventLogNew::LoggedRtpStreamView::LoggedRtpStreamView(
+ uint32_t ssrc,
+ const LoggedRtpPacketIncoming* ptr,
+ size_t num_elements)
+ : ssrc(ssrc),
+ packet_view(PacketView<const LoggedRtpPacket>::Create(
+ ptr,
+ num_elements,
+ offsetof(LoggedRtpPacketIncoming, rtp))) {}
+
+ParsedRtcEventLogNew::LoggedRtpStreamView::LoggedRtpStreamView(
+ uint32_t ssrc,
+ const LoggedRtpPacketOutgoing* ptr,
+ size_t num_elements)
+ : ssrc(ssrc),
+ packet_view(PacketView<const LoggedRtpPacket>::Create(
+ ptr,
+ num_elements,
+ offsetof(LoggedRtpPacketOutgoing, rtp))) {}
+
+ParsedRtcEventLogNew::LoggedRtpStreamView::LoggedRtpStreamView(
+ const LoggedRtpStreamView&) = default;
+
ParsedRtcEventLogNew::ParsedRtcEventLogNew(
UnconfiguredHeaderExtensions parse_unconfigured_header_extensions)
: parse_unconfigured_header_extensions_(
diff --git a/logging/rtc_event_log/rtc_event_log_parser_new.h b/logging/rtc_event_log/rtc_event_log_parser_new.h
index a4a1302..53d917c 100644
--- a/logging/rtc_event_log/rtc_event_log_parser_new.h
+++ b/logging/rtc_event_log/rtc_event_log_parser_new.h
@@ -178,8 +178,9 @@
struct LoggedRtcpPacket {
LoggedRtcpPacket(uint64_t timestamp_us,
const uint8_t* packet,
- size_t total_length)
- : timestamp_us(timestamp_us), raw_data(packet, packet + total_length) {}
+ size_t total_length);
+ LoggedRtcpPacket(const LoggedRtcpPacket&);
+ ~LoggedRtcpPacket();
int64_t timestamp_us;
std::vector<uint8_t> raw_data;
int64_t log_time_us() const { return timestamp_us; }
@@ -286,8 +287,9 @@
struct LoggedVideoSendConfig {
LoggedVideoSendConfig(int64_t timestamp_us,
- const std::vector<rtclog::StreamConfig> configs)
- : timestamp_us(timestamp_us), configs(configs) {}
+ const std::vector<rtclog::StreamConfig>& configs);
+ LoggedVideoSendConfig(const LoggedVideoSendConfig&);
+ ~LoggedVideoSendConfig();
int64_t timestamp_us;
std::vector<rtclog::StreamConfig> configs;
int64_t log_time_us() const { return timestamp_us; }
@@ -470,6 +472,8 @@
friend class RtcEventLogTestHelper;
public:
+ ~ParsedRtcEventLogNew();
+
enum class EventType {
UNKNOWN_EVENT = 0,
LOG_START = 1,
@@ -499,11 +503,17 @@
};
struct LoggedRtpStreamIncoming {
+ LoggedRtpStreamIncoming();
+ LoggedRtpStreamIncoming(const LoggedRtpStreamIncoming&);
+ ~LoggedRtpStreamIncoming();
uint32_t ssrc;
std::vector<LoggedRtpPacketIncoming> incoming_packets;
};
struct LoggedRtpStreamOutgoing {
+ LoggedRtpStreamOutgoing();
+ LoggedRtpStreamOutgoing(const LoggedRtpStreamOutgoing&);
+ ~LoggedRtpStreamOutgoing();
uint32_t ssrc;
std::vector<LoggedRtpPacketOutgoing> outgoing_packets;
};
@@ -511,20 +521,11 @@
struct LoggedRtpStreamView {
LoggedRtpStreamView(uint32_t ssrc,
const LoggedRtpPacketIncoming* ptr,
- size_t num_elements)
- : ssrc(ssrc),
- packet_view(PacketView<const LoggedRtpPacket>::Create(
- ptr,
- num_elements,
- offsetof(LoggedRtpPacketIncoming, rtp))) {}
+ size_t num_elements);
LoggedRtpStreamView(uint32_t ssrc,
const LoggedRtpPacketOutgoing* ptr,
- size_t num_elements)
- : ssrc(ssrc),
- packet_view(PacketView<const LoggedRtpPacket>::Create(
- ptr,
- num_elements,
- offsetof(LoggedRtpPacketOutgoing, rtp))) {}
+ size_t num_elements);
+ LoggedRtpStreamView(const LoggedRtpStreamView&);
uint32_t ssrc;
PacketView<const LoggedRtpPacket> packet_view;
};
diff --git a/modules/rtp_rtcp/source/rtcp_packet/nack.cc b/modules/rtp_rtcp/source/rtcp_packet/nack.cc
index f83e5c0..6a4a0bd 100644
--- a/modules/rtp_rtcp/source/rtcp_packet/nack.cc
+++ b/modules/rtp_rtcp/source/rtcp_packet/nack.cc
@@ -46,8 +46,9 @@
// +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
// | PID | BLP |
// +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
-Nack::Nack() {}
-Nack::~Nack() {}
+Nack::Nack() = default;
+Nack::Nack(const Nack& rhs) = default;
+Nack::~Nack() = default;
bool Nack::Parse(const CommonHeader& packet) {
RTC_DCHECK_EQ(packet.type(), kPacketType);
diff --git a/modules/rtp_rtcp/source/rtcp_packet/nack.h b/modules/rtp_rtcp/source/rtcp_packet/nack.h
index 0e462f9..9153733 100644
--- a/modules/rtp_rtcp/source/rtcp_packet/nack.h
+++ b/modules/rtp_rtcp/source/rtcp_packet/nack.h
@@ -23,6 +23,7 @@
public:
static constexpr uint8_t kFeedbackMessageType = 1;
Nack();
+ Nack(const Nack&);
~Nack() override;
// Parse assumes header is already parsed and validated.
diff --git a/modules/rtp_rtcp/source/rtcp_packet/receiver_report.cc b/modules/rtp_rtcp/source/rtcp_packet/receiver_report.cc
index 5677db2..569a66d 100644
--- a/modules/rtp_rtcp/source/rtcp_packet/receiver_report.cc
+++ b/modules/rtp_rtcp/source/rtcp_packet/receiver_report.cc
@@ -35,6 +35,8 @@
ReceiverReport::ReceiverReport() : sender_ssrc_(0) {}
+ReceiverReport::ReceiverReport(const ReceiverReport& rhs) = default;
+
ReceiverReport::~ReceiverReport() = default;
bool ReceiverReport::Parse(const CommonHeader& packet) {
diff --git a/modules/rtp_rtcp/source/rtcp_packet/receiver_report.h b/modules/rtp_rtcp/source/rtcp_packet/receiver_report.h
index 3dc7920..8f143da 100644
--- a/modules/rtp_rtcp/source/rtcp_packet/receiver_report.h
+++ b/modules/rtp_rtcp/source/rtcp_packet/receiver_report.h
@@ -26,6 +26,7 @@
static constexpr size_t kMaxNumberOfReportBlocks = 0x1f;
ReceiverReport();
+ ReceiverReport(const ReceiverReport&);
~ReceiverReport() override;
// Parse assumes header is already parsed and validated.
diff --git a/modules/rtp_rtcp/source/rtcp_packet/remb.cc b/modules/rtp_rtcp/source/rtcp_packet/remb.cc
index 2b492af..0240611 100644
--- a/modules/rtp_rtcp/source/rtcp_packet/remb.cc
+++ b/modules/rtp_rtcp/source/rtcp_packet/remb.cc
@@ -41,6 +41,8 @@
Remb::Remb() : bitrate_bps_(0) {}
+Remb::Remb(const Remb& rhs) = default;
+
Remb::~Remb() = default;
bool Remb::Parse(const CommonHeader& packet) {
diff --git a/modules/rtp_rtcp/source/rtcp_packet/remb.h b/modules/rtp_rtcp/source/rtcp_packet/remb.h
index 5f4aef8..6570e59 100644
--- a/modules/rtp_rtcp/source/rtcp_packet/remb.h
+++ b/modules/rtp_rtcp/source/rtcp_packet/remb.h
@@ -26,6 +26,7 @@
static constexpr size_t kMaxNumberOfSsrcs = 0xff;
Remb();
+ Remb(const Remb&);
~Remb() override;
// Parse assumes header is already parsed and validated.