diff options
author | Sebastian Redl <sebastian.redl@getdesigned.at> | 2009-05-10 18:38:11 +0000 |
---|---|---|
committer | Sebastian Redl <sebastian.redl@getdesigned.at> | 2009-05-10 18:38:11 +0000 |
commit | 6e8ed16ffef02b82995a90bdcf10ffff7d63839a (patch) | |
tree | e493c276b5aea9c425cadfc2d53d0f3dd78fe18d /lib/CodeGen/Mangle.cpp | |
parent | 9f2e23e708d3fa7c54f6626cd901993a86e007e6 (diff) |
Implement C++0x nullptr.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@71405 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/CodeGen/Mangle.cpp')
-rw-r--r-- | lib/CodeGen/Mangle.cpp | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/lib/CodeGen/Mangle.cpp b/lib/CodeGen/Mangle.cpp index b61acbbe51..036389d4c0 100644 --- a/lib/CodeGen/Mangle.cpp +++ b/lib/CodeGen/Mangle.cpp @@ -499,6 +499,8 @@ void CXXNameMangler::mangleType(const BuiltinType *T) { // UNSUPPORTED: ::= Di # char32_t // UNSUPPORTED: ::= Ds # char16_t // ::= u <source-name> # vendor extended type + // From our point of view, std::nullptr_t is a builtin, but as far as mangling + // is concerned, it's a type called std::nullptr_t. switch (T->getKind()) { case BuiltinType::Void: Out << 'v'; break; case BuiltinType::Bool: Out << 'b'; break; @@ -519,6 +521,7 @@ void CXXNameMangler::mangleType(const BuiltinType *T) { case BuiltinType::Float: Out << 'f'; break; case BuiltinType::Double: Out << 'd'; break; case BuiltinType::LongDouble: Out << 'e'; break; + case BuiltinType::NullPtr: Out << "St9nullptr_t"; break; case BuiltinType::Overload: case BuiltinType::Dependent: |