xref: /llvm-project/lldb/test/API/functionalities/non-overlapping-index-variable-i/main.cpp (revision fdea9a4ec9b0d9585b8fe8a612686d9f44f40ddc)
1*99451b44SJordan Rupprecht class Point {
2*99451b44SJordan Rupprecht public:
3*99451b44SJordan Rupprecht     int x;
4*99451b44SJordan Rupprecht     int y;
Point(int a,int b)5*99451b44SJordan Rupprecht     Point(int a, int b):
6*99451b44SJordan Rupprecht         x(a),
7*99451b44SJordan Rupprecht         y(b)
8*99451b44SJordan Rupprecht     {}
9*99451b44SJordan Rupprecht };
10*99451b44SJordan Rupprecht 
11*99451b44SJordan Rupprecht class Data {
12*99451b44SJordan Rupprecht public:
13*99451b44SJordan Rupprecht     int id;
14*99451b44SJordan Rupprecht     Point point;
Data(int i)15*99451b44SJordan Rupprecht     Data(int i):
16*99451b44SJordan Rupprecht         id(i),
17*99451b44SJordan Rupprecht         point(0, 0)
18*99451b44SJordan Rupprecht     {}
19*99451b44SJordan Rupprecht };
20*99451b44SJordan Rupprecht 
main(int argc,char const * argv[])21*99451b44SJordan Rupprecht int main(int argc, char const *argv[]) {
22*99451b44SJordan Rupprecht     Data *data[1000];
23*99451b44SJordan Rupprecht     Data **ptr = data;
24*99451b44SJordan Rupprecht     for (int i = 0; i < 1000; ++i) {
25*99451b44SJordan Rupprecht         ptr[i] = new Data(i);
26*99451b44SJordan Rupprecht         ptr[i]->point.x = i;
27*99451b44SJordan Rupprecht         ptr[i]->point.y = i+1;
28*99451b44SJordan Rupprecht     }
29*99451b44SJordan Rupprecht 
30*99451b44SJordan Rupprecht     for (int i = 0; i < 1000; ++i) {
31*99451b44SJordan Rupprecht         bool dump = argc > 1; // Set breakpoint here.
32*99451b44SJordan Rupprecht                               // Evaluate a couple of expressions (2*1000 = 2000 exprs):
33*99451b44SJordan Rupprecht                               // expr ptr[i]->point.x
34*99451b44SJordan Rupprecht                               // expr ptr[i]->point.y
35*99451b44SJordan Rupprecht     }
36*99451b44SJordan Rupprecht     return 0;
37*99451b44SJordan Rupprecht }
38