[SourceKit] Annotate class method dynamic Self return types

Pass through the original Type in addition to the TypeDecl so that we
can distinguish DynamicSelfType with underlying ClassType from just any
old ClassType.

rdar://problem/25158493
This commit is contained in:
Ben Langmuir
2016-03-14 19:43:54 -07:00
parent ca198b0320
commit 1b08d83b6f
11 changed files with 41 additions and 26 deletions

View File

@@ -120,10 +120,10 @@ public:
EntitiesStack.back().SubEntities.push_back(std::move(Entity));
}
void printTypeRef(const TypeDecl *TD, Identifier Name) override {
void printTypeRef(Type T, const TypeDecl *TD, Identifier Name) override {
unsigned StartOffset = OS.tell();
References.emplace_back(TD, StartOffset, Name.str().size());
StreamPrinter::printTypeRef(TD, Name);
StreamPrinter::printTypeRef(T, TD, Name);
}
};