xref: /llvm-project/lldb/test/API/tools/lldb-dap/variables/main.cpp (revision 40a361acf5ce255054c5b2e5f67a24325bfe0398)
101263c6cSJonas Devlieghere 
2*40a361acSJohn Harrison #define BUFFER_SIZE 16
301263c6cSJonas Devlieghere struct PointType {
401263c6cSJonas Devlieghere   int x;
501263c6cSJonas Devlieghere   int y;
601263c6cSJonas Devlieghere   int buffer[BUFFER_SIZE];
701263c6cSJonas Devlieghere };
801263c6cSJonas Devlieghere #include <vector>
901263c6cSJonas Devlieghere int g_global = 123;
1001263c6cSJonas Devlieghere static int s_global = 234;
1101263c6cSJonas Devlieghere int test_indexedVariables();
main(int argc,char const * argv[])1201263c6cSJonas Devlieghere int main(int argc, char const *argv[]) {
1301263c6cSJonas Devlieghere   static float s_local = 2.25;
1401263c6cSJonas Devlieghere   PointType pt = {11, 22, {0}};
1501263c6cSJonas Devlieghere   for (int i = 0; i < BUFFER_SIZE; ++i)
1601263c6cSJonas Devlieghere     pt.buffer[i] = i;
1701263c6cSJonas Devlieghere   int x = s_global - g_global - pt.y; // breakpoint 1
1801263c6cSJonas Devlieghere   {
1901263c6cSJonas Devlieghere     int x = 42;
2001263c6cSJonas Devlieghere     {
2101263c6cSJonas Devlieghere       int x = 72;
2201263c6cSJonas Devlieghere       s_global = x; // breakpoint 2
2301263c6cSJonas Devlieghere     }
2401263c6cSJonas Devlieghere   }
2501263c6cSJonas Devlieghere   return test_indexedVariables(); // breakpoint 3
2601263c6cSJonas Devlieghere }
2701263c6cSJonas Devlieghere 
test_indexedVariables()2801263c6cSJonas Devlieghere int test_indexedVariables() {
2901263c6cSJonas Devlieghere   int small_array[5] = {1, 2, 3, 4, 5};
3001263c6cSJonas Devlieghere   int large_array[200];
3101263c6cSJonas Devlieghere   std::vector<int> small_vector;
3201263c6cSJonas Devlieghere   std::vector<int> large_vector;
3301263c6cSJonas Devlieghere   small_vector.assign(5, 0);
3401263c6cSJonas Devlieghere   large_vector.assign(200, 0);
3501263c6cSJonas Devlieghere   return 0; // breakpoint 4
3601263c6cSJonas Devlieghere }
37