1#include <stdio.h>
2#include <stdlib.h>
3#include <stdint.h>
4
5struct BagOfInts
6{
7 int x;
8 int y;
9 int z;
10 BagOfInts(int X) :
11 x(X),
12 y(X+1),
13 z(X+2) {}
14};
15
16struct BagOfFloats
17{
18 float x;
19 float y;
20 float z;
21 BagOfFloats(float X) :
22 x(X+0.334),
23 y(X+0.500),
24 z(X+0.667) {}
25};
26
27struct BagOfBags
28{
29 BagOfInts x;
30 BagOfInts y;
31 BagOfFloats z;
32 BagOfFloats q;
33 BagOfBags() :
34 x('E'),
35 y('B'),
36 z(1.1),
37 q(20.11) {}
38};
39
40struct EmptyStruct {};
41
42struct Plenty
43{
44 BagOfInts *some_values;
45 int* array;
46 int array_size;
47 int bitfield;
48
49 Plenty(int N, bool flagA, bool flagB) :
50 some_values(new BagOfInts(N)),
51 array(new int[N]),
52 array_size(N),
53 bitfield( (flagA ? 0x01 : 0x00) | (flagB ? 0x10 : 0x00) )
54 {
55 for (int j = 0; j < N; j++)
56 array[j] = N-j;
57 }
58};
59
60int main (int argc, const char * argv[])
61{
62 BagOfInts int_bag(6);
63 BagOfFloats float_bag(2.71);
64
65 BagOfBags bag_bag;
66 EmptyStruct es;
67
68 Plenty plenty_of_stuff(5,true,false);
69
70 plenty_of_stuff.bitfield = 0x11; // Set break point at this line.
71
72 bag_bag.x.z = 12;
73
74 return 0;
75
76}
77
78

source code of lldb/test/API/functionalities/data-formatter/data-formatter-synth/main.cpp