[Lldb-commits] [lldb] lldb: Fix some tests that fail with system libstdc++ (PR #106885)
llvmbot wrote: @llvm/pr-subscribers-lldb Author: Tom Stellard (tstellar) Changes This is a revert of b1fcc1840c312472cb9ccb8c4e5e02ca13b31113. These tests weren't working on Ubuntu 22.04 or Fedora 37-40. I'm not sure exactly why, but it seems like they may be incompatible with libstdc++. Also, despite the fact that the tests were using the system libstdc++, the tests were only run when libcxx was enabled. I tested this with a RelWithDebInfo build and the tests passed. Fixes #106475 --- Full diff: https://github.com/llvm/llvm-project/pull/106885.diff 3 Files Affected: - (modified) lldb/test/API/commands/expression/import-std-module/deque-dbg-info-content/Makefile (+1-3) - (modified) lldb/test/API/commands/expression/import-std-module/list-dbg-info-content/Makefile (+1-3) - (modified) lldb/test/API/commands/expression/import-std-module/vector-dbg-info-content/Makefile (+1-3) ``diff diff --git a/lldb/test/API/commands/expression/import-std-module/deque-dbg-info-content/Makefile b/lldb/test/API/commands/expression/import-std-module/deque-dbg-info-content/Makefile index 98638c56f0b98f..f938f7428468ab 100644 --- a/lldb/test/API/commands/expression/import-std-module/deque-dbg-info-content/Makefile +++ b/lldb/test/API/commands/expression/import-std-module/deque-dbg-info-content/Makefile @@ -1,5 +1,3 @@ -# FIXME: once the expression evaluator can handle std libraries with debug -# info, change this to USE_LIBCPP=1 -USE_SYSTEM_STDLIB := 1 +USE_LIBCPP := 1 CXX_SOURCES := main.cpp include Makefile.rules diff --git a/lldb/test/API/commands/expression/import-std-module/list-dbg-info-content/Makefile b/lldb/test/API/commands/expression/import-std-module/list-dbg-info-content/Makefile index 98638c56f0b98f..f938f7428468ab 100644 --- a/lldb/test/API/commands/expression/import-std-module/list-dbg-info-content/Makefile +++ b/lldb/test/API/commands/expression/import-std-module/list-dbg-info-content/Makefile @@ -1,5 +1,3 @@ -# FIXME: once the expression evaluator can handle std libraries with debug -# info, change this to USE_LIBCPP=1 -USE_SYSTEM_STDLIB := 1 +USE_LIBCPP := 1 CXX_SOURCES := main.cpp include Makefile.rules diff --git a/lldb/test/API/commands/expression/import-std-module/vector-dbg-info-content/Makefile b/lldb/test/API/commands/expression/import-std-module/vector-dbg-info-content/Makefile index 98638c56f0b98f..f938f7428468ab 100644 --- a/lldb/test/API/commands/expression/import-std-module/vector-dbg-info-content/Makefile +++ b/lldb/test/API/commands/expression/import-std-module/vector-dbg-info-content/Makefile @@ -1,5 +1,3 @@ -# FIXME: once the expression evaluator can handle std libraries with debug -# info, change this to USE_LIBCPP=1 -USE_SYSTEM_STDLIB := 1 +USE_LIBCPP := 1 CXX_SOURCES := main.cpp include Makefile.rules `` https://github.com/llvm/llvm-project/pull/106885 ___ lldb-commits mailing list lldb-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits
[Lldb-commits] [lldb] [lldb] Change ValueObject::AddressOf() to return Expected (NFC) (PR #106831)
https://github.com/AbdAlRahmanGad updated https://github.com/llvm/llvm-project/pull/106831 >From aeb2b3380c4aea636812fd37c19b5ca920d98806 Mon Sep 17 00:00:00 2001 From: AbdAlRahman Gad Date: Sat, 31 Aug 2024 10:11:39 +0300 Subject: [PATCH] [lldb] Change ValueObject::AddressOf() to return Expected (NFC) --- lldb/include/lldb/Core/ValueObject.h | 2 +- .../include/lldb/Core/ValueObjectConstResult.h | 2 +- .../lldb/Core/ValueObjectConstResultCast.h | 2 +- .../lldb/Core/ValueObjectConstResultChild.h| 2 +- .../lldb/Core/ValueObjectConstResultImpl.h | 2 +- lldb/source/API/SBValue.cpp| 10 -- lldb/source/Core/ValueObject.cpp | 11 +-- lldb/source/Core/ValueObjectConstResult.cpp| 3 ++- .../source/Core/ValueObjectConstResultCast.cpp | 3 ++- .../Core/ValueObjectConstResultChild.cpp | 3 ++- .../source/Core/ValueObjectConstResultImpl.cpp | 3 ++- .../Clang/ClangExpressionDeclMap.cpp | 18 -- .../Plugins/Language/CPlusPlus/Coroutines.cpp | 9 - .../Plugins/Language/CPlusPlus/LibCxxList.cpp | 18 -- lldb/source/Plugins/Language/ObjC/NSArray.cpp | 8 +++- .../Plugins/Language/ObjC/NSDictionary.cpp | 8 +++- lldb/source/Plugins/Language/ObjC/NSSet.cpp| 8 +++- lldb/source/Symbol/Variable.cpp| 11 +-- lldb/source/Target/StackFrame.cpp | 9 - 19 files changed, 108 insertions(+), 24 deletions(-) diff --git a/lldb/include/lldb/Core/ValueObject.h b/lldb/include/lldb/Core/ValueObject.h index 93eb3e8f590f4e..2a5358fd5b0276 100644 --- a/lldb/include/lldb/Core/ValueObject.h +++ b/lldb/include/lldb/Core/ValueObject.h @@ -625,7 +625,7 @@ class ValueObject { /// (e.g. sythetic child provider). virtual lldb::ValueObjectSP Clone(ConstString new_name); - virtual lldb::ValueObjectSP AddressOf(Status &error); + virtual llvm::Expected AddressOf(Status &error); virtual lldb::addr_t GetLiveAddress() { return LLDB_INVALID_ADDRESS; } diff --git a/lldb/include/lldb/Core/ValueObjectConstResult.h b/lldb/include/lldb/Core/ValueObjectConstResult.h index d3b3362bd0e9ec..6ae6f8624cc4af 100644 --- a/lldb/include/lldb/Core/ValueObjectConstResult.h +++ b/lldb/include/lldb/Core/ValueObjectConstResult.h @@ -83,7 +83,7 @@ class ValueObjectConstResult : public ValueObject { uint32_t offset, const CompilerType &type, bool can_create, ConstString name_const_str = ConstString()) override; - lldb::ValueObjectSP AddressOf(Status &error) override; + llvm::Expected AddressOf(Status &error) override; lldb::addr_t GetAddressOf(bool scalar_is_load_address = true, AddressType *address_type = nullptr) override; diff --git a/lldb/include/lldb/Core/ValueObjectConstResultCast.h b/lldb/include/lldb/Core/ValueObjectConstResultCast.h index 911a08363b3935..40528150fd852c 100644 --- a/lldb/include/lldb/Core/ValueObjectConstResultCast.h +++ b/lldb/include/lldb/Core/ValueObjectConstResultCast.h @@ -43,7 +43,7 @@ class ValueObjectConstResultCast : public ValueObjectCast { uint32_t offset, const CompilerType &type, bool can_create, ConstString name_const_str = ConstString()) override; - lldb::ValueObjectSP AddressOf(Status &error) override; + llvm::Expected AddressOf(Status &error) override; size_t GetPointeeData(DataExtractor &data, uint32_t item_idx = 0, uint32_t item_count = 1) override; diff --git a/lldb/include/lldb/Core/ValueObjectConstResultChild.h b/lldb/include/lldb/Core/ValueObjectConstResultChild.h index 71a3c53befe786..f6c4689c02ebd0 100644 --- a/lldb/include/lldb/Core/ValueObjectConstResultChild.h +++ b/lldb/include/lldb/Core/ValueObjectConstResultChild.h @@ -49,7 +49,7 @@ class ValueObjectConstResultChild : public ValueObjectChild { uint32_t offset, const CompilerType &type, bool can_create, ConstString name_const_str = ConstString()) override; - lldb::ValueObjectSP AddressOf(Status &error) override; + llvm::Expected AddressOf(Status &error) override; lldb::addr_t GetAddressOf(bool scalar_is_load_address = true, AddressType *address_type = nullptr) override; diff --git a/lldb/include/lldb/Core/ValueObjectConstResultImpl.h b/lldb/include/lldb/Core/ValueObjectConstResultImpl.h index 68ba8ae7fba206..ff87b7d9898042 100644 --- a/lldb/include/lldb/Core/ValueObjectConstResultImpl.h +++ b/lldb/include/lldb/Core/ValueObjectConstResultImpl.h @@ -46,7 +46,7 @@ class ValueObjectConstResultImpl { bool can_create, ConstString name_const_str = ConstString()); - lldb::ValueObjectSP AddressOf(Status &error); + llvm::Expected AddressOf(Status &error); lldb::addr_t GetLiveAddress() { return m_live_address; } diff --git a/lldb/source/API/SBValue.cpp b/lldb/source/API/SBValue.cpp index df0e82b6523fbd..4f86b5d9a7d018 100644 -
[Lldb-commits] [lldb] [lldb] Change ValueObject::AddressOf() to return Expected (NFC) (PR #106831)
github-actions[bot] wrote: Thank you for submitting a Pull Request (PR) to the LLVM Project! This PR will be automatically labeled and the relevant teams will be notified. If you wish to, you can add reviewers by using the "Reviewers" section on this page. If this is not working for you, it is probably because you do not have write permissions for the repository. In which case you can instead tag reviewers by name in a comment by using `@` followed by their GitHub username. If you have received no comments on your PR for a week, you can request a review by "ping"ing the PR by adding a comment “Ping”. The common courtesy "ping" rate is once a week. Please remember that you are asking for valuable time from other developers. If you have further questions, they may be answered by the [LLVM GitHub User Guide](https://llvm.org/docs/GitHub.html). You can also ask questions in a comment on this PR, on the [LLVM Discord](https://discord.com/invite/xS7Z362) or on the [forums](https://discourse.llvm.org/). https://github.com/llvm/llvm-project/pull/106831 ___ 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] [lld] [lldb] [llvm] [mlir] [polly] [NFC] Add explicit #include llvm-config.h where its macros are used. (PR #106810)
https://github.com/dfukalov edited https://github.com/llvm/llvm-project/pull/106810 ___ lldb-commits mailing list lldb-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits
[Lldb-commits] [lldb] lldb: Fix some tests that fail with system libstdc++ (PR #106885)
https://github.com/tstellar created https://github.com/llvm/llvm-project/pull/106885 This is a revert of b1fcc1840c312472cb9ccb8c4e5e02ca13b31113. These tests weren't working on Ubuntu 22.04 or Fedora 37-40. I'm not sure exactly why, but it seems like they may be incompatible with libstdc++. Also, despite the fact that the tests were using the system libstdc++, the tests were only run when libcxx was enabled. I tested this with a RelWithDebInfo build and the tests passed. Fixes #106475 >From 2bbcb2c5cc3e9c5dfc8f1e8424d72f20f0b8ec1a Mon Sep 17 00:00:00 2001 From: Tom Stellard Date: Sun, 1 Sep 2024 03:26:01 + Subject: [PATCH] lldb: Fix some tests that fail with system libstdc++ This is a revert of b1fcc1840c312472cb9ccb8c4e5e02ca13b31113. These tests weren't working on Ubuntu 22.04 or Fedora 37-40. I'm not sure exactly why, but it seems like the may be incompatible with libstdc++. Also, despite the fact that the tests were using the system libstdc++, the tests were only run when libcxx was enabled. I tested this with a RelWithDebInfo build and the tests passed. --- .../import-std-module/deque-dbg-info-content/Makefile | 4 +--- .../import-std-module/list-dbg-info-content/Makefile | 4 +--- .../import-std-module/vector-dbg-info-content/Makefile| 4 +--- 3 files changed, 3 insertions(+), 9 deletions(-) diff --git a/lldb/test/API/commands/expression/import-std-module/deque-dbg-info-content/Makefile b/lldb/test/API/commands/expression/import-std-module/deque-dbg-info-content/Makefile index 98638c56f0b98f..f938f7428468ab 100644 --- a/lldb/test/API/commands/expression/import-std-module/deque-dbg-info-content/Makefile +++ b/lldb/test/API/commands/expression/import-std-module/deque-dbg-info-content/Makefile @@ -1,5 +1,3 @@ -# FIXME: once the expression evaluator can handle std libraries with debug -# info, change this to USE_LIBCPP=1 -USE_SYSTEM_STDLIB := 1 +USE_LIBCPP := 1 CXX_SOURCES := main.cpp include Makefile.rules diff --git a/lldb/test/API/commands/expression/import-std-module/list-dbg-info-content/Makefile b/lldb/test/API/commands/expression/import-std-module/list-dbg-info-content/Makefile index 98638c56f0b98f..f938f7428468ab 100644 --- a/lldb/test/API/commands/expression/import-std-module/list-dbg-info-content/Makefile +++ b/lldb/test/API/commands/expression/import-std-module/list-dbg-info-content/Makefile @@ -1,5 +1,3 @@ -# FIXME: once the expression evaluator can handle std libraries with debug -# info, change this to USE_LIBCPP=1 -USE_SYSTEM_STDLIB := 1 +USE_LIBCPP := 1 CXX_SOURCES := main.cpp include Makefile.rules diff --git a/lldb/test/API/commands/expression/import-std-module/vector-dbg-info-content/Makefile b/lldb/test/API/commands/expression/import-std-module/vector-dbg-info-content/Makefile index 98638c56f0b98f..f938f7428468ab 100644 --- a/lldb/test/API/commands/expression/import-std-module/vector-dbg-info-content/Makefile +++ b/lldb/test/API/commands/expression/import-std-module/vector-dbg-info-content/Makefile @@ -1,5 +1,3 @@ -# FIXME: once the expression evaluator can handle std libraries with debug -# info, change this to USE_LIBCPP=1 -USE_SYSTEM_STDLIB := 1 +USE_LIBCPP := 1 CXX_SOURCES := main.cpp include Makefile.rules ___ lldb-commits mailing list lldb-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits
[Lldb-commits] [lldb] [lldb] Change ValueObject::AddressOf() to return Expected (NFC) (PR #106831)
https://github.com/AbdAlRahmanGad ready_for_review https://github.com/llvm/llvm-project/pull/106831 ___ lldb-commits mailing list lldb-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits
[Lldb-commits] [lldb] [lldb] Change ValueObject::AddressOf() to return Expected (NFC) (PR #106831)
https://github.com/AbdAlRahmanGad updated https://github.com/llvm/llvm-project/pull/106831 >From aeb2b3380c4aea636812fd37c19b5ca920d98806 Mon Sep 17 00:00:00 2001 From: AbdAlRahman Gad Date: Sat, 31 Aug 2024 10:11:39 +0300 Subject: [PATCH] [lldb] Change ValueObject::AddressOf() to return Expected (NFC) --- lldb/include/lldb/Core/ValueObject.h | 2 +- .../include/lldb/Core/ValueObjectConstResult.h | 2 +- .../lldb/Core/ValueObjectConstResultCast.h | 2 +- .../lldb/Core/ValueObjectConstResultChild.h| 2 +- .../lldb/Core/ValueObjectConstResultImpl.h | 2 +- lldb/source/API/SBValue.cpp| 10 -- lldb/source/Core/ValueObject.cpp | 11 +-- lldb/source/Core/ValueObjectConstResult.cpp| 3 ++- .../source/Core/ValueObjectConstResultCast.cpp | 3 ++- .../Core/ValueObjectConstResultChild.cpp | 3 ++- .../source/Core/ValueObjectConstResultImpl.cpp | 3 ++- .../Clang/ClangExpressionDeclMap.cpp | 18 -- .../Plugins/Language/CPlusPlus/Coroutines.cpp | 9 - .../Plugins/Language/CPlusPlus/LibCxxList.cpp | 18 -- lldb/source/Plugins/Language/ObjC/NSArray.cpp | 8 +++- .../Plugins/Language/ObjC/NSDictionary.cpp | 8 +++- lldb/source/Plugins/Language/ObjC/NSSet.cpp| 8 +++- lldb/source/Symbol/Variable.cpp| 11 +-- lldb/source/Target/StackFrame.cpp | 9 - 19 files changed, 108 insertions(+), 24 deletions(-) diff --git a/lldb/include/lldb/Core/ValueObject.h b/lldb/include/lldb/Core/ValueObject.h index 93eb3e8f590f4e..2a5358fd5b0276 100644 --- a/lldb/include/lldb/Core/ValueObject.h +++ b/lldb/include/lldb/Core/ValueObject.h @@ -625,7 +625,7 @@ class ValueObject { /// (e.g. sythetic child provider). virtual lldb::ValueObjectSP Clone(ConstString new_name); - virtual lldb::ValueObjectSP AddressOf(Status &error); + virtual llvm::Expected AddressOf(Status &error); virtual lldb::addr_t GetLiveAddress() { return LLDB_INVALID_ADDRESS; } diff --git a/lldb/include/lldb/Core/ValueObjectConstResult.h b/lldb/include/lldb/Core/ValueObjectConstResult.h index d3b3362bd0e9ec..6ae6f8624cc4af 100644 --- a/lldb/include/lldb/Core/ValueObjectConstResult.h +++ b/lldb/include/lldb/Core/ValueObjectConstResult.h @@ -83,7 +83,7 @@ class ValueObjectConstResult : public ValueObject { uint32_t offset, const CompilerType &type, bool can_create, ConstString name_const_str = ConstString()) override; - lldb::ValueObjectSP AddressOf(Status &error) override; + llvm::Expected AddressOf(Status &error) override; lldb::addr_t GetAddressOf(bool scalar_is_load_address = true, AddressType *address_type = nullptr) override; diff --git a/lldb/include/lldb/Core/ValueObjectConstResultCast.h b/lldb/include/lldb/Core/ValueObjectConstResultCast.h index 911a08363b3935..40528150fd852c 100644 --- a/lldb/include/lldb/Core/ValueObjectConstResultCast.h +++ b/lldb/include/lldb/Core/ValueObjectConstResultCast.h @@ -43,7 +43,7 @@ class ValueObjectConstResultCast : public ValueObjectCast { uint32_t offset, const CompilerType &type, bool can_create, ConstString name_const_str = ConstString()) override; - lldb::ValueObjectSP AddressOf(Status &error) override; + llvm::Expected AddressOf(Status &error) override; size_t GetPointeeData(DataExtractor &data, uint32_t item_idx = 0, uint32_t item_count = 1) override; diff --git a/lldb/include/lldb/Core/ValueObjectConstResultChild.h b/lldb/include/lldb/Core/ValueObjectConstResultChild.h index 71a3c53befe786..f6c4689c02ebd0 100644 --- a/lldb/include/lldb/Core/ValueObjectConstResultChild.h +++ b/lldb/include/lldb/Core/ValueObjectConstResultChild.h @@ -49,7 +49,7 @@ class ValueObjectConstResultChild : public ValueObjectChild { uint32_t offset, const CompilerType &type, bool can_create, ConstString name_const_str = ConstString()) override; - lldb::ValueObjectSP AddressOf(Status &error) override; + llvm::Expected AddressOf(Status &error) override; lldb::addr_t GetAddressOf(bool scalar_is_load_address = true, AddressType *address_type = nullptr) override; diff --git a/lldb/include/lldb/Core/ValueObjectConstResultImpl.h b/lldb/include/lldb/Core/ValueObjectConstResultImpl.h index 68ba8ae7fba206..ff87b7d9898042 100644 --- a/lldb/include/lldb/Core/ValueObjectConstResultImpl.h +++ b/lldb/include/lldb/Core/ValueObjectConstResultImpl.h @@ -46,7 +46,7 @@ class ValueObjectConstResultImpl { bool can_create, ConstString name_const_str = ConstString()); - lldb::ValueObjectSP AddressOf(Status &error); + llvm::Expected AddressOf(Status &error); lldb::addr_t GetLiveAddress() { return m_live_address; } diff --git a/lldb/source/API/SBValue.cpp b/lldb/source/API/SBValue.cpp index df0e82b6523fbd..4f86b5d9a7d018 100644 -
[Lldb-commits] [lldb] [lldb] Change ValueObject::AddressOf() to return Expected (NFC) (PR #106831)
llvmbot wrote: @llvm/pr-subscribers-lldb Author: AbdAlRahman Gad (AbdAlRahmanGad) Changes --- Full diff: https://github.com/llvm/llvm-project/pull/106831.diff 19 Files Affected: - (modified) lldb/include/lldb/Core/ValueObject.h (+1-1) - (modified) lldb/include/lldb/Core/ValueObjectConstResult.h (+1-1) - (modified) lldb/include/lldb/Core/ValueObjectConstResultCast.h (+1-1) - (modified) lldb/include/lldb/Core/ValueObjectConstResultChild.h (+1-1) - (modified) lldb/include/lldb/Core/ValueObjectConstResultImpl.h (+1-1) - (modified) lldb/source/API/SBValue.cpp (+8-2) - (modified) lldb/source/Core/ValueObject.cpp (+9-2) - (modified) lldb/source/Core/ValueObjectConstResult.cpp (+2-1) - (modified) lldb/source/Core/ValueObjectConstResultCast.cpp (+2-1) - (modified) lldb/source/Core/ValueObjectConstResultChild.cpp (+2-1) - (modified) lldb/source/Core/ValueObjectConstResultImpl.cpp (+2-1) - (modified) lldb/source/Plugins/ExpressionParser/Clang/ClangExpressionDeclMap.cpp (+16-2) - (modified) lldb/source/Plugins/Language/CPlusPlus/Coroutines.cpp (+8-1) - (modified) lldb/source/Plugins/Language/CPlusPlus/LibCxxList.cpp (+16-2) - (modified) lldb/source/Plugins/Language/ObjC/NSArray.cpp (+7-1) - (modified) lldb/source/Plugins/Language/ObjC/NSDictionary.cpp (+7-1) - (modified) lldb/source/Plugins/Language/ObjC/NSSet.cpp (+7-1) - (modified) lldb/source/Symbol/Variable.cpp (+9-2) - (modified) lldb/source/Target/StackFrame.cpp (+8-1) ``diff diff --git a/lldb/include/lldb/Core/ValueObject.h b/lldb/include/lldb/Core/ValueObject.h index 93eb3e8f590f4e..2a5358fd5b0276 100644 --- a/lldb/include/lldb/Core/ValueObject.h +++ b/lldb/include/lldb/Core/ValueObject.h @@ -625,7 +625,7 @@ class ValueObject { /// (e.g. sythetic child provider). virtual lldb::ValueObjectSP Clone(ConstString new_name); - virtual lldb::ValueObjectSP AddressOf(Status &error); + virtual llvm::Expected AddressOf(Status &error); virtual lldb::addr_t GetLiveAddress() { return LLDB_INVALID_ADDRESS; } diff --git a/lldb/include/lldb/Core/ValueObjectConstResult.h b/lldb/include/lldb/Core/ValueObjectConstResult.h index d3b3362bd0e9ec..6ae6f8624cc4af 100644 --- a/lldb/include/lldb/Core/ValueObjectConstResult.h +++ b/lldb/include/lldb/Core/ValueObjectConstResult.h @@ -83,7 +83,7 @@ class ValueObjectConstResult : public ValueObject { uint32_t offset, const CompilerType &type, bool can_create, ConstString name_const_str = ConstString()) override; - lldb::ValueObjectSP AddressOf(Status &error) override; + llvm::Expected AddressOf(Status &error) override; lldb::addr_t GetAddressOf(bool scalar_is_load_address = true, AddressType *address_type = nullptr) override; diff --git a/lldb/include/lldb/Core/ValueObjectConstResultCast.h b/lldb/include/lldb/Core/ValueObjectConstResultCast.h index 911a08363b3935..40528150fd852c 100644 --- a/lldb/include/lldb/Core/ValueObjectConstResultCast.h +++ b/lldb/include/lldb/Core/ValueObjectConstResultCast.h @@ -43,7 +43,7 @@ class ValueObjectConstResultCast : public ValueObjectCast { uint32_t offset, const CompilerType &type, bool can_create, ConstString name_const_str = ConstString()) override; - lldb::ValueObjectSP AddressOf(Status &error) override; + llvm::Expected AddressOf(Status &error) override; size_t GetPointeeData(DataExtractor &data, uint32_t item_idx = 0, uint32_t item_count = 1) override; diff --git a/lldb/include/lldb/Core/ValueObjectConstResultChild.h b/lldb/include/lldb/Core/ValueObjectConstResultChild.h index 71a3c53befe786..f6c4689c02ebd0 100644 --- a/lldb/include/lldb/Core/ValueObjectConstResultChild.h +++ b/lldb/include/lldb/Core/ValueObjectConstResultChild.h @@ -49,7 +49,7 @@ class ValueObjectConstResultChild : public ValueObjectChild { uint32_t offset, const CompilerType &type, bool can_create, ConstString name_const_str = ConstString()) override; - lldb::ValueObjectSP AddressOf(Status &error) override; + llvm::Expected AddressOf(Status &error) override; lldb::addr_t GetAddressOf(bool scalar_is_load_address = true, AddressType *address_type = nullptr) override; diff --git a/lldb/include/lldb/Core/ValueObjectConstResultImpl.h b/lldb/include/lldb/Core/ValueObjectConstResultImpl.h index 68ba8ae7fba206..ff87b7d9898042 100644 --- a/lldb/include/lldb/Core/ValueObjectConstResultImpl.h +++ b/lldb/include/lldb/Core/ValueObjectConstResultImpl.h @@ -46,7 +46,7 @@ class ValueObjectConstResultImpl { bool can_create, ConstString name_const_str = ConstString()); - lldb::ValueObjectSP AddressOf(Status &error); + llvm::Expected AddressOf(Status &error); lldb::addr_t GetLiveAddress() { return m_live_address; } diff --git a/lldb/source/API/SBValue.cpp b/lldb/source/API/SBValue.cpp index df0e82b6523fbd..4f86b5d9a7d018 100644 --- a/lldb/source/API/SBValue.cpp +++ b/
[Lldb-commits] [lldb] [lldb] Change ValueObject::AddressOf() to return Expected (NFC) (PR #106831)
AbdAlRahmanGad wrote: @adrian-prantl https://github.com/llvm/llvm-project/pull/106831 ___ lldb-commits mailing list lldb-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits
[Lldb-commits] [lldb] [lldb] Change ValueObject::AddressOf() to return Expected (NFC) (PR #106831)
https://github.com/AbdAlRahmanGad created https://github.com/llvm/llvm-project/pull/106831 None >From aeb2b3380c4aea636812fd37c19b5ca920d98806 Mon Sep 17 00:00:00 2001 From: AbdAlRahman Gad Date: Sat, 31 Aug 2024 10:11:39 +0300 Subject: [PATCH] [lldb] Change ValueObject::AddressOf() to return Expected (NFC) --- lldb/include/lldb/Core/ValueObject.h | 2 +- .../include/lldb/Core/ValueObjectConstResult.h | 2 +- .../lldb/Core/ValueObjectConstResultCast.h | 2 +- .../lldb/Core/ValueObjectConstResultChild.h| 2 +- .../lldb/Core/ValueObjectConstResultImpl.h | 2 +- lldb/source/API/SBValue.cpp| 10 -- lldb/source/Core/ValueObject.cpp | 11 +-- lldb/source/Core/ValueObjectConstResult.cpp| 3 ++- .../source/Core/ValueObjectConstResultCast.cpp | 3 ++- .../Core/ValueObjectConstResultChild.cpp | 3 ++- .../source/Core/ValueObjectConstResultImpl.cpp | 3 ++- .../Clang/ClangExpressionDeclMap.cpp | 18 -- .../Plugins/Language/CPlusPlus/Coroutines.cpp | 9 - .../Plugins/Language/CPlusPlus/LibCxxList.cpp | 18 -- lldb/source/Plugins/Language/ObjC/NSArray.cpp | 8 +++- .../Plugins/Language/ObjC/NSDictionary.cpp | 8 +++- lldb/source/Plugins/Language/ObjC/NSSet.cpp| 8 +++- lldb/source/Symbol/Variable.cpp| 11 +-- lldb/source/Target/StackFrame.cpp | 9 - 19 files changed, 108 insertions(+), 24 deletions(-) diff --git a/lldb/include/lldb/Core/ValueObject.h b/lldb/include/lldb/Core/ValueObject.h index 93eb3e8f590f4e..2a5358fd5b0276 100644 --- a/lldb/include/lldb/Core/ValueObject.h +++ b/lldb/include/lldb/Core/ValueObject.h @@ -625,7 +625,7 @@ class ValueObject { /// (e.g. sythetic child provider). virtual lldb::ValueObjectSP Clone(ConstString new_name); - virtual lldb::ValueObjectSP AddressOf(Status &error); + virtual llvm::Expected AddressOf(Status &error); virtual lldb::addr_t GetLiveAddress() { return LLDB_INVALID_ADDRESS; } diff --git a/lldb/include/lldb/Core/ValueObjectConstResult.h b/lldb/include/lldb/Core/ValueObjectConstResult.h index d3b3362bd0e9ec..6ae6f8624cc4af 100644 --- a/lldb/include/lldb/Core/ValueObjectConstResult.h +++ b/lldb/include/lldb/Core/ValueObjectConstResult.h @@ -83,7 +83,7 @@ class ValueObjectConstResult : public ValueObject { uint32_t offset, const CompilerType &type, bool can_create, ConstString name_const_str = ConstString()) override; - lldb::ValueObjectSP AddressOf(Status &error) override; + llvm::Expected AddressOf(Status &error) override; lldb::addr_t GetAddressOf(bool scalar_is_load_address = true, AddressType *address_type = nullptr) override; diff --git a/lldb/include/lldb/Core/ValueObjectConstResultCast.h b/lldb/include/lldb/Core/ValueObjectConstResultCast.h index 911a08363b3935..40528150fd852c 100644 --- a/lldb/include/lldb/Core/ValueObjectConstResultCast.h +++ b/lldb/include/lldb/Core/ValueObjectConstResultCast.h @@ -43,7 +43,7 @@ class ValueObjectConstResultCast : public ValueObjectCast { uint32_t offset, const CompilerType &type, bool can_create, ConstString name_const_str = ConstString()) override; - lldb::ValueObjectSP AddressOf(Status &error) override; + llvm::Expected AddressOf(Status &error) override; size_t GetPointeeData(DataExtractor &data, uint32_t item_idx = 0, uint32_t item_count = 1) override; diff --git a/lldb/include/lldb/Core/ValueObjectConstResultChild.h b/lldb/include/lldb/Core/ValueObjectConstResultChild.h index 71a3c53befe786..f6c4689c02ebd0 100644 --- a/lldb/include/lldb/Core/ValueObjectConstResultChild.h +++ b/lldb/include/lldb/Core/ValueObjectConstResultChild.h @@ -49,7 +49,7 @@ class ValueObjectConstResultChild : public ValueObjectChild { uint32_t offset, const CompilerType &type, bool can_create, ConstString name_const_str = ConstString()) override; - lldb::ValueObjectSP AddressOf(Status &error) override; + llvm::Expected AddressOf(Status &error) override; lldb::addr_t GetAddressOf(bool scalar_is_load_address = true, AddressType *address_type = nullptr) override; diff --git a/lldb/include/lldb/Core/ValueObjectConstResultImpl.h b/lldb/include/lldb/Core/ValueObjectConstResultImpl.h index 68ba8ae7fba206..ff87b7d9898042 100644 --- a/lldb/include/lldb/Core/ValueObjectConstResultImpl.h +++ b/lldb/include/lldb/Core/ValueObjectConstResultImpl.h @@ -46,7 +46,7 @@ class ValueObjectConstResultImpl { bool can_create, ConstString name_const_str = ConstString()); - lldb::ValueObjectSP AddressOf(Status &error); + llvm::Expected AddressOf(Status &error); lldb::addr_t GetLiveAddress() { return m_live_address; } diff --git a/lldb/source/API/SBValue.cpp b/lldb/source/API/SBValue.cpp index df0e82b6523fbd..4f86b5d9a7d018 10
[Lldb-commits] [lldb] [lldb] Change the implementation of Status to store an llvm::Error (NFC) (PR #106774)
@@ -97,7 +97,7 @@ class LLDB_API SBError { friend class lldb_private::ScriptInterpreter; friend class lldb_private::python::SWIGBridge; - SBError(const lldb_private::Status &error); + SBError(lldb_private::Status &&error); JDevlieghere wrote: IIRC we have made changes to private functions that take lldb_private arguments. Given that they're private, I think it's a reasonable assumption to say that they're not part of the stable ABI. https://github.com/llvm/llvm-project/pull/106774 ___ lldb-commits mailing list lldb-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits