[clang-rename] improve USRFindingAction

Authored by kbobyrev on Aug 3 2016, 4:00 PM.


[clang-rename] improve USRFindingAction

  1. Improve templated class renaming, namely add capabilities of finding partial

and full specializations. Every class partial specialization has reference to
the specialized class. Thus, storing all partial specializations and
comparing specialized class decls to the FoundDecl solves this. All full class
specializations can be found by calling ClassTemplateDecl::specializations().

  1. Fix virtual function and its overriding functions renaming. Renaming a

virtual function requires renaming every other function in its "overriding

  1. Merge TemplateClassInstantiationFindBy{Declaration|TypeUse}.cpp tests into

one test by adding multiple invocations of clang-rename to one test, because
the only different thing across these tests is -offset passed to clang-rename.

Reviewers: alexfh

Differential Revision: https://reviews.llvm.org/D23058

llvm-svn: 277663