You can use ValueDecl::getType.<div><br></div><div><a href="http://clang.llvm.org/doxygen/classclang_1_1ValueDecl.html">http://clang.llvm.org/doxygen/classclang_1_1ValueDecl.html</a><br><br><div class="gmail_quote">On Thu, Nov 8, 2012 at 4:35 PM, Rajendra <span dir="ltr"><<a href="mailto:rks@cse.iitb.ac.in" target="_blank">rks@cse.iitb.ac.in</a>></span> wrote:<br>

<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Hi,<br>
<br>
Using clang API, I want to get type for a declaration.<br>
<br>
e.g. declaration is: int x; I am getting variable name as x but I am not able to get type of x.<br>
<br>
If I can get clang::QualType then I can see type, but I am not getting how to get clang::QualType from clang::Decl<br>
<br>
  clang::DeclGroupRef::iterator it;<br>
<br>
  for (it = declGroupRef.begin(); it != declGroupRef.end(); it++)<br>
  {<br>
<br>
    clang::Decl* decl = *it;<br>
    std::cerr << "\tdecl statement: ";<br>
    decl->dump();        // --> this gives `int x'<br>
<br>
    const NamedDecl *namedDecl = dyn_cast<NamedDecl>(decl);<br>
<br>
    if (namedDecl)<br>
    {<br>
      std::cerr << "\t\tidentifier name = "<br>
        << namedDecl->getNameAsString() << "\n";        // --> this gives `x'<br>
    }<br>
<br>
  }<br>
<br>
Any pointers?<span class="HOEnZb"><font color="#888888"><br>
<br>
Rajendra<br>
______________________________<u></u>_________________<br>
cfe-dev mailing list<br>
<a href="mailto:cfe-dev@cs.uiuc.edu" target="_blank">cfe-dev@cs.uiuc.edu</a><br>
<a href="http://lists.cs.uiuc.edu/mailman/listinfo/cfe-dev" target="_blank">http://lists.cs.uiuc.edu/<u></u>mailman/listinfo/cfe-dev</a><br>
</font></span></blockquote></div><br><br clear="all"><div><br></div>-- <br>Joćo Matos<br>
</div>