diff --git a/src/ftxui/component/screen_interactive.cpp b/src/ftxui/component/screen_interactive.cpp
index 46e2b5b3c2f0d4a6ffbf83e275a543d351cc06d8..9f4eba7323148a6b1408a31559622de538cd2264 100644
--- a/src/ftxui/component/screen_interactive.cpp
+++ b/src/ftxui/component/screen_interactive.cpp
@@ -174,9 +174,9 @@ void EventListener(std::atomic<bool>* quit, Sender<Task> out) {
     }
 
     const size_t buffer_size = 100;
-    std::array<char, buffer_size> buffer;                     // NOLINT;
-    int l = read(fileno(stdin), buffer.data(), buffer_size);  // NOLINT
-    for (int i = 0; i < l; ++i) {
+    std::array<char, buffer_size> buffer;                        // NOLINT;
+    size_t l = read(fileno(stdin), buffer.data(), buffer_size);  // NOLINT
+    for (size_t i = 0; i < l; ++i) {
       parser.Add(buffer[i]);  // NOLINT
     }
   }
diff --git a/src/ftxui/dom/flexbox_helper.cpp b/src/ftxui/dom/flexbox_helper.cpp
index f404f2caebcdf2a0fdb41fd32ce0f0c7257ccd1c..d3b71fc9fad4c88ad0e5dc098f976006c8dde9ab 100644
--- a/src/ftxui/dom/flexbox_helper.cpp
+++ b/src/ftxui/dom/flexbox_helper.cpp
@@ -161,7 +161,7 @@ void SetY(Global& g, std::vector<Line> lines) {
     }
 
     case FlexboxConfig::AlignContent::Stretch: {
-      for (int i = ys.size() - 1; i >= 0; --i) {  // NOLINT
+      for (int i = static_cast<int>(ys.size()) - 1; i >= 0; --i) {  // NOLINT
         const int shifted = remaining_space * (i + 0) / (i + 1);
         ys[i] += shifted;
         const int consumed = remaining_space - shifted;
@@ -172,7 +172,7 @@ void SetY(Global& g, std::vector<Line> lines) {
     }
 
     case FlexboxConfig::AlignContent::SpaceBetween: {
-      for (int i = ys.size() - 1; i >= 1; --i) {  // NOLINT
+      for (int i = static_cast<int>(ys.size()) - 1; i >= 1; --i) {  // NOLINT
         ys[i] += remaining_space;
         remaining_space = remaining_space * (i - 1) / i;
       }
@@ -180,7 +180,7 @@ void SetY(Global& g, std::vector<Line> lines) {
     }
 
     case FlexboxConfig::AlignContent::SpaceAround: {
-      for (int i = ys.size() - 1; i >= 0; --i) {  // NOLINT
+      for (int i = static_cast<int>(ys.size()) - 1; i >= 0; --i) {  // NOLINT
         ys[i] += remaining_space * (2 * i + 1) / (2 * i + 2);
         remaining_space = remaining_space * (2 * i) / (2 * i + 2);
       }
@@ -188,7 +188,7 @@ void SetY(Global& g, std::vector<Line> lines) {
     }
 
     case FlexboxConfig::AlignContent::SpaceEvenly: {
-      for (int i = ys.size() - 1; i >= 0; --i) {  // NOLINT
+      for (int i = static_cast<int>(ys.size()) - 1; i >= 0; --i) {  // NOLINT
         ys[i] += remaining_space * (i + 1) / (i + 2);
         remaining_space = remaining_space * (i + 1) / (i + 2);
       }