Add SourceRange to err_not_tag_in_scope diagnostic in TreeTransform<...>::RebuildDependentNameType

Apparently the FIXME was overlooked when the source location information was
made available to the function.

Reviewed By: rsmith

Differential Revision: http://llvm-reviews.chandlerc.com/D3058

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@203845 91177308-0d34-0410-b5e6-96231b3b80d8
Refactor InstantiatingTemplate constructors

This patch factors the bodies of 9 constructors out into a single initialization
method.

Reviewed By: rsmith

Differential Revision: http://llvm-reviews.chandlerc.com/D3059

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@203846 91177308-0d34-0410-b5e6-96231b3b80d8
[C++11] Replacing ObjCInterfaceDecl iterators protocol_loc_begin() and protocol_loc_end() with iterator_range protocol_locs(). Updating all of the usages of the iterators with range-based for loops.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@203847 91177308-0d34-0410-b5e6-96231b3b80d8