[llvm] 616a866 - [llvm][Support] Fix missing field in WSADATA warning

David Spickett via llvm-commits llvm-commits at lists.llvm.org
Thu Dec 14 03:27:58 PST 2023


Author: David Spickett
Date: 2023-12-14T11:25:57Z
New Revision: 616a866bed70642b0bddf8885b541dacf7249c1b

URL: https://github.com/llvm/llvm-project/commit/616a866bed70642b0bddf8885b541dacf7249c1b
DIFF: https://github.com/llvm/llvm-project/commit/616a866bed70642b0bddf8885b541dacf7249c1b.diff

LOG: [llvm][Support] Fix missing field in WSADATA warning

```
[136/6185] Building CXX object lib\Support\CMakeFiles\LLVMSupport.dir\raw_ostream.cpp.obj
C:\Work\david.spickett\llvm-project\llvm\lib\Support\raw_ostream.cpp(977,23): warning: missing field 'wHighVersion' initializer [-Wmissing-field-initializers]
  977 |   WSADATA WsaData = {0};
      |                       ^
```

According to
https://learn.microsoft.com/en-us/windows/win32/api/winsock/ns-winsock-wsadata
this can have any number of fields depending on some ifdefs,
so I've replaced `{0}` with a memset of whatever the size happens to be.

Probably doesn't matter for correctness anyway, but the compiler
won't see it used uninitialised at least.

Added: 
    

Modified: 
    llvm/lib/Support/raw_ostream.cpp

Removed: 
    


################################################################################
diff  --git a/llvm/lib/Support/raw_ostream.cpp b/llvm/lib/Support/raw_ostream.cpp
index 8c59ee2178273..b93246e912d54 100644
--- a/llvm/lib/Support/raw_ostream.cpp
+++ b/llvm/lib/Support/raw_ostream.cpp
@@ -974,7 +974,8 @@ bool raw_fd_stream::classof(const raw_ostream *OS) {
 
 #ifdef _WIN32
 WSABalancer::WSABalancer() {
-  WSADATA WsaData = {0};
+  WSADATA WsaData;
+  ::memset(&WsaData, 0, sizeof(WsaData));
   if (WSAStartup(MAKEWORD(2, 2), &WsaData) != 0) {
     llvm::report_fatal_error("WSAStartup failed");
   }


        


More information about the llvm-commits mailing list