[libc-commits] [libc] 9fb7924 - [libc][time] Fix -Wshorten-64-to-32 warning (#132947)

via libc-commits libc-commits at lists.llvm.org
Tue Mar 25 08:53:11 PDT 2025


Author: Paul Kirth
Date: 2025-03-25T08:53:08-07:00
New Revision: 9fb792496687df1136d78e828cffe4f7f04a7043

URL: https://github.com/llvm/llvm-project/commit/9fb792496687df1136d78e828cffe4f7f04a7043
DIFF: https://github.com/llvm/llvm-project/commit/9fb792496687df1136d78e828cffe4f7f04a7043.diff

LOG: [libc][time] Fix -Wshorten-64-to-32 warning (#132947)

This breaks builds of libc with top of tree clang under -Werror.

Added: 
    

Modified: 
    libc/src/time/time_utils.cpp

Removed: 
    


################################################################################
diff  --git a/libc/src/time/time_utils.cpp b/libc/src/time/time_utils.cpp
index 6e06deb30e354..1c519c3ff8aec 100644
--- a/libc/src/time/time_utils.cpp
+++ b/libc/src/time/time_utils.cpp
@@ -102,10 +102,10 @@ cpp::optional<time_t> mktime_internal(const tm *tm_out) {
 
   // TODO: https://github.com/llvm/llvm-project/issues/121962
   // Need to handle timezone and update of tm_isdst.
-  time_t seconds = tm_out->tm_sec +
-                   tm_out->tm_min * time_constants::SECONDS_PER_MIN +
-                   tm_out->tm_hour * time_constants::SECONDS_PER_HOUR +
-                   total_days * time_constants::SECONDS_PER_DAY;
+  time_t seconds = static_cast<time_t>(
+      tm_out->tm_sec + tm_out->tm_min * time_constants::SECONDS_PER_MIN +
+      tm_out->tm_hour * time_constants::SECONDS_PER_HOUR +
+      total_days * time_constants::SECONDS_PER_DAY);
   return seconds;
 }
 


        


More information about the libc-commits mailing list