<div dir="ltr"><div>I'm not a Clang expert, but I'm 99% sure that Clang does not convert C++ into C (or something resembling C), but converts C++ code directly to LLVM IR, which is then further "worked on" by LLVM to improve on the code quality via various optimization passes, and then converted to machine code (or output as .bc or .ll from the compiler).<br><br>--<br></div>Mats<br></div><div class="gmail_extra"><br><div class="gmail_quote">On 8 September 2015 at 23:03, Hayden Livingston via cfe-dev <span dir="ltr"><<a href="mailto:cfe-dev@lists.llvm.org" target="_blank">cfe-dev@lists.llvm.org</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Is there a single well-defined point beyond which the AST has been<br>
lowered ( / desugared?) to essentially C, including expanding template<br>
information as different types?<br>
<br>
Or is it pretty much adhoc all over as we proceed to LLVM IR?<br>
<br>
I don't have complicated C++ code, so writing a ClangTool is not out<br>
of the realm of possibility for me, but I'm inquiring here if it's<br>
already part of the compiler<br>
_______________________________________________<br>
cfe-dev mailing list<br>
<a href="mailto:cfe-dev@lists.llvm.org">cfe-dev@lists.llvm.org</a><br>
<a href="http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-dev" rel="noreferrer" target="_blank">http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-dev</a><br>
</blockquote></div><br></div>