[PATCH] MS ABI: Insert copy-constructors into the CatchableType

David Majnemer david.majnemer at gmail.com
Fri Mar 6 10:47:43 PST 2015


================
Comment at: lib/AST/MicrosoftMangle.cpp:2313
@@ -2313,4 +2312,3 @@
   MicrosoftCXXNameMangler Mangler(*this, Out);
-  Mangler.getStream() << "_CT??_R0";
-  Mangler.mangleType(T, SourceRange(), MicrosoftCXXNameMangler::QMM_Result);
-  Mangler.getStream() << "@8";
+  Mangler.getStream() << "_CT";
+
----------------
rnk wrote:
> Does this get mangled to __CT... on 32-bit? Do we need \01?
Yes, it gets mangled to __CT on 32-bit which would mean that we wouldn't want \01, right?

================
Comment at: lib/AST/MicrosoftMangle.cpp:2315-2320
@@ +2314,8 @@
+
+  llvm::SmallString<64> RTTIMangling;
+  {
+    llvm::raw_svector_ostream Stream(RTTIMangling);
+    mangleCXXRTTI(T, Stream);
+  }
+  Mangler.getStream() << RTTIMangling.substr(1);
+
----------------
rnk wrote:
> Stupid '\01' mangling. When we drop it, we can simply run the mangler on the Out stream.
Happily :)

http://reviews.llvm.org/D8101

EMAIL PREFERENCES
  http://reviews.llvm.org/settings/panel/emailpreferences/






More information about the cfe-commits mailing list