[Lldb-commits] [lldb] [lldb] Ignore registers that the debugserver fails to read (PR #132122)

2025-03-22 Thread Robert O'Callahan via lldb-commits

rocallahan wrote:

@labath can someone merge this for me? Thanks!

https://github.com/llvm/llvm-project/pull/132122
___
lldb-commits mailing list
lldb-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits


[Lldb-commits] [lldb] [lldb][lldb-dap] Added support for "WriteMemory" request. (PR #131820)

2025-03-22 Thread Walter Erquinigo via lldb-commits

walter-erquinigo wrote:

@santhoshe447 , the VSCode folks can take up to several weeks to reply. In the 
meantime, you can check the vscode repo https://github.com/microsoft/vscode for 
usages of this request to learn more about what's going on. 

https://github.com/llvm/llvm-project/pull/131820
___
lldb-commits mailing list
lldb-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits


[Lldb-commits] [compiler-rt] [libcxx] [libcxxabi] [libunwind] [lldb] [llvm] [compiler-rt] Disable LLVM_ENABLE_PER_TARGET_RUNTIME_DIR=ON on AIX. (PR #131200)

2025-03-22 Thread Daniel Chen via lldb-commits

DanielCChen wrote:

I will revert this commit first. 

https://github.com/llvm/llvm-project/pull/131200
___
lldb-commits mailing list
lldb-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits


[Lldb-commits] [lldb] [lldb-dap] Adding support for cancelling a request. (PR #130169)

2025-03-22 Thread Jonas Devlieghere via lldb-commits


@@ -240,6 +242,21 @@ void DAP::SendJSON(const llvm::json::Value &json) {
 }
 
 void DAP::Send(const protocol::Message &message) {
+  if (auto *resp = std::get_if(&message);
+  resp && debugger.InterruptRequested()) {
+// If the debugger was interrupted, convert this response into a 
'cancelled'
+// response.

JDevlieghere wrote:

```suggestion
// If the debugger was interrupted, convert this response into a 'cancelled'
// response because we might have a partial result.
```

https://github.com/llvm/llvm-project/pull/130169
___
lldb-commits mailing list
lldb-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits


[Lldb-commits] [clang] [clang-tools-extra] [lldb] Reland: [clang] preserve class type sugar when taking pointer to member (PR #132401)

2025-03-22 Thread Matheus Izvekov via lldb-commits

mizvekov wrote:

Thanks, for the report, will be fixed by 
https://github.com/llvm/llvm-project/pull/132551

https://github.com/llvm/llvm-project/pull/132401
___
lldb-commits mailing list
lldb-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits


[Lldb-commits] [clang] [clang-tools-extra] [lldb] Reland: [clang] preserve class type sugar when taking pointer to member (PR #132401)

2025-03-22 Thread Martin Storsjö via lldb-commits

mstorsjo wrote:

This change broke building Qt (tested with 6.8), ending up with errors like 
this:

```
qtbase/src/corelib/kernel/qcoreapplication.cpp:2946:78: error: 'this' cannot be 
used in a static member function declaration
 2946 | : slotObject(std::move(slotObject)), context(context ? 
context : this)
  | 
 ^
qtbase/src/corelib/kernel/qobjectdefs_impl.h:405:23: note: in instantiation of 
template class 'QtPrivate::CallableHelper' requested here
  405 | struct Callable : CallableHelper::Type
  |   ^
qtbase/src/corelib/kernel/qobjectdefs.h:437:38: note: in instantiation of 
template class 'QtPrivate::Callable' requested here
  437 |  typename QtPrivate::Callable::ReturnType *ret)
  |  ^
qtbase/src/corelib/kernel/qcoreapplication.cpp:2980:13: note: while 
substituting deduced template arguments into function template 'invokeMethod' 
[with Func = void (PermissionReceiver::*)(const QPermission &)]
 2980 | QMetaObject::invokeMethod(receiver,
  | ^
```

This issue also persists on the latest git main as of right now.

I've reduced the issue down to the following small reproducer:
```c++
template  struct CallableHelper {
  static auto Resolve() -> Func;
};
struct QIODevice {
  void d_func() { d_ptr; }
  int d_ptr;
};
struct Callable : CallableHelper {};
```
Reproducible with e.g. `clang -target x86_64-linux-gnu -c repro.cpp` 
(presumably the same way for any target).

https://github.com/llvm/llvm-project/pull/132401
___
lldb-commits mailing list
lldb-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits


[Lldb-commits] [lldb] draft: [lldb] Upgrade ValueObject::GetData to return llvm::Expected (PR #130516)

2025-03-22 Thread Julius Alexandre via lldb-commits


@@ -523,13 +522,11 @@ class EntityVariableBase : public Materializer::Entity {
   return;
 }
   } else {
-DataExtractor data;
-Status extract_error;
-valobj_sp->GetData(data, extract_error);
-if (!extract_error.Success()) {
+auto data_or_err = valobj_sp->GetData();
+if (auto error = data_or_err.takeError()) {
   err = Status::FromErrorStringWithFormat(
   "couldn't get the value of %s: %s", GetName().AsCString(),
-  extract_error.AsCString());
+  llvm::toString(std::move(error)).c_str());

wizardengineer wrote:

is that above solution good good? or should i just let it stay as 
`Status::FromErrorStringWithFormat(...)`

https://github.com/llvm/llvm-project/pull/130516
___
lldb-commits mailing list
lldb-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits


[Lldb-commits] [lldb] draft: [lldb] Upgrade ValueObject::GetData to return llvm::Expected (PR #130516)

2025-03-22 Thread Julius Alexandre via lldb-commits


@@ -523,13 +522,11 @@ class EntityVariableBase : public Materializer::Entity {
   return;
 }
   } else {
-DataExtractor data;
-Status extract_error;
-valobj_sp->GetData(data, extract_error);
-if (!extract_error.Success()) {
+auto data_or_err = valobj_sp->GetData();
+if (auto error = data_or_err.takeError()) {
   err = Status::FromErrorStringWithFormat(
   "couldn't get the value of %s: %s", GetName().AsCString(),
-  extract_error.AsCString());
+  llvm::toString(std::move(error)).c_str());

wizardengineer wrote:

I don't seem as if I can directly just do a `llvm::joinErrors`, `err` argument 
is a `lldb_private::Status`. I don't think there's any conversions from 
`Status` to `llvm::Errors`. I could be wrong.

https://github.com/llvm/llvm-project/pull/130516
___
lldb-commits mailing list
lldb-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits