diff options
author | Alexis Hunt <alercah@gmail.com> | 2009-11-29 07:34:05 +0000 |
---|---|---|
committer | Alexis Hunt <alercah@gmail.com> | 2009-11-29 07:34:05 +0000 |
commit | 3d221f2fcea813daac37f5d204e11efde7878f70 (patch) | |
tree | 15df9f38113a1fcebbd944f39ca2d1c317019115 /clang/lib/CodeGen/Mangle.cpp | |
parent | a1b02a2380242f72db833763db64060ef117f471 (diff) | |
download | bcm5719-llvm-3d221f2fcea813daac37f5d204e11efde7878f70.tar.gz bcm5719-llvm-3d221f2fcea813daac37f5d204e11efde7878f70.zip |
Add DeclarationName support for C++0x operator literals. They should now work as
function names outside of templates - they'll probably cause some damage there as
they're largely untested.
llvm-svn: 90064
Diffstat (limited to 'clang/lib/CodeGen/Mangle.cpp')
-rw-r--r-- | clang/lib/CodeGen/Mangle.cpp | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/clang/lib/CodeGen/Mangle.cpp b/clang/lib/CodeGen/Mangle.cpp index eabdbbfde9e..d6f7808c407 100644 --- a/clang/lib/CodeGen/Mangle.cpp +++ b/clang/lib/CodeGen/Mangle.cpp @@ -455,6 +455,12 @@ void CXXNameMangler::mangleUnqualifiedName(const NamedDecl *ND) { cast<FunctionDecl>(ND)->getNumParams()); break; + case DeclarationName::CXXLiteralOperatorName: + // Guessing based on existing ABI. + Out << "ul"; + mangleSourceName(Name.getCXXLiteralIdentifier()); + break; + case DeclarationName::CXXUsingDirective: assert(false && "Can't mangle a using directive name!"); break; |