1import lldb
2from lldbsuite.test.decorators import *
3from lldbsuite.test.lldbtest import *
4from lldbsuite.test import lldbutil
5
6class TestCase(TestBase):
7
8    def test(self):
9        self.build()
10        self.createTestTarget()
11
12        # Empty structs/classes have size 1 in C++.
13        self.expect_expr("sizeof(Empty) == sizeof_empty", result_value="true")
14        self.expect_expr("sizeof(EmptyClass) == sizeof_empty_class", result_value="true")
15        self.expect_expr("sizeof(EmptyClassAligned) == sizeof_empty_class_aligned",
16                         result_value="true")
17        self.expect_expr("sizeof(ClassEmptyMember) == sizeof_class_empty_member",
18                         result_value="true")
19        self.expect_expr("sizeof(SingleMember) == sizeof_single", result_value="true")
20        self.expect_expr("sizeof(SingleMemberClass) == sizeof_single_class", result_value="true")
21        self.expect_expr("sizeof(PaddingMember) == sizeof_padding", result_value="true")
22        self.expect_expr("sizeof(PaddingMemberClass) == sizeof_padding_class", result_value="true")
23