<div dir="ltr">Hmmm, so that basically means that if I need full c++11 support I will need to work with clang model directly, ok.</div><div class="gmail_extra"><br><div class="gmail_quote">On Tue, Jul 28, 2015 at 4:07 PM, Brad King <span dir="ltr"><<a href="mailto:brad.king@kitware.com" target="_blank">brad.king@kitware.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><span class="">On 07/27/2015 07:43 PM, NIkolai Marchenko wrote:<br>
> what it the current status of support for C++11?<br>
><br>
> For example - does it parse variadics, trailing return types?<br>
> What happens if it meets a macro in a file that is defined somewhere else?<br>
<br>
</span>CastXML is based on Clang (<a href="http://clang.llvm.org" rel="noreferrer" target="_blank">clang.llvm.org</a>) so its parser is a full compiler.<br>
It operates on an entire translation unit preprocessed just as a compiler<br>
would (and so needs to be given a .cxx file and not just any .h file).<br>
Clang supports C++11, so CastXML can parse such translation units as well<br>
as Clang can.<br>
<br>
However, CastXML's output format is currently that of gccxml's as it is<br>
meant to succeed that tool while requiring little effort to port its<br>
clients. The output format does not support C++11 constructs like rvalue<br>
references. When operating with -std=c++11, CastXML will parse as C++11<br>
but only output the C++98 subset of the declarations encountered.<br>
<br>
CastXML, like gccxml, doesn't dump uninstantiated templates but will<br>
output descriptions of any instantiations of templates encountered.<br>
<br>
-Brad<br>
<br>
_______________________________________________<br>
CastXML mailing list<br>
<a href="mailto:CastXML@public.kitware.com">CastXML@public.kitware.com</a><br>
<a href="http://public.kitware.com/mailman/listinfo/castxml" rel="noreferrer" target="_blank">http://public.kitware.com/mailman/listinfo/castxml</a><br>
</blockquote></div><br></div>