[Lldb-commits] [PATCH] D151392: Fix SBValue::FindValue for file static variables
Jim Ingham via Phabricator via lldb-commits
lldb-commits at lists.llvm.org
Tue May 30 17:13:45 PDT 2023
This revision was automatically updated to reflect the committed changes.
Closed by commit rG14186773e79b: Fix SBValue::FindValue for file static variables (authored by jingham).
Changed prior to commit:
https://reviews.llvm.org/D151392?vs=525391&id=526852#toc
Repository:
rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D151392/new/
https://reviews.llvm.org/D151392
Files:
lldb/source/API/SBFrame.cpp
lldb/test/API/python_api/process/TestProcessAPI.py
lldb/test/API/python_api/process/main.cpp
Index: lldb/test/API/python_api/process/main.cpp
===================================================================
--- lldb/test/API/python_api/process/main.cpp
+++ lldb/test/API/python_api/process/main.cpp
@@ -3,7 +3,7 @@
// This simple program is to test the lldb Python API related to process.
-char my_char = 'u';
+static char my_char = 'u';
char my_cstring[] = "lldb.SBProcess.ReadCStringFromMemory() works!";
char *my_char_ptr = (char *)"Does it work?";
uint32_t my_uint32 = 12345;
Index: lldb/test/API/python_api/process/TestProcessAPI.py
===================================================================
--- lldb/test/API/python_api/process/TestProcessAPI.py
+++ lldb/test/API/python_api/process/TestProcessAPI.py
@@ -49,8 +49,8 @@
)
frame = thread.GetFrameAtIndex(0)
- # Get the SBValue for the global variable 'my_char'.
- val = frame.FindValue("my_char", lldb.eValueTypeVariableGlobal)
+ # Get the SBValue for the file static variable 'my_char'.
+ val = frame.FindValue("my_char", lldb.eValueTypeVariableStatic)
self.DebugSBValue(val)
# Due to the typemap magic (see lldb.swig), we pass in 1 to ReadMemory and
@@ -149,8 +149,8 @@
)
frame = thread.GetFrameAtIndex(0)
- # Get the SBValue for the global variable 'my_char'.
- val = frame.FindValue("my_char", lldb.eValueTypeVariableGlobal)
+ # Get the SBValue for the static variable 'my_char'.
+ val = frame.FindValue("my_char", lldb.eValueTypeVariableStatic)
self.DebugSBValue(val)
# If the variable does not have a load address, there's no sense
Index: lldb/source/API/SBFrame.cpp
===================================================================
--- lldb/source/API/SBFrame.cpp
+++ lldb/source/API/SBFrame.cpp
@@ -602,7 +602,8 @@
stop_if_block_is_inlined_function,
[frame](Variable *v) { return v->IsInScope(frame); },
&variable_list);
- if (value_type == eValueTypeVariableGlobal) {
+ if (value_type == eValueTypeVariableGlobal
+ || value_type == eValueTypeVariableStatic) {
const bool get_file_globals = true;
VariableList *frame_vars = frame->GetVariableList(get_file_globals,
nullptr);
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D151392.526852.patch
Type: text/x-patch
Size: 2374 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/lldb-commits/attachments/20230531/5e7c2454/attachment-0001.bin>
More information about the lldb-commits
mailing list