[PATCH] D49782: [libcxx] [windows] Fix warning about comparing ints of different signs

Martin Storsjö via Phabricator via cfe-commits cfe-commits at lists.llvm.org
Wed Jul 25 03:33:15 PDT 2018


mstorsjo created this revision.
mstorsjo added reviewers: pirama, pcc, compnerd, srhines.
Herald added a reviewer: EricWF.
Herald added a subscriber: ldionne.

This fixes a warning like this:

warning: comparison of integers of different signs:

      'std::__1::__libcpp_tls_key' (aka 'long') and 'DWORD'
      (aka 'unsigned long') [-Wsign-compare]
  if (*__key == FLS_OUT_OF_INDEXES)
      ~~~~~~ ^  ~~~~~~~~~~~~~~~~~~
   


Repository:
  rCXX libc++

https://reviews.llvm.org/D49782

Files:
  src/support/win32/thread_win32.cpp


Index: src/support/win32/thread_win32.cpp
===================================================================
--- src/support/win32/thread_win32.cpp
+++ src/support/win32/thread_win32.cpp
@@ -254,9 +254,10 @@
 int __libcpp_tls_create(__libcpp_tls_key* __key,
                         void(_LIBCPP_TLS_DESTRUCTOR_CC* __at_exit)(void*))
 {
-  *__key = FlsAlloc(__at_exit);
-  if (*__key == FLS_OUT_OF_INDEXES)
+  DWORD index = FlsAlloc(__at_exit);
+  if (index == FLS_OUT_OF_INDEXES)
     return GetLastError();
+  *__key = index;
   return 0;
 }
 


-------------- next part --------------
A non-text attachment was scrubbed...
Name: D49782.157215.patch
Type: text/x-patch
Size: 547 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/cfe-commits/attachments/20180725/49150075/attachment.bin>


More information about the cfe-commits mailing list