xref: /llvm-project/lldb/test/API/lang/c/sizeof/TestCSizeof.py (revision 2238dcc39358353cac21df75c3c3286ab20b8f53)
1import lldb
2from lldbsuite.test.decorators import *
3from lldbsuite.test.lldbtest import *
4from lldbsuite.test import lldbutil
5
6
7class TestCase(TestBase):
8    def test(self):
9        self.build()
10        self.createTestTarget()
11
12        # Empty structs are not allowed in C, but Clang/GCC allow them and
13        # give them a size of 0.
14        self.expect_expr("sizeof(Empty) == sizeof_empty", result_value="true")
15        self.expect_expr(
16            "sizeof(EmptyMember) == sizeof_empty_member", result_value="true"
17        )
18        self.expect_expr("sizeof(SingleMember) == sizeof_single", result_value="true")
19        self.expect_expr("sizeof(PaddingMember) == sizeof_padding", result_value="true")
20