diff options
author | John McCall <rjmccall@apple.com> | 2011-10-18 21:02:43 +0000 |
---|---|---|
committer | John McCall <rjmccall@apple.com> | 2011-10-18 21:02:43 +0000 |
commit | e0a22d06888c13989b3f72db319f1d498bf69153 (patch) | |
tree | b32f178c32688b4c8cadabfac0d387f21f235e3d /lib/AST/MicrosoftMangle.cpp | |
parent | ebaf0e6ab743394dda086a01b457838cb6e589a8 (diff) |
Macro metaprogramming for builtin types.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@142420 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/AST/MicrosoftMangle.cpp')
-rw-r--r-- | lib/AST/MicrosoftMangle.cpp | 14 |
1 files changed, 7 insertions, 7 deletions
diff --git a/lib/AST/MicrosoftMangle.cpp b/lib/AST/MicrosoftMangle.cpp index 98fc2d52cb..1a18ef1dc0 100644 --- a/lib/AST/MicrosoftMangle.cpp +++ b/lib/AST/MicrosoftMangle.cpp @@ -701,13 +701,13 @@ void MicrosoftCXXNameMangler::mangleType(const BuiltinType *T) { case BuiltinType::WChar_S: case BuiltinType::WChar_U: Out << "_W"; break; - case BuiltinType::Overload: +#define BUILTIN_TYPE(Id, SingletonId) +#define PLACEHOLDER_TYPE(Id, SingletonId) \ + case BuiltinType::Id: +#include "clang/AST/BuiltinTypes.def" case BuiltinType::Dependent: - case BuiltinType::UnknownAny: - case BuiltinType::BoundMember: - case BuiltinType::ARCUnbridgedCast: - llvm_unreachable( - "Overloaded and dependent types shouldn't get to name mangling"); + llvm_unreachable("placeholder types shouldn't get to name mangling"); + case BuiltinType::ObjCId: Out << "PAUobjc_object@@"; break; case BuiltinType::ObjCClass: Out << "PAUobjc_class@@"; break; case BuiltinType::ObjCSel: Out << "PAUobjc_selector@@"; break; @@ -716,7 +716,7 @@ void MicrosoftCXXNameMangler::mangleType(const BuiltinType *T) { case BuiltinType::Char32: case BuiltinType::Half: case BuiltinType::NullPtr: - llvm_unreachable("Don't know how to mangle this type"); + assert(0 && "Don't know how to mangle this type yet"); } } |