[clang] [CIR] Add VTable class name for array types (PR #164155)

Mihail Mihov via cfe-commits cfe-commits at lists.llvm.org
Sun Oct 19 02:27:58 PDT 2025


https://github.com/MihailMihov created https://github.com/llvm/llvm-project/pull/164155

This PR adds the VTable name `_ZTVN10__cxxabiv117__array_type_infoE` for `Type::ConstantArray`, `Type::IncompleteArray` and `Type::VariableArray` in `ItaniumRTTIBuilder::BuildVTablePointer`.

issue #163601 

>From f66918c58a081aee14099e24b3d7af68ab4e23b6 Mon Sep 17 00:00:00 2001
From: Mihail Mihov <mihovmihailp at gmail.com>
Date: Sun, 19 Oct 2025 11:22:07 +0200
Subject: [PATCH] [CIR] Add VTable class name for array types

---
 clang/lib/CIR/CodeGen/CIRGenItaniumCXXABI.cpp | 4 +---
 1 file changed, 1 insertion(+), 3 deletions(-)

diff --git a/clang/lib/CIR/CodeGen/CIRGenItaniumCXXABI.cpp b/clang/lib/CIR/CodeGen/CIRGenItaniumCXXABI.cpp
index c184d4a4b1d97..b3045a5661734 100644
--- a/clang/lib/CIR/CodeGen/CIRGenItaniumCXXABI.cpp
+++ b/clang/lib/CIR/CodeGen/CIRGenItaniumCXXABI.cpp
@@ -941,9 +941,7 @@ const char *vTableClassNameForType(const CIRGenModule &cgm, const Type *ty) {
   case Type::ConstantArray:
   case Type::IncompleteArray:
   case Type::VariableArray:
-    cgm.errorNYI("VTableClassNameForType: __array_type_info");
-    break;
-
+    return "_ZTVN10__cxxabiv117__array_type_infoE";
   case Type::FunctionNoProto:
   case Type::FunctionProto:
     cgm.errorNYI("VTableClassNameForType: __function_type_info");



More information about the cfe-commits mailing list