diff --git a/api/array_view.h b/api/array_view.h index 4abd2bf895..f1eb6c1e55 100644 --- a/api/array_view.h +++ b/api/array_view.h @@ -97,7 +97,7 @@ class ArrayViewBase { static_assert(Size > 0, "ArrayView size must be variable or non-negative"); public: - ArrayViewBase(T* data, size_t size) : data_(data) {} + ArrayViewBase(T* data, size_t /* size */) : data_(data) {} static constexpr size_t size() { return Size; } static constexpr bool empty() { return false; } @@ -114,7 +114,7 @@ class ArrayViewBase { template class ArrayViewBase { public: - explicit ArrayViewBase(T* data, size_t size) {} + explicit ArrayViewBase(T* /* data */, size_t /* size */) {} static constexpr size_t size() { return 0; } static constexpr bool empty() { return true; } diff --git a/api/dtmf_sender_interface.h b/api/dtmf_sender_interface.h index 4692f258b2..16ce665e53 100644 --- a/api/dtmf_sender_interface.h +++ b/api/dtmf_sender_interface.h @@ -27,12 +27,12 @@ class DtmfSenderObserverInterface { // tones. // The callback includes the state of the tone buffer at the time when // the tone finished playing. - virtual void OnToneChange(const std::string& tone, - const std::string& tone_buffer) {} + virtual void OnToneChange(const std::string& /* tone */, + const std::string& /* tone_buffer */) {} // DEPRECATED: Older API without tone buffer. // TODO(bugs.webrtc.org/9725): Remove old API and default implementation // when old callers are gone. - virtual void OnToneChange(const std::string& tone) {} + virtual void OnToneChange(const std::string& /* tone */) {} protected: virtual ~DtmfSenderObserverInterface() = default; @@ -91,7 +91,7 @@ class DtmfSenderInterface : public webrtc::RefCountInterface { virtual bool InsertDtmf(const std::string& tones, int duration, int inter_tone_gap, - int comma_delay) { + int /* comma_delay */) { // TODO(bugs.webrtc.org/165700): Remove once downstream implementations // override this signature rather than the 3-parameter one. return InsertDtmf(tones, duration, inter_tone_gap); diff --git a/api/frame_transformer_interface.h b/api/frame_transformer_interface.h index 6959445285..3f4133646c 100644 --- a/api/frame_transformer_interface.h +++ b/api/frame_transformer_interface.h @@ -139,9 +139,9 @@ class FrameTransformerInterface : public RefCountInterface { rtc::scoped_refptr) {} virtual void RegisterTransformedFrameSinkCallback( rtc::scoped_refptr, - uint32_t ssrc) {} + uint32_t /* ssrc */) {} virtual void UnregisterTransformedFrameCallback() {} - virtual void UnregisterTransformedFrameSinkCallback(uint32_t ssrc) {} + virtual void UnregisterTransformedFrameSinkCallback(uint32_t /* ssrc */) {} protected: ~FrameTransformerInterface() override = default; diff --git a/api/function_view.h b/api/function_view.h index b191a058f6..f853ddb964 100644 --- a/api/function_view.h +++ b/api/function_view.h @@ -86,7 +86,7 @@ class FunctionView final { typename std::enable_if::type>::value>::type* = nullptr> - FunctionView(F&& f) : call_(nullptr) {} + FunctionView(F&& /* f */) : call_(nullptr) {} // Default constructor. Creates an empty FunctionView. FunctionView() : call_(nullptr) {} diff --git a/api/media_stream_interface.h b/api/media_stream_interface.h index d7c0edab69..5a1e29873b 100644 --- a/api/media_stream_interface.h +++ b/api/media_stream_interface.h @@ -161,7 +161,7 @@ class VideoTrackSourceInterface : public MediaSourceInterface, // The call is expected to happen on the network thread. // TODO(crbug/1255737): make pure virtual once downstream project adapts. virtual void ProcessConstraints( - const webrtc::VideoTrackSourceConstraints& constraints) {} + const webrtc::VideoTrackSourceConstraints& /* constraints */) {} protected: ~VideoTrackSourceInterface() override = default; @@ -184,14 +184,14 @@ class RTC_EXPORT VideoTrackInterface // Register a video sink for this track. Used to connect the track to the // underlying video engine. - void AddOrUpdateSink(rtc::VideoSinkInterface* sink, - const rtc::VideoSinkWants& wants) override {} - void RemoveSink(rtc::VideoSinkInterface* sink) override {} + void AddOrUpdateSink(rtc::VideoSinkInterface* /* sink */, + const rtc::VideoSinkWants& /* wants */) override {} + void RemoveSink(rtc::VideoSinkInterface* /* sink */) override {} virtual VideoTrackSourceInterface* GetSource() const = 0; virtual ContentHint content_hint() const; - virtual void set_content_hint(ContentHint hint) {} + virtual void set_content_hint(ContentHint /* hint */) {} protected: ~VideoTrackInterface() override = default; @@ -200,11 +200,11 @@ class RTC_EXPORT VideoTrackInterface // Interface for receiving audio data from a AudioTrack. class AudioTrackSinkInterface { public: - virtual void OnData(const void* audio_data, - int bits_per_sample, - int sample_rate, - size_t number_of_channels, - size_t number_of_frames) { + virtual void OnData(const void* /* audio_data */, + int /* bits_per_sample */, + int /* sample_rate */, + size_t /* number_of_channels */, + size_t /* number_of_frames */) { RTC_DCHECK_NOTREACHED() << "This method must be overridden, or not used."; } @@ -212,12 +212,13 @@ class AudioTrackSinkInterface { // supposed to deliver the timestamp when this audio frame was originally // captured. This timestamp MUST be based on the same clock as // rtc::TimeMillis(). - virtual void OnData(const void* audio_data, - int bits_per_sample, - int sample_rate, - size_t number_of_channels, - size_t number_of_frames, - std::optional absolute_capture_timestamp_ms) { + virtual void OnData( + const void* audio_data, + int bits_per_sample, + int sample_rate, + size_t number_of_channels, + size_t number_of_frames, + std::optional /* absolute_capture_timestamp_ms */) { // TODO(bugs.webrtc.org/10739): Deprecate the old OnData and make this one // pure virtual. return OnData(audio_data, bits_per_sample, sample_rate, number_of_channels, @@ -251,15 +252,15 @@ class RTC_EXPORT AudioSourceInterface : public MediaSourceInterface { // Sets the volume of the source. `volume` is in the range of [0, 10]. // TODO(tommi): This method should be on the track and ideally volume should // be applied in the track in a way that does not affect clones of the track. - virtual void SetVolume(double volume) {} + virtual void SetVolume(double /* volume */) {} // Registers/unregisters observers to the audio source. - virtual void RegisterAudioObserver(AudioObserver* observer) {} - virtual void UnregisterAudioObserver(AudioObserver* observer) {} + virtual void RegisterAudioObserver(AudioObserver* /* observer */) {} + virtual void UnregisterAudioObserver(AudioObserver* /* observer */) {} // TODO(tommi): Make pure virtual. - virtual void AddSink(AudioTrackSinkInterface* sink) {} - virtual void RemoveSink(AudioTrackSinkInterface* sink) {} + virtual void AddSink(AudioTrackSinkInterface* /* sink */) {} + virtual void RemoveSink(AudioTrackSinkInterface* /* sink */) {} // Returns options for the AudioSource. // (for some of the settings this approach is broken, e.g. setting @@ -339,16 +340,18 @@ class MediaStreamInterface : public webrtc::RefCountInterface, // Note: Default implementations are for avoiding link time errors in // implementations that mock this API. // TODO(bugs.webrtc.org/13980): Remove default implementations. - virtual bool AddTrack(rtc::scoped_refptr track) { + virtual bool AddTrack(rtc::scoped_refptr /* track */) { RTC_CHECK_NOTREACHED(); } - virtual bool AddTrack(rtc::scoped_refptr track) { + virtual bool AddTrack(rtc::scoped_refptr /* track */) { RTC_CHECK_NOTREACHED(); } - virtual bool RemoveTrack(rtc::scoped_refptr track) { + virtual bool RemoveTrack( + rtc::scoped_refptr /* track */) { RTC_CHECK_NOTREACHED(); } - virtual bool RemoveTrack(rtc::scoped_refptr track) { + virtual bool RemoveTrack( + rtc::scoped_refptr /* track */) { RTC_CHECK_NOTREACHED(); } diff --git a/api/rtc_event_log/rtc_event_log.h b/api/rtc_event_log/rtc_event_log.h index 3bd255371d..55dee7d36e 100644 --- a/api/rtc_event_log/rtc_event_log.h +++ b/api/rtc_event_log/rtc_event_log.h @@ -60,7 +60,7 @@ class RtcEventLogNull final : public RtcEventLog { bool StartLogging(std::unique_ptr output, int64_t output_period_ms) override; void StopLogging() override {} - void Log(std::unique_ptr event) override {} + void Log(std::unique_ptr /* event */) override {} }; } // namespace webrtc diff --git a/api/rtp_receiver_interface.h b/api/rtp_receiver_interface.h index f97ed53428..bad3d2c45c 100644 --- a/api/rtp_receiver_interface.h +++ b/api/rtp_receiver_interface.h @@ -80,7 +80,9 @@ class RTC_EXPORT RtpReceiverInterface : public webrtc::RefCountInterface, virtual RtpParameters GetParameters() const = 0; // TODO(dinosaurav): Delete SetParameters entirely after rolling to Chromium. // Currently, doesn't support changing any parameters. - virtual bool SetParameters(const RtpParameters& parameters) { return false; } + virtual bool SetParameters(const RtpParameters& /* parameters */) { + return false; + } // Does not take ownership of observer. // Must call SetObserver(nullptr) before the observer is destroyed. diff --git a/api/rtp_sender_interface.h b/api/rtp_sender_interface.h index aa2eb6fc31..9afe3e318d 100644 --- a/api/rtp_sender_interface.h +++ b/api/rtp_sender_interface.h @@ -119,7 +119,7 @@ class RTC_EXPORT RtpSenderInterface : public webrtc::RefCountInterface, // Default implementation of SetFrameTransformer. // TODO: bugs.webrtc.org/15929 - remove when all implementations are good void SetFrameTransformer(rtc::scoped_refptr - frame_transformer) override {} + /* frame_transformer */) override {} protected: ~RtpSenderInterface() override = default; diff --git a/api/transport/data_channel_transport_interface.h b/api/transport/data_channel_transport_interface.h index ddf6147c42..7ea1d304ef 100644 --- a/api/transport/data_channel_transport_interface.h +++ b/api/transport/data_channel_transport_interface.h @@ -88,7 +88,7 @@ class DataChannelSink { // Callback issued when the data channel becomes unusable (closed). // TODO(https://crbug.com/webrtc/10360): Make pure virtual when all // consumers updated. - virtual void OnTransportClosed(RTCError error) {} + virtual void OnTransportClosed(RTCError /* error */) {} // The data channel's buffered_amount has fallen to or below the threshold // set when calling `SetBufferedAmountLowThreshold` diff --git a/api/video/video_sink_interface.h b/api/video/video_sink_interface.h index f661248c2a..5a1f67b4a9 100644 --- a/api/video/video_sink_interface.h +++ b/api/video/video_sink_interface.h @@ -29,7 +29,7 @@ class VideoSinkInterface { // Called on the network thread when video constraints change. // TODO(crbug/1255737): make pure virtual once downstream project adapts. virtual void OnConstraintsChanged( - const webrtc::VideoTrackSourceConstraints& constraints) {} + const webrtc::VideoTrackSourceConstraints& /* constraints */) {} }; } // namespace rtc diff --git a/api/video_codecs/video_decoder.h b/api/video_codecs/video_decoder.h index 934e224dbc..079753d6f2 100644 --- a/api/video_codecs/video_decoder.h +++ b/api/video_codecs/video_decoder.h @@ -107,7 +107,7 @@ class RTC_EXPORT VideoDecoder { // TODO(bugs.webrtc.org/15444): Migrate all subclasses to Decode() without // missing_frame and delete this. virtual int32_t Decode(const EncodedImage& input_image, - bool missing_frames, + bool /* missing_frames */, int64_t render_time_ms) { return Decode(input_image, render_time_ms); } diff --git a/api/video_codecs/video_encoder.h b/api/video_codecs/video_encoder.h index aadf452737..44a75162c9 100644 --- a/api/video_codecs/video_encoder.h +++ b/api/video_codecs/video_encoder.h @@ -82,7 +82,7 @@ class RTC_EXPORT EncodedImageCallback { const EncodedImage& encoded_image, const CodecSpecificInfo* codec_specific_info) = 0; - virtual void OnDroppedFrame(DropReason reason) {} + virtual void OnDroppedFrame(DropReason /* reason */) {} }; class RTC_EXPORT VideoEncoder { diff --git a/api/video_codecs/video_encoder_factory.h b/api/video_codecs/video_encoder_factory.h index cb00f92007..8986e920d9 100644 --- a/api/video_codecs/video_encoder_factory.h +++ b/api/video_codecs/video_encoder_factory.h @@ -54,7 +54,7 @@ class VideoEncoderFactory { // Called every time the encoder input resolution change. Should return a // non-empty if an encoder switch should be performed. virtual std::optional OnResolutionChange( - const RenderResolution& resolution) { + const RenderResolution& /* resolution */) { return std::nullopt; } diff --git a/media/base/media_channel.h b/media/base/media_channel.h index efd3693052..ac7eaab207 100644 --- a/media/base/media_channel.h +++ b/media/base/media_channel.h @@ -246,9 +246,9 @@ class MediaSendChannelInterface { // note: The encoder_selector object must remain valid for the lifetime of the // MediaChannel, unless replaced. virtual void SetEncoderSelector( - uint32_t ssrc, - webrtc::VideoEncoderFactory::EncoderSelectorInterface* encoder_selector) { - } + uint32_t /* ssrc */, + webrtc::VideoEncoderFactory:: + EncoderSelectorInterface* /* encoder_selector */) {} virtual webrtc::RtpParameters GetRtpSendParameters(uint32_t ssrc) const = 0; virtual bool SendCodecHasNack() const = 0; // Called whenever the list of sending SSRCs changes. diff --git a/modules/rtp_rtcp/include/rtp_rtcp_defines.h b/modules/rtp_rtcp/include/rtp_rtcp_defines.h index eb4d1d019c..c9d1f17bc5 100644 --- a/modules/rtp_rtcp/include/rtp_rtcp_defines.h +++ b/modules/rtp_rtcp/include/rtp_rtcp_defines.h @@ -168,20 +168,22 @@ class NetworkLinkRtcpObserver { public: virtual ~NetworkLinkRtcpObserver() = default; - virtual void OnTransportFeedback(Timestamp receive_time, - const rtcp::TransportFeedback& feedback) {} + virtual void OnTransportFeedback( + Timestamp /* receive_time */, + const rtcp::TransportFeedback& /* feedback */) {} // RFC 8888 congestion control feedback. virtual void OnCongestionControlFeedback( - Timestamp receive_time, - const rtcp::CongestionControlFeedback& feedback) {} - virtual void OnReceiverEstimatedMaxBitrate(Timestamp receive_time, - DataRate bitrate) {} + Timestamp /* receive_time */, + const rtcp::CongestionControlFeedback& /* feedback */) {} + virtual void OnReceiverEstimatedMaxBitrate(Timestamp /* receive_time */, + DataRate /* bitrate */) {} // Called on an RTCP packet with sender or receiver reports with non zero // report blocks. Report blocks are combined from all reports into one array. - virtual void OnReport(Timestamp receive_time, - rtc::ArrayView report_blocks) {} - virtual void OnRttUpdate(Timestamp receive_time, TimeDelta rtt) {} + virtual void OnReport( + Timestamp /* receive_time */, + rtc::ArrayView /* report_blocks */) {} + virtual void OnRttUpdate(Timestamp /* receive_time */, TimeDelta /* rtt */) {} }; // NOTE! `kNumMediaTypes` must be kept in sync with RtpPacketMediaType! diff --git a/rtc_base/checks.cc b/rtc_base/checks.cc index e732a2659d..14cfe69049 100644 --- a/rtc_base/checks.cc +++ b/rtc_base/checks.cc @@ -78,8 +78,8 @@ RTC_NORETURN void WriteFatalLog(absl::string_view output) { abort(); } -RTC_NORETURN void WriteFatalLog(const char* file, - int line, +RTC_NORETURN void WriteFatalLog(const char* /* file */, + int /* line */, absl::string_view output) { WriteFatalLog(output); } diff --git a/rtc_base/crypto_random.cc b/rtc_base/crypto_random.cc index 68b86a07c3..d9660b154b 100644 --- a/rtc_base/crypto_random.cc +++ b/rtc_base/crypto_random.cc @@ -34,7 +34,7 @@ class SecureRandomGenerator : public RandomGenerator { public: SecureRandomGenerator() {} ~SecureRandomGenerator() override {} - bool Init(const void* seed, size_t len) override { return true; } + bool Init(const void* /* seed */, size_t /* len */) override { return true; } bool Generate(void* buf, size_t len) override { return (RAND_bytes(reinterpret_cast(buf), len) > 0); } @@ -45,7 +45,7 @@ class TestRandomGenerator : public RandomGenerator { public: TestRandomGenerator() : seed_(7) {} ~TestRandomGenerator() override {} - bool Init(const void* seed, size_t len) override { return true; } + bool Init(const void* /* seed */, size_t /* len */) override { return true; } bool Generate(void* buf, size_t len) override { for (size_t i = 0; i < len; ++i) { static_cast(buf)[i] = static_cast(GetRandom()); diff --git a/rtc_base/logging.cc b/rtc_base/logging.cc index 61a3c667ba..f0461f79e9 100644 --- a/rtc_base/logging.cc +++ b/rtc_base/logging.cc @@ -220,7 +220,7 @@ LogMessage::~LogMessage() { } } -void LogMessage::AddTag(const char* tag) { +void LogMessage::AddTag([[maybe_unused]] const char* tag) { #ifdef WEBRTC_ANDROID log_line_.set_tag(tag); #endif diff --git a/rtc_base/logging.h b/rtc_base/logging.h index 2a8f9ba5d6..6d5a4bebcf 100644 --- a/rtc_base/logging.h +++ b/rtc_base/logging.h @@ -431,7 +431,7 @@ class LogMessageVoidify { // This has to be an operator with a precedence lower than << but // higher than ?: template - void operator&(LogStreamer&& streamer) {} + void operator&(LogStreamer&& /* streamer */) {} }; } // namespace webrtc_logging_impl diff --git a/rtc_base/numerics/safe_conversions_impl.h b/rtc_base/numerics/safe_conversions_impl.h index e924ce3256..fe0f0d731f 100644 --- a/rtc_base/numerics/safe_conversions_impl.h +++ b/rtc_base/numerics/safe_conversions_impl.h @@ -101,7 +101,9 @@ struct RangeCheckImpl {}; // Dst range always contains the result: nothing to check. template struct RangeCheckImpl { - static constexpr RangeCheckResult Check(Src value) { return TYPE_VALID; } + static constexpr RangeCheckResult Check(Src /* value */) { + return TYPE_VALID; + } }; // Signed to signed narrowing. diff --git a/rtc_base/sanitizer.h b/rtc_base/sanitizer.h index 8af0824b67..7b8a6fc668 100644 --- a/rtc_base/sanitizer.h +++ b/rtc_base/sanitizer.h @@ -56,6 +56,14 @@ static inline void rtc_AsanPoison(const volatile void* ptr, size_t num_elements) { #if RTC_HAS_ASAN ASAN_POISON_MEMORY_REGION(ptr, element_size * num_elements); +#else + // This is to prevent from the compiler raising a warning/error over unused + // variables. We cannot use clang's annotation (`[[maybe_unused]]`) because + // this file is also included from c files which doesn't support the + // annotation till we switch to C23 + (void)ptr; + (void)element_size; + (void)num_elements; #endif } @@ -67,6 +75,10 @@ static inline void rtc_AsanUnpoison(const volatile void* ptr, size_t num_elements) { #if RTC_HAS_ASAN ASAN_UNPOISON_MEMORY_REGION(ptr, element_size * num_elements); +#else + (void)ptr; + (void)element_size; + (void)num_elements; #endif } @@ -77,6 +89,10 @@ static inline void rtc_MsanMarkUninitialized(const volatile void* ptr, size_t num_elements) { #if RTC_HAS_MSAN __msan_poison(ptr, element_size * num_elements); +#else + (void)ptr; + (void)element_size; + (void)num_elements; #endif } @@ -88,6 +104,10 @@ static inline void rtc_MsanCheckInitialized(const volatile void* ptr, size_t num_elements) { #if RTC_HAS_MSAN __msan_check_mem_is_initialized(ptr, element_size * num_elements); +#else + (void)ptr; + (void)element_size; + (void)num_elements; #endif } diff --git a/rtc_base/socket.h b/rtc_base/socket.h index 10e603738d..4b9a1699df 100644 --- a/rtc_base/socket.h +++ b/rtc_base/socket.h @@ -113,10 +113,10 @@ class RTC_EXPORT Socket { // `timestamp` is in units of microseconds. virtual int Recv(void* pv, size_t cb, int64_t* timestamp) = 0; // TODO(webrtc:15368): Deprecate and remove. - virtual int RecvFrom(void* pv, - size_t cb, - SocketAddress* paddr, - int64_t* timestamp) { + virtual int RecvFrom(void* /* pv */, + size_t /* cb */, + SocketAddress* /* paddr */, + int64_t* /* timestamp */) { // Not implemented. Use RecvFrom(ReceiveBuffer& buffer). RTC_CHECK_NOTREACHED(); } diff --git a/rtc_base/string_to_number.h b/rtc_base/string_to_number.h index 5e8aea5237..d6e3b38aa9 100644 --- a/rtc_base/string_to_number.h +++ b/rtc_base/string_to_number.h @@ -92,7 +92,7 @@ StringToNumber(absl::string_view str, int base = 10) { template typename std::enable_if::value, std::optional>::type -StringToNumber(absl::string_view str, int base = 10) { +StringToNumber(absl::string_view str, int /* base */ = 10) { static_assert( std::numeric_limits::max() <= std::numeric_limits::max(), "StringToNumber only supports floating-point numbers as large " diff --git a/rtc_base/synchronization/sequence_checker_internal.h b/rtc_base/synchronization/sequence_checker_internal.h index a23ac08885..eb3bf36deb 100644 --- a/rtc_base/synchronization/sequence_checker_internal.h +++ b/rtc_base/synchronization/sequence_checker_internal.h @@ -59,8 +59,8 @@ class RTC_EXPORT SequenceCheckerImpl { // right version for your build configuration. class SequenceCheckerDoNothing { public: - explicit SequenceCheckerDoNothing(bool attach_to_current_thread) {} - explicit SequenceCheckerDoNothing(TaskQueueBase* attached_queue) {} + explicit SequenceCheckerDoNothing(bool /* attach_to_current_thread */) {} + explicit SequenceCheckerDoNothing(TaskQueueBase* /* attached_queue */) {} bool IsCurrent() const { return true; } void Detach() {} }; @@ -68,7 +68,7 @@ class SequenceCheckerDoNothing { template std::enable_if_t, std::string> -ExpectationToString(const ThreadLikeObject* checker) { +ExpectationToString([[maybe_unused]] const ThreadLikeObject* checker) { #if RTC_DCHECK_IS_ON return checker->ExpectationToString(); #else