Patch to mangle __uuidof expressions under -fms-extensions

Reid Kleckner rnk at google.com
Mon Sep 22 16:36:45 PDT 2014


+        // This CXXUuidofExpr is mangled as-if it were actually a VarDecl
from
+        // const __s_GUID _GUID_{lower case UUID with underscores}
+        StringRef Uuid = UE->getUuidAsStringRef(Context.getASTContext());
+        std::string Name = "_GUID_" + Uuid.lower();
+        std::replace(Name.begin(), Name.end(), '-', '_');
+        Out << "$E?";
+        Out << Name << "@@3U__s_GUID@@B";

We should give this a name consistent with Itanium like "__uuidof_" + Name.

On Mon, Sep 22, 2014 at 4:20 PM, jahanian <fjahanian at apple.com> wrote:

> This patch allows mangling of microsoft’s __uuidof expression for the
> Itanium ABI when under -fms-extensions
> // rdar://17784718
>
> Please review.
> - Fariborz
>
>
>
>
> _______________________________________________
> cfe-commits mailing list
> cfe-commits at cs.uiuc.edu
> http://lists.cs.uiuc.edu/mailman/listinfo/cfe-commits
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/cfe-commits/attachments/20140922/a649423f/attachment.html>


More information about the cfe-commits mailing list