Fix up ClassTemplateSpecializationDecl: For implicit instantiations
("set<int> x;"), we don't want to recurse at all, since the
instatiated class isn't written in the source code anywhere. (Note
the instatiated *type* -- set<int> -- is written, and will still get a
callback of TemplateSpecializationType). For explicit instantiations
("template set<int>;"), we do need a callback, since this is the only
callback that's made for this instantiation. We use
getTypeAsWritten() to distinguish.
We will still need to figure out how to handle template
specializations, which probably are still not quite correct.
Reviewed by chandlerc
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@107098
91177308-0d34-0410-b5e6-
96231b3b80d8