135870c44SPavel Labath""" 235870c44SPavel LabathTests C99's flexible array members. 335870c44SPavel Labath""" 435870c44SPavel Labath 535870c44SPavel Labathimport lldb 635870c44SPavel Labathfrom lldbsuite.test.decorators import * 735870c44SPavel Labathfrom lldbsuite.test.lldbtest import * 835870c44SPavel Labathfrom lldbsuite.test import lldbutil 935870c44SPavel Labath 1035870c44SPavel Labath 11*2238dcc3SJonas Devlieghereclass TestCase(TestBase): 1235870c44SPavel Labath @no_debug_info_test 1335870c44SPavel Labath def test(self): 1435870c44SPavel Labath self.build() 15*2238dcc3SJonas Devlieghere lldbutil.run_to_source_breakpoint( 16*2238dcc3SJonas Devlieghere self, "// break here", lldb.SBFileSpec("main.c") 17*2238dcc3SJonas Devlieghere ) 1835870c44SPavel Labath 1935870c44SPavel Labath self.expect_var_path("c->flexible", type="char[]", summary='"contents"') 2031c7165aSPavel Labath # self.expect_var_path("sc->flexible", type="signed char[]", summary='"contents"') 21*2238dcc3SJonas Devlieghere self.expect_var_path( 22*2238dcc3SJonas Devlieghere "uc->flexible", type="unsigned char[]", summary='"contents"' 23*2238dcc3SJonas Devlieghere ) 2435870c44SPavel Labath # TODO: Make this work 25*2238dcc3SJonas Devlieghere self.expect("expr c->flexible", error=True, substrs=["incomplete", "char[]"]) 26*2238dcc3SJonas Devlieghere self.expect( 27*2238dcc3SJonas Devlieghere "expr sc->flexible", error=True, substrs=["incomplete", "signed char[]"] 28*2238dcc3SJonas Devlieghere ) 29*2238dcc3SJonas Devlieghere self.expect( 30*2238dcc3SJonas Devlieghere "expr uc->flexible", error=True, substrs=["incomplete", "unsigned char[]"] 31*2238dcc3SJonas Devlieghere ) 32