diff options
author | Reid Kleckner <reid@kleckner.net> | 2013-12-05 01:23:43 +0000 |
---|---|---|
committer | Reid Kleckner <reid@kleckner.net> | 2013-12-05 01:23:43 +0000 |
commit | 0503a870a94c28ab32fa461e175f8cb387c8718e (patch) | |
tree | fa28b29965ee5c660e774fb67830aa8fd3b73e57 /clang/lib/AST/ItaniumMangle.cpp | |
parent | d33ff74b196c38ff414773d39899514a9c9dd8ed (diff) | |
download | bcm5719-llvm-0503a870a94c28ab32fa461e175f8cb387c8718e.tar.gz bcm5719-llvm-0503a870a94c28ab32fa461e175f8cb387c8718e.zip |
Add an AdjustedType sugar node for adjusting calling conventions
Summary:
In general, this type node can be used to represent any type adjustment
that occurs implicitly without losing type sugar. The immediate use of
this is to adjust the calling conventions of member function pointer
types without breaking template instantiation.
Fixes PR17996.
Reviewers: rsmith
Differential Revision: http://llvm-reviews.chandlerc.com/D2332
llvm-svn: 196451
Diffstat (limited to 'clang/lib/AST/ItaniumMangle.cpp')
-rw-r--r-- | clang/lib/AST/ItaniumMangle.cpp | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/clang/lib/AST/ItaniumMangle.cpp b/clang/lib/AST/ItaniumMangle.cpp index ba67fad6489..e2d334b316d 100644 --- a/clang/lib/AST/ItaniumMangle.cpp +++ b/clang/lib/AST/ItaniumMangle.cpp @@ -833,6 +833,7 @@ void CXXNameMangler::mangleUnresolvedPrefix(NestedNameSpecifier *qualifier, switch (type->getTypeClass()) { case Type::Builtin: case Type::Complex: + case Type::Adjusted: case Type::Decayed: case Type::Pointer: case Type::BlockPointer: |