@@ -4463,19 +4463,22 @@ ClangASTContext::GetNumMemberFunctions(lldb::opaque_compiler_type_t type) {
4463
4463
}
4464
4464
break ;
4465
4465
4466
- case clang::Type::ObjCObjectPointer:
4467
- if (GetCompleteType (type)) {
4468
- const clang::ObjCObjectPointerType *objc_class_type =
4469
- qual_type->getAsObjCInterfacePointerType ();
4470
- if (objc_class_type) {
4471
- clang::ObjCInterfaceDecl *class_interface_decl =
4472
- objc_class_type->getInterfaceDecl ();
4473
- if (class_interface_decl)
4474
- num_functions = std::distance (class_interface_decl->meth_begin (),
4475
- class_interface_decl->meth_end ());
4466
+ case clang::Type::ObjCObjectPointer: {
4467
+ const clang::ObjCObjectPointerType *objc_class_type =
4468
+ qual_type->getAsObjCInterfacePointerType ();
4469
+ const clang::ObjCInterfaceType *objc_interface_type =
4470
+ objc_class_type->getInterfaceType ();
4471
+ if (objc_interface_type &&
4472
+ GetCompleteType ((lldb::opaque_compiler_type_t )objc_interface_type)) {
4473
+ clang::ObjCInterfaceDecl *class_interface_decl =
4474
+ objc_interface_type->getDecl ();
4475
+ if (class_interface_decl) {
4476
+ num_functions = std::distance (class_interface_decl->meth_begin (),
4477
+ class_interface_decl->meth_end ());
4476
4478
}
4477
4479
}
4478
4480
break ;
4481
+ }
4479
4482
4480
4483
case clang::Type::ObjCObject:
4481
4484
case clang::Type::ObjCInterface:
@@ -4568,34 +4571,36 @@ ClangASTContext::GetMemberFunctionAtIndex(lldb::opaque_compiler_type_t type,
4568
4571
}
4569
4572
break ;
4570
4573
4571
- case clang::Type::ObjCObjectPointer:
4572
- if (GetCompleteType (type)) {
4573
- const clang::ObjCObjectPointerType *objc_class_type =
4574
- qual_type->getAsObjCInterfacePointerType ();
4575
- if (objc_class_type) {
4576
- clang::ObjCInterfaceDecl *class_interface_decl =
4577
- objc_class_type->getInterfaceDecl ();
4578
- if (class_interface_decl) {
4579
- auto method_iter = class_interface_decl->meth_begin ();
4580
- auto method_end = class_interface_decl->meth_end ();
4581
- if (idx <
4582
- static_cast <size_t >(std::distance (method_iter, method_end))) {
4583
- std::advance (method_iter, idx);
4584
- clang::ObjCMethodDecl *objc_method_decl =
4585
- method_iter->getCanonicalDecl ();
4586
- if (objc_method_decl) {
4587
- clang_decl = CompilerDecl (this , objc_method_decl);
4588
- name = objc_method_decl->getSelector ().getAsString ();
4589
- if (objc_method_decl->isClassMethod ())
4590
- kind = lldb::eMemberFunctionKindStaticMethod;
4591
- else
4592
- kind = lldb::eMemberFunctionKindInstanceMethod;
4593
- }
4574
+ case clang::Type::ObjCObjectPointer: {
4575
+ const clang::ObjCObjectPointerType *objc_class_type =
4576
+ qual_type->getAsObjCInterfacePointerType ();
4577
+ const clang::ObjCInterfaceType *objc_interface_type =
4578
+ objc_class_type->getInterfaceType ();
4579
+ if (objc_interface_type &&
4580
+ GetCompleteType ((lldb::opaque_compiler_type_t )objc_interface_type)) {
4581
+ clang::ObjCInterfaceDecl *class_interface_decl =
4582
+ objc_interface_type->getDecl ();
4583
+ if (class_interface_decl) {
4584
+ auto method_iter = class_interface_decl->meth_begin ();
4585
+ auto method_end = class_interface_decl->meth_end ();
4586
+ if (idx <
4587
+ static_cast <size_t >(std::distance (method_iter, method_end))) {
4588
+ std::advance (method_iter, idx);
4589
+ clang::ObjCMethodDecl *objc_method_decl =
4590
+ method_iter->getCanonicalDecl ();
4591
+ if (objc_method_decl) {
4592
+ clang_decl = CompilerDecl (this , objc_method_decl);
4593
+ name = objc_method_decl->getSelector ().getAsString ();
4594
+ if (objc_method_decl->isClassMethod ())
4595
+ kind = lldb::eMemberFunctionKindStaticMethod;
4596
+ else
4597
+ kind = lldb::eMemberFunctionKindInstanceMethod;
4594
4598
}
4595
4599
}
4596
4600
}
4597
4601
}
4598
4602
break ;
4603
+ }
4599
4604
4600
4605
case clang::Type::ObjCObject:
4601
4606
case clang::Type::ObjCInterface:
@@ -5629,19 +5634,21 @@ uint32_t ClangASTContext::GetNumFields(lldb::opaque_compiler_type_t type) {
5629
5634
.GetNumFields ();
5630
5635
break ;
5631
5636
5632
- case clang::Type::ObjCObjectPointer:
5633
- if (GetCompleteType (type)) {
5634
- const clang::ObjCObjectPointerType *objc_class_type =
5635
- qual_type->getAsObjCInterfacePointerType ();
5636
- if (objc_class_type) {
5637
- clang::ObjCInterfaceDecl *class_interface_decl =
5638
- objc_class_type->getInterfaceDecl ();
5639
-
5640
- if (class_interface_decl)
5641
- count = class_interface_decl->ivar_size ();
5637
+ case clang::Type::ObjCObjectPointer: {
5638
+ const clang::ObjCObjectPointerType *objc_class_type =
5639
+ qual_type->getAsObjCInterfacePointerType ();
5640
+ const clang::ObjCInterfaceType *objc_interface_type =
5641
+ objc_class_type->getInterfaceType ();
5642
+ if (objc_interface_type &&
5643
+ GetCompleteType ((lldb::opaque_compiler_type_t )objc_interface_type)) {
5644
+ clang::ObjCInterfaceDecl *class_interface_decl =
5645
+ objc_interface_type->getDecl ();
5646
+ if (class_interface_decl) {
5647
+ count = class_interface_decl->ivar_size ();
5642
5648
}
5643
5649
}
5644
5650
break ;
5651
+ }
5645
5652
5646
5653
case clang::Type::ObjCObject:
5647
5654
case clang::Type::ObjCInterface:
@@ -5774,20 +5781,24 @@ CompilerType ClangASTContext::GetFieldAtIndex(lldb::opaque_compiler_type_t type,
5774
5781
}
5775
5782
break ;
5776
5783
5777
- case clang::Type::ObjCObjectPointer:
5778
- if (GetCompleteType (type)) {
5779
- const clang::ObjCObjectPointerType *objc_class_type =
5780
- qual_type->getAsObjCInterfacePointerType ();
5781
- if (objc_class_type) {
5782
- clang::ObjCInterfaceDecl *class_interface_decl =
5783
- objc_class_type->getInterfaceDecl ();
5784
+ case clang::Type::ObjCObjectPointer: {
5785
+ const clang::ObjCObjectPointerType *objc_class_type =
5786
+ qual_type->getAsObjCInterfacePointerType ();
5787
+ const clang::ObjCInterfaceType *objc_interface_type =
5788
+ objc_class_type->getInterfaceType ();
5789
+ if (objc_interface_type &&
5790
+ GetCompleteType ((lldb::opaque_compiler_type_t )objc_interface_type)) {
5791
+ clang::ObjCInterfaceDecl *class_interface_decl =
5792
+ objc_interface_type->getDecl ();
5793
+ if (class_interface_decl) {
5784
5794
return CompilerType (
5785
5795
this , GetObjCFieldAtIndex (getASTContext (), class_interface_decl,
5786
5796
idx, name, bit_offset_ptr,
5787
5797
bitfield_bit_size_ptr, is_bitfield_ptr));
5788
5798
}
5789
5799
}
5790
5800
break ;
5801
+ }
5791
5802
5792
5803
case clang::Type::ObjCObject:
5793
5804
case clang::Type::ObjCInterface:
0 commit comments