<table border="1" cellspacing="0" cellpadding="8">
    <tr>
        <th>Issue</th>
        <td>
            <a href=https://github.com/llvm/llvm-project/issues/73653>73653</a>
        </td>
    </tr>

    <tr>
        <th>Summary</th>
        <td>
            [question] How to create visitor for template specialization?
        </td>
    </tr>

    <tr>
      <th>Labels</th>
      <td>
            new issue
      </td>
    </tr>

    <tr>
      <th>Assignees</th>
      <td>
      </td>
    </tr>

    <tr>
      <th>Reporter</th>
      <td>
          harsszegi
      </td>
    </tr>
</table>

<pre>
    Hi,

when I dump the AST with clang I can clearly see the ClassTemplateSpecializationDecl and all the specialized member functions, constructors, etc. with CXXMethodDecl and CXXConstructorDecl and all the parameters are specialized already.

How can I achieve the same with VisitChildren? If I visit a cursor which is CX_DeclKind.CX_DeclKind_ClassTemplateSpecialization, I get TSK_Undeclared for the specializationkind, so nothing is visited. 
If I visit cursor's "SpecializedCursorTemplate", I receive the unspecialized template itself, which makes not much use for me.
So how can I achieve the same outcome with visitors what I get with AST dump, .e.g. get the fully specialized template instance?
Thanks,
</pre>
<img width="1px" height="1px" alt="" src="http://email.email.llvm.org/o/eJx8k81u6zYQhZ-G2gyuIJN27Cy0SGUI17joymnhXTAixyIbinRJKkbu0xeknMZBfzb-0RxxvnNwiDGa0RG1bPML2-wrnJP2odUYYvxJo6kGr97b74bxjjV71jwtn1dNDg6g5ukCSRM8HZ_hapIGadGNcACJDqQlDPYdIlERdRZjfKbpYjHR8ULSoDU_MRnv9iQtoFOA1hZt_BiTgommgQKcZyezNjLegfQupjDL5EP5T0nWC0F3Ov1KSXv195nd6dR9yv-x6oIBJ0oUImD4uhltIFTv9b317_5a3B0ApTb0tniLONGy_3cTTeq0sSqQY6KHwxkO8JafAoKcQ_QBrtpIDSZCd3rJQD-MU_Xd75f_ySrbPcBICZ6PP15-c4qkxUAKzj58za7IX41T-ZXowfmkjRvz3sJDqobF1B3jQsj4NgLj_PiZRlcGH0yM8wUkkCRzS2F29-mlmxRMimTPWb74nvCVYqaBaZYa5kiFfaJb0EcP-r9T9nOS_iPtwuxDhKvGdIulDHIjcz3z1prqsS6jfMh5trmU_wrqYkIniYl-IXnW6F5zwSrVCvUoHrGidrVtVqsdX4mHSrdnFGorlVIb3Akpmp0isdvg0IgtnR9pW5mWN1ysVny3WouNeKjFthkI5bDGNW6FILZuaEJja2vfptqHsTIxztRuxcNGVBYHsrFcT84dXaEMc_qbfRXa_M63YR4jWzfWxBQ_T0km2XKv_5wpluJs9pDbmzzIQNnvLb2lOR8hfK0PE301B9vqlC6RiSfGe8b70SQ9D7X0E-N93nj7-nYJ_g-SifG-cEbG--LjrwAAAP__XTODBw">