[clang] [clang][bytecode] Support virtual bases in C++26 (PR #204289)
Eli Friedman via cfe-commits
cfe-commits at lists.llvm.org
Thu Jun 18 14:01:55 PDT 2026
================
@@ -7098,6 +7119,16 @@ bool Compiler<Emitter>::compileDestructor(const CXXDestructorDecl *Dtor) {
return false;
}
+ for (const Record::Base &Base : llvm::reverse(R->virtual_bases())) {
+ if (Base.R->hasTrivialDtor())
+ continue;
+ if (!this->emitGetPtrVirtBase(cast<CXXRecordDecl>(Base.R->getDecl()),
+ SourceInfo{}))
+ return false;
+ if (!this->emitRecordDestructionPop(Base.R, {}))
+ return false;
+ }
----------------
efriedma-quic wrote:
Codegen has separate notions of "complete" and "base" destructors; do we need something simlar here?
https://github.com/llvm/llvm-project/pull/204289
More information about the cfe-commits
mailing list