xref: /llvm-project/lldb/test/API/lang/c/sizeof/main.c (revision 2ce889fa4e5cab75fc65d03a4dfae52784d57db9)
1 struct Empty {};
2 struct EmptyMember {
3   char i[0];
4 };
5 struct SingleMember {
6   int i;
7 };
8 
9 struct PaddingMember {
10   int i;
11   char c;
12 };
13 
14 const unsigned sizeof_empty = sizeof(struct Empty);
15 const unsigned sizeof_empty_member = sizeof(struct EmptyMember);
16 const unsigned sizeof_single = sizeof(struct SingleMember);
17 const unsigned sizeof_padding = sizeof(struct PaddingMember);
18 
main()19 int main() {
20   struct Empty empty;
21   struct EmptyMember empty_member;
22   struct SingleMember single;
23   struct PaddingMember padding;
24   // Make sure globals are used.
25   return sizeof_empty + sizeof_empty_member + sizeof_single + sizeof_padding;
26 }
27