diff --git a/src/posix/client.cpp b/src/posix/client.cpp
index 0002df2..5da065c 100644
--- a/src/posix/client.cpp
+++ b/src/posix/client.cpp
@@ -182,7 +182,7 @@
         else
         {
             aBuffer = reinterpret_cast<const uint8_t *>(aBuffer) + rval;
-            aSize -= rval;
+            aSize -= static_cast<size_t>(rval);
         }
     }
 
@@ -316,7 +316,7 @@
 
                     if (buffer[i] == '\r' || buffer[i] == '\n')
                     {
-                        VerifyOrExit(DoWrite(STDOUT_FILENO, buffer + lineStart, i - lineStart + 1),
+                        VerifyOrExit(DoWrite(STDOUT_FILENO, buffer + lineStart, static_cast<size_t>(i - lineStart + 1)),
                                      ret = OT_EXIT_FAILURE);
                         lineStart = i + 1;
                     }
@@ -331,7 +331,8 @@
                 if (lineStart < rval && promptState != 1)
                 {
                     assert(promptState != 0 && promptState != 2);
-                    VerifyOrExit(DoWrite(STDOUT_FILENO, buffer + lineStart, rval - lineStart), ret = OT_EXIT_FAILURE);
+                    VerifyOrExit(DoWrite(STDOUT_FILENO, buffer + lineStart, static_cast<size_t>(rval - lineStart)),
+                                 ret = OT_EXIT_FAILURE);
                 }
             }
         }
