Walter Erquinigo 96b1784ac8
[lldb-vscode] Use auto summaries whenever variables don't have a summary (#66551)
Auto summaries were only being used when non-pointer/reference variables
didn't have values nor summaries. Greg pointed out that it should be
better to simply use auto summaries when the variable doesn't have a
summary of its own, regardless of other conditions.

This led to code simplification and correct visualization of auto
summaries for pointer/reference types, as seen in this screenshot.

<img width="310" alt="Screenshot 2023-09-19 at 7 04 55 PM"
src="https://github.com/llvm/llvm-project/assets/1613874/d356d579-13f2-487b-ae3a-f3443dce778f">
2023-09-20 10:23:41 -04:00

50 lines
939 B
C++

#include "foo.h"
#include <vector>
#include <map>
static int static_int = 42;
int non_static_int = 43;
int a_function(int var) {
return var; // breakpoint 3
}
struct my_struct {
int foo;
};
int main(int argc, char const *argv[]) {
my_struct struct1 = {15};
my_struct *struct2 = new my_struct{16};
my_struct *struct3 = nullptr;
int var1 = 20;
int var2 = 21;
int var3 = static_int; // breakpoint 1
{
int non_static_int = 10;
int var2 = 2;
int var3 = non_static_int; // breakpoint 2
}
a_function(var3);
foo_func();
std::vector<int> my_vec;
my_vec.push_back(1);
my_vec.push_back(2);
my_vec.push_back(3); // breakpoint 4
std::map<int, int> my_map;
my_map[1] = 2;
my_map[2] = 3;
my_map[3] = 4; // breakpoint 5
std::vector<bool> my_bool_vec;
my_bool_vec.push_back(true);
my_bool_vec.push_back(false); // breakpoint 6
my_bool_vec.push_back(true); // breakpoint 7
return 0;
}