class_we_enter_decl = [class_decl_kind, "ClassWeEnter"]
class_member_decl = [struct_decl_kind, "ClassMember"]
class_static_member_decl = [struct_decl_kind, "StaticClassMember"]
- class_pointer_to_member_decl = [struct_decl_kind, "PointerToMember"]
unused_class_member_decl = [struct_decl_kind, "UnusedClassMember"]
unused_class_member_ptr_decl = [struct_decl_kind, "UnusedClassMemberPtr"]
self.assert_decl_not_loaded(self.class_in_namespace_decl)
self.assert_decl_not_loaded(self.class_member_decl)
self.assert_decl_not_loaded(self.class_static_member_decl)
- self.assert_decl_not_loaded(self.class_pointer_to_member_decl)
self.assert_decl_not_loaded(self.unused_class_member_decl)
def get_ast_dump(self):
self.assert_decl_loaded(self.class_member_decl)
# We didn't load the type of the unused static member.
self.assert_decl_not_completed(self.class_static_member_decl)
- # We didn't load the type of the unused pointer-to-member member.
- self.assert_decl_not_completed(self.class_pointer_to_member_decl)
# This should not have loaded anything else.
self.assert_decl_not_loaded(self.other_struct_decl)
struct StaticClassMember { int i; };
struct UnusedClassMember { int i; };
struct UnusedClassMemberPtr { int i; };
-struct PointerToMember { int i; };
namespace NS {
class ClassInNamespace {
int dummy; // Prevent bug where LLDB always completes first member.
ClassMember member;
static StaticClassMember static_member;
- int (PointerToMember::*ptr_to_member);
UnusedClassMember unused_member;
UnusedClassMemberPtr *unused_member_ptr;
int enteredFunction() {
mydir = TestBase.compute_mydir(__file__)
+ # GCC rejects the test code because `ToLayout` is not complete when
+ # pointer_to_member_member is declared.
+ @skipIf(compiler="gcc")
+ # On Windows both MSVC and Clang are rejecting the test code because
+ # `ToLayout` is not complete when pointer_to_member_member is declared.
+ @skipIfWindows
@no_debug_info_test
def test(self):
"""