Get rid of deprecated version of NackSender::SendNack [1/2]

[1/2] - Make new version pure-virtual, and deprecated version non-pure.
        This will allow deleting the deprecated version from downstream
	projects.
[2/2] - Remove deprecated version.

TBR=stefan@webrtc.org

Bug: webrtc:10336
Change-Id: Ia132ef071b1f379fc74834178e75e981ca908125
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/144042
Commit-Queue: Elad Alon <eladalon@webrtc.org>
Reviewed-by: Erik Språng <sprang@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#28413}
diff --git a/modules/include/module_common_types.h b/modules/include/module_common_types.h
index 83b63a6..027bbdd 100644
--- a/modules/include/module_common_types.h
+++ b/modules/include/module_common_types.h
@@ -70,14 +70,14 @@
   // // TODO(bugs.webrtc.org/10336): Update downstream and remove this method.
   // Make the one remaining version of SendNack() pure virtual again.
   RTC_DEPRECATED virtual void SendNack(
-      const std::vector<uint16_t>& sequence_numbers) = 0;
+      const std::vector<uint16_t>& sequence_numbers) {}
 
   // If |buffering_allowed|, other feedback messages (e.g. key frame requests)
   // may be added to the same outgoing feedback message. In that case, it's up
   // to the user of the interface to ensure that when all buffer-able messages
   // have been added, the feedback message is triggered.
   virtual void SendNack(const std::vector<uint16_t>& sequence_numbers,
-                        bool buffering_allowed) {}
+                        bool buffering_allowed) = 0;
 
  protected:
   virtual ~NackSender() {}
diff --git a/modules/video_coding/nack_module_unittest.cc b/modules/video_coding/nack_module_unittest.cc
index 5d88702..8aad232 100644
--- a/modules/video_coding/nack_module_unittest.cc
+++ b/modules/video_coding/nack_module_unittest.cc
@@ -27,10 +27,6 @@
         nack_module_(clock_.get(), this, this),
         keyframes_requested_(0) {}
 
-  void SendNack(const std::vector<uint16_t>& sequence_numbers) override {
-    RTC_NOTREACHED();
-  }
-
   void SendNack(const std::vector<uint16_t>& sequence_numbers,
                 bool buffering_allowed) override {
     sent_nacks_.insert(sent_nacks_.end(), sequence_numbers.begin(),
@@ -307,10 +303,6 @@
         nack_module_(clock_.get(), this, this),
         keyframes_requested_(0) {}
 
-  void SendNack(const std::vector<uint16_t>& sequence_numbers) override {
-    RTC_NOTREACHED();
-  }
-
   void SendNack(const std::vector<uint16_t>& sequence_numbers,
                 bool buffering_allowed) override {
     sent_nacks_.insert(sent_nacks_.end(), sequence_numbers.begin(),
diff --git a/video/rtp_video_stream_receiver.cc b/video/rtp_video_stream_receiver.cc
index 547c2cf..05d7303 100644
--- a/video/rtp_video_stream_receiver.cc
+++ b/video/rtp_video_stream_receiver.cc
@@ -94,11 +94,6 @@
 }
 
 void RtpVideoStreamReceiver::RtcpFeedbackBuffer::SendNack(
-    const std::vector<uint16_t>& sequence_numbers) {
-  RTC_NOTREACHED();
-}
-
-void RtpVideoStreamReceiver::RtcpFeedbackBuffer::SendNack(
     const std::vector<uint16_t>& sequence_numbers,
     bool buffering_allowed) {
   RTC_DCHECK(!sequence_numbers.empty());
diff --git a/video/rtp_video_stream_receiver.h b/video/rtp_video_stream_receiver.h
index 3202a31..2c1f8ba 100644
--- a/video/rtp_video_stream_receiver.h
+++ b/video/rtp_video_stream_receiver.h
@@ -196,7 +196,6 @@
     void RequestKeyFrame() override;
 
     // NackSender implementation.
-    void SendNack(const std::vector<uint16_t>& sequence_numbers) override;
     void SendNack(const std::vector<uint16_t>& sequence_numbers,
                   bool buffering_allowed) override;
 
diff --git a/video/video_receive_stream.cc b/video/video_receive_stream.cc
index 3d27e6d..458330d 100644
--- a/video/video_receive_stream.cc
+++ b/video/video_receive_stream.cc
@@ -513,11 +513,6 @@
   rtp_video_stream_receiver_.SetFrameDecryptor(std::move(frame_decryptor));
 }
 
-void VideoReceiveStream::SendNack(
-    const std::vector<uint16_t>& sequence_numbers) {
-  SendNack(sequence_numbers, true);
-}
-
 void VideoReceiveStream::SendNack(const std::vector<uint16_t>& sequence_numbers,
                                   bool buffering_allowed) {
   RTC_DCHECK(buffering_allowed);
diff --git a/video/video_receive_stream.h b/video/video_receive_stream.h
index 3acba46..869b111 100644
--- a/video/video_receive_stream.h
+++ b/video/video_receive_stream.h
@@ -101,7 +101,6 @@
   void OnFrame(const VideoFrame& video_frame) override;
 
   // Implements NackSender.
-  void SendNack(const std::vector<uint16_t>& sequence_numbers) override;
   // For this particular override of the interface,
   // only (buffering_allowed == true) is acceptable.
   void SendNack(const std::vector<uint16_t>& sequence_numbers,