[PATCH] [ms-cxxabi] Emit non-virtual member function pointers

João Matos ripzonetriton at gmail.com
Tue Apr 30 12:50:30 PDT 2013


  LGTM.


================
Comment at: lib/CodeGen/MicrosoftCXXABI.cpp:142
@@ -141,1 +141,3 @@
 
+  /// EmitFullMemberPointer - Emits a full member pointer with the fields common
+  /// data and function member pointers.
----------------
with the fields common *to*

================
Comment at: lib/CodeGen/MicrosoftCXXABI.cpp:552
@@ +551,3 @@
+
+  // The rest of the fields are adjusted by conversions to a more derived class.
+  if (hasNonVirtualBaseAdjustmentField(IsMemberFunction, Inheritance))
----------------
Maybe we should leave a FIXME: with a link to the PR?

================
Comment at: lib/CodeGen/MicrosoftCXXABI.cpp:604
@@ +603,3 @@
+MicrosoftCXXABI::EmitMemberPointer(const APValue &MP, QualType MPT) {
+  llvm_unreachable("const expr member pointer conversions not implemented in "
+                   "the MS ABI");
----------------
What exactly are "const expr member pointer conversions"?


http://llvm-reviews.chandlerc.com/D699



More information about the cfe-commits mailing list