https://github.com/ARandomDev99 created 
https://github.com/llvm/llvm-project/pull/166817

Related: #163601

This PR adds RTTI support for `ObjCInterface` in the vtable.

>From dcea2dec0b6f6b4ecff42cacc66b4aec123fadae Mon Sep 17 00:00:00 2001
From: Aneesh K <[email protected]>
Date: Thu, 6 Nov 2025 23:26:13 +0530
Subject: [PATCH] [CIR] #163601: Handle `ObjCInterface`

---
 clang/lib/CIR/CodeGen/CIRGenItaniumCXXABI.cpp | 6 +++++-
 1 file changed, 5 insertions(+), 1 deletion(-)

diff --git a/clang/lib/CIR/CodeGen/CIRGenItaniumCXXABI.cpp 
b/clang/lib/CIR/CodeGen/CIRGenItaniumCXXABI.cpp
index f603f5ec4383d..817da3d90172d 100644
--- a/clang/lib/CIR/CodeGen/CIRGenItaniumCXXABI.cpp
+++ b/clang/lib/CIR/CodeGen/CIRGenItaniumCXXABI.cpp
@@ -983,7 +983,11 @@ const char *vTableClassNameForType(const CIRGenModule 
&cgm, const Type *ty) {
     break;
 
   case Type::ObjCInterface:
-    cgm.errorNYI("VTableClassNameForType: ObjCInterface");
+    if (cast<ObjCInterfaceType>(Ty)->getDecl()->getSuperClass()) {
+      return siClassTypeInfo;
+    } else {
+      return classTypeInfo;
+    }
     break;
 
   case Type::ObjCObjectPointer:

_______________________________________________
cfe-commits mailing list
[email protected]
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Reply via email to