summaryrefslogtreecommitdiffstats
path: root/clang/lib/AST/MicrosoftMangle.cpp
diff options
context:
space:
mode:
authorDavid Majnemer <david.majnemer@gmail.com>2014-06-04 16:46:26 +0000
committerDavid Majnemer <david.majnemer@gmail.com>2014-06-04 16:46:26 +0000
commite31a3ed3d44f9a8b49c75ef1cba495dad7be8744 (patch)
treeae65842e70dc04c7942b251058ef2a8d4dfb994f /clang/lib/AST/MicrosoftMangle.cpp
parent11d88bd10ad0ed79bd1556dd921ae4ca53e4a215 (diff)
downloadbcm5719-llvm-e31a3ed3d44f9a8b49c75ef1cba495dad7be8744.tar.gz
bcm5719-llvm-e31a3ed3d44f9a8b49c75ef1cba495dad7be8744.zip
MS-ABI: Implement user defined literals
Straightforward implementation of UDLs, it's compatible with VS "14". This nearly completes our implementation of C++ name mangling for the MS-ABI. llvm-svn: 210197
Diffstat (limited to 'clang/lib/AST/MicrosoftMangle.cpp')
-rw-r--r--clang/lib/AST/MicrosoftMangle.cpp7
1 files changed, 2 insertions, 5 deletions
diff --git a/clang/lib/AST/MicrosoftMangle.cpp b/clang/lib/AST/MicrosoftMangle.cpp
index d064b157719..d444bf09963 100644
--- a/clang/lib/AST/MicrosoftMangle.cpp
+++ b/clang/lib/AST/MicrosoftMangle.cpp
@@ -803,11 +803,8 @@ void MicrosoftCXXNameMangler::mangleUnqualifiedName(const NamedDecl *ND,
break;
case DeclarationName::CXXLiteralOperatorName: {
- // FIXME: Was this added in VS2010? Does MS even know how to mangle this?
- DiagnosticsEngine &Diags = Context.getDiags();
- unsigned DiagID = Diags.getCustomDiagID(DiagnosticsEngine::Error,
- "cannot mangle this literal operator yet");
- Diags.Report(ND->getLocation(), DiagID);
+ Out << "?__K";
+ mangleSourceName(Name.getCXXLiteralIdentifier()->getName());
break;
}
OpenPOWER on IntegriCloud