diff options
| author | Emilio Cobos Alvarez <emilio@crisal.io> | 2017-05-02 08:32:15 +0000 |
|---|---|---|
| committer | Emilio Cobos Alvarez <emilio@crisal.io> | 2017-05-02 08:32:15 +0000 |
| commit | c7ed9d9f1c687f2f878dbac58a40dbbeb2fbee55 (patch) | |
| tree | 50e9b3d264af6d530aa4015cd510a55477811eaf /clang/tools | |
| parent | 9881bd9c1d624a1e5261606dd724223a9207abbb (diff) | |
| download | bcm5719-llvm-c7ed9d9f1c687f2f878dbac58a40dbbeb2fbee55.tar.gz bcm5719-llvm-c7ed9d9f1c687f2f878dbac58a40dbbeb2fbee55.zip | |
[libclang] Revert rL301328 and add tests for the regressions introduced.
Differential Revision: https://reviews.llvm.org/D32566
llvm-svn: 301902
Diffstat (limited to 'clang/tools')
| -rw-r--r-- | clang/tools/libclang/CXType.cpp | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/clang/tools/libclang/CXType.cpp b/clang/tools/libclang/CXType.cpp index fce7ef2c0d8..16e993e2ac0 100644 --- a/clang/tools/libclang/CXType.cpp +++ b/clang/tools/libclang/CXType.cpp @@ -147,6 +147,9 @@ static inline CXTranslationUnit GetTU(CXType CT) { static Optional<ArrayRef<TemplateArgument>> GetTemplateArguments(QualType Type) { assert(!Type.isNull()); + if (const auto *Specialization = Type->getAs<TemplateSpecializationType>()) + return Specialization->template_arguments(); + if (const auto *RecordDecl = Type->getAsCXXRecordDecl()) { const auto *TemplateDecl = dyn_cast<ClassTemplateSpecializationDecl>(RecordDecl); @@ -154,9 +157,6 @@ GetTemplateArguments(QualType Type) { return TemplateDecl->getTemplateArgs().asArray(); } - if (const auto *Specialization = Type->getAs<TemplateSpecializationType>()) - return Specialization->template_arguments(); - return None; } |

