diff --git a/quic/core/quic_framer.cc b/quic/core/quic_framer.cc
index 1aec0bf..6446ef8 100644
--- a/quic/core/quic_framer.cc
+++ b/quic/core/quic_framer.cc
@@ -4937,8 +4937,12 @@
     return false;
   }
   if (!no_stream_frame_length) {
-    if ((frame.data_length > std::numeric_limits<uint16_t>::max()) ||
-        !writer->WriteUInt16(static_cast<uint16_t>(frame.data_length))) {
+    static_assert(
+        std::numeric_limits<typeof(frame.data_length)>::max() <=
+            std::numeric_limits<uint16_t>::max(),
+        "If frame.data_length can hold more than a uint16_t than we need to "
+        "check that frame.data_length <= std::numeric_limits<uint16_t>::max()");
+    if (!writer->WriteUInt16(static_cast<uint16_t>(frame.data_length))) {
       QUIC_BUG << "Writing stream frame length failed";
       return false;
     }
diff --git a/quic/platform/api/quic_socket_address.cc b/quic/platform/api/quic_socket_address.cc
index eefad84..089c91c 100644
--- a/quic/platform/api/quic_socket_address.cc
+++ b/quic/platform/api/quic_socket_address.cc
@@ -38,12 +38,14 @@
 
 QuicSocketAddress::QuicSocketAddress(const sockaddr* saddr, socklen_t len) {
   sockaddr_storage storage;
-  if (len < 0 ||
+  static_assert(std::numeric_limits<socklen_t>::max() >= sizeof(storage),
+                "Cannot cast sizeof(storage) to socklen_t as it does not fit");
+  if (len < static_cast<socklen_t>(sizeof(sockaddr)) ||
       (saddr->sa_family == AF_INET &&
-       static_cast<size_t>(len) < sizeof(sockaddr_in)) ||
+       len < static_cast<socklen_t>(sizeof(sockaddr_in))) ||
       (saddr->sa_family == AF_INET6 &&
-       static_cast<size_t>(len) < sizeof(sockaddr_in6)) ||
-      static_cast<size_t>(len) > sizeof(storage)) {
+       len < static_cast<socklen_t>(sizeof(sockaddr_in6))) ||
+      len > static_cast<socklen_t>(sizeof(storage))) {
     QUIC_BUG << "Socket address of invalid length provided";
     return;
   }
