<div dir="ltr">Great news Geoff!</div><div class="gmail_extra"><br><br><div class="gmail_quote">On Fri, Nov 1, 2013 at 2:37 PM, Geoffrey Irving <span dir="ltr"><<a href="mailto:irving@naml.us" target="_blank">irving@naml.us</a>></span> wrote:<br>

<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Okay, I've diagnosed the problem:<br>
<br>
   <a href="https://github.com/llvm-mirror/clang/blob/c6911a2b1fc176e4d6053ed86506c17c3d8b0057/tools/libclang/CIndex.cpp#L670" target="_blank">https://github.com/llvm-mirror/clang/blob/c6911a2b1fc176e4d6053ed86506c17c3d8b0057/tools/libclang/CIndex.cpp#L670</a><br>


<br>
Patch coming up.<br>
<br>
Geoffrey<br>
<div><div class="h5"><br>
On Thu, Oct 31, 2013 at 10:23 PM, Anthony Scopatz <<a href="mailto:scopatz@gmail.com">scopatz@gmail.com</a>> wrote:<br>
> Hello All,<br>
><br>
> Any guidance that you can provide would be most beneficial since we really<br>
> need this feature for the xdress project.  Thanks!<br>
><br>
> Be Well<br>
> Anthony<br>
><br>
><br>
>> Another ping for this message: let me know if this is the wrong forum<br>
>> for questions about libclang.<br>
>> Geoffrey<br>
>> On Thu, Aug 15, 2013 at 10:36 AM, Geoffrey Irving <irving at <a href="http://naml.us" target="_blank">naml.us</a>><br>
>> wrote:<br>
>> > In case the previous email was too long, here's a quick summary:<br>
>> ><br>
>> > I am trying to parse the code<br>
>> ><br>
>> ><br>
>> > class Toaster : Base<int,7> { ... };<br>
>> ><br>
>> > I can get to the base specifier corresponding to Base<int,7> and from<br>
>> > there<br>
>> > to a RECORD type, but there appears to be no way to access the template<br>
>> > arguments of a template reference from either the Python or C bindings<br>
>> > to<br>
>> > clang. If I'm correct that this isn't exposed yet, what's the right way<br>
>> > to<br>
>> > do it?<br>
>> ><br>
>> > Thanks,<br>
>> > Geoffrey<br>
>> ><br>
>> ><br>
>> > On Tue, Aug 13, 2013 at 12:26 PM, Geoffrey Irving <irving at <a href="http://naml.us" target="_blank">naml.us</a>><br>
>> > wrote:<br>
>> >><br>
>> >> I am trying to parse the following code with the Python interface to<br>
>> >> libclang (full listing attached):<br>
>> >><br>
>> >> class Toaster : Base<int,7> { ... };<br>
>> >><br>
>> >> Unfortunately, traversing cursors via getChildren gives me the<br>
>> >> following<br>
>> >> tree (see clang_dump() in autodescribe.py for the code that generated<br>
>> >> this<br>
>> >> tree):<br>
>> >><br>
>> >> CLASS_DECL Toaster<br>
>> >> CXX_BASE_SPECIFIER None : Base<int,7><br>
>> >> TEMPLATE_REF None : Base<br>
>> >> INTEGER_LITERAL None : 7<br>
>> >> CXX_ACCESS_SPEC_DECL PUBLIC : public:<br>
>> >> ...<br>
>> >><br>
>> >> The base specifier only seems to mention "Base" and "7", not "int".<br>
>> >> Should I be able to fully inspect Base<int,7> using cursors?<br>
>> >><br>
>> >> I also tried traversing the Type object corresponding to Base<int,7>,<br>
>> >> but<br>
>> >> I don't see any methods for accessing template parameters either in<br>
>> >> libclang's Python bindings or in the original C. If I'm correct that<br>
>> >> the<br>
>> >> functionality is missing from the C layer, what's the easiest way to<br>
>> >> add it?<br>
>> >> The C++ structure of template references seems quite complicated (I<br>
>> >> imagine<br>
>> >> by necessity :)).<br>
>> >><br>
>> >> Background: I'm working on a clang-based front end for the xdress<br>
>> >> Python<br>
>> >> binding generator project. I've already made a couple minor<br>
>> >> improvements to<br>
>> >> the libclang Python bindings (exposing formatDiagnostic and the details<br>
>> >> of<br>
>> >> access specifiers), and am happy to contribute these back once I'm<br>
>> >> done.<br>
>> >><br>
>> >> Thanks for any suggestions!<br>
>> >> Geoffrey<br>
><br>
><br>
</div></div>> _______________________________________________<br>
> cfe-dev mailing list<br>
> <a href="mailto:cfe-dev@cs.uiuc.edu">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/mailman/listinfo/cfe-dev</a><br>
><br>
</blockquote></div><br></div>