[Lldb-commits] [lldb] [lldb] Allow building using Mingw-w64 on Windows. (PR #150382)
via lldb-commits
lldb-commits at lists.llvm.org
Thu Jul 24 00:26:48 PDT 2025
https://github.com/cvspvr created https://github.com/llvm/llvm-project/pull/150382
I wasn't able to build lldb using Mingw-w64 on Windows without changing 3 lines.
>From e03e5b5840ba0ee95faa62ee0863a52f11fcc030 Mon Sep 17 00:00:00 2001
From: cvspvr <37761007+cvspvr at users.noreply.github.com>
Date: Thu, 24 Jul 2025 17:15:01 +1000
Subject: [PATCH 1/2] Update MainLoopWindows.cpp
Added include atomic to avoid incomplete type 'std::atomic<bool>' error.
---
lldb/source/Host/windows/MainLoopWindows.cpp | 1 +
1 file changed, 1 insertion(+)
diff --git a/lldb/source/Host/windows/MainLoopWindows.cpp b/lldb/source/Host/windows/MainLoopWindows.cpp
index a1de895c0ba98..c1a018238432d 100644
--- a/lldb/source/Host/windows/MainLoopWindows.cpp
+++ b/lldb/source/Host/windows/MainLoopWindows.cpp
@@ -14,6 +14,7 @@
#include "llvm/Config/llvm-config.h"
#include "llvm/Support/WindowsError.h"
#include <algorithm>
+#include <atomic>
#include <cassert>
#include <ctime>
#include <io.h>
>From 4d86086959654b60b931e682835471617887820a Mon Sep 17 00:00:00 2001
From: cvspvr <37761007+cvspvr at users.noreply.github.com>
Date: Thu, 24 Jul 2025 17:16:09 +1000
Subject: [PATCH 2/2] Update PipeWindows.cpp
Changed ceil to std::chrono::ceil to avoid expected primary-expression before '>' token error.
---
lldb/source/Host/windows/PipeWindows.cpp | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/lldb/source/Host/windows/PipeWindows.cpp b/lldb/source/Host/windows/PipeWindows.cpp
index 0b495fff69dfa..3b2152e405737 100644
--- a/lldb/source/Host/windows/PipeWindows.cpp
+++ b/lldb/source/Host/windows/PipeWindows.cpp
@@ -279,7 +279,7 @@ llvm::Expected<size_t> PipeWindows::Read(void *buf, size_t size,
return Status(failure_error, eErrorTypeWin32).takeError();
DWORD timeout_msec =
- timeout ? ceil<std::chrono::milliseconds>(*timeout).count() : INFINITE;
+ timeout ? std::chrono::ceil<std::chrono::milliseconds>(*timeout).count() : INFINITE;
DWORD wait_result =
::WaitForSingleObject(m_read_overlapped.hEvent, timeout_msec);
if (wait_result != WAIT_OBJECT_0) {
@@ -324,7 +324,7 @@ llvm::Expected<size_t> PipeWindows::Write(const void *buf, size_t size,
return Status(failure_error, eErrorTypeWin32).takeError();
DWORD timeout_msec =
- timeout ? ceil<std::chrono::milliseconds>(*timeout).count() : INFINITE;
+ timeout ? std::chrono::ceil<std::chrono::milliseconds>(*timeout).count() : INFINITE;
DWORD wait_result =
::WaitForSingleObject(m_write_overlapped.hEvent, timeout_msec);
if (wait_result != WAIT_OBJECT_0) {
More information about the lldb-commits
mailing list