================
@@ -4861,7 +4861,14 @@ bool Compiler<Emitter>::visitZeroRecordInitializer(const 
Record *R,
       return false;
   }
 
-  // FIXME: Virtual bases.
+  for (const Record::Base &B : R->virtual_bases()) {
+    if (!this->emitGetPtrVirtBase(cast<CXXRecordDecl>(B.R->getDecl()), E))
+      return false;
+    if (!this->visitZeroRecordInitializer(B.R, E))
+      return false;
+    if (!this->emitFinishInitPop(E))
+      return false;
----------------
efriedma-quic wrote:

I think we need to distinguish whether visitZeroRecordInitializer is called on 
a complete objects, a base class.

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

Reply via email to