Lines Matching full:clang
7 <title>Comparing clang to other open source compilers</title>
14 <h1>Clang vs Other Open Source Compilers</h1>
17 always clear to people why we decided to do this. Here we compare clang
27 This will hopefully help you to evaluate whether using clang is a good
38 <li><a href="#gcc">Clang vs GCC</a> (GNU Compiler Collection)</li>
39 <li><a href="#elsa">Clang vs Elsa</a> (Elkhound-based C++ Parser)</li>
40 <li><a href="#pcc">Clang vs PCC</a> (Portable C Compiler)</li>
45 <h2><a name="gcc">Clang vs GCC (GNU Compiler Collection)</a></h2>
48 <p>Pro's of GCC vs clang:</p>
51 <li>GCC supports languages that clang does not aim to, such as Java, Ada,
53 <li>GCC has a few <a href="cxx_status.html">C++'11 features</a> that Clang
60 <p>Pro's of clang vs GCC:</p>
63 <li>The Clang ASTs and design are intended to be <a
68 <li>Clang is designed as an API from its inception, allowing it to be reused
81 reentrant or multi-threadable, etc. Clang has none of these problems.
83 <li>For every token, clang tracks information about where it was written and
89 <li>Clang does not implicitly simplify code as it parses it like GCC does.
94 <li>Clang can serialize its AST out to disk and read it back into another
100 <li>Clang is <a href="features.html#performance">much faster and uses far
102 <li>Clang aims to provide extremely clear and concise diagnostics (error and
106 expressive diagnostics. Clang also preserves typedefs in diagnostics
108 <li>GCC is licensed under the GPL license. clang uses a BSD license, which
111 <li>Clang inherits a number of features from its use of LLVM as a backend,
115 <li><a href="compatibility.html#c++">Clang's support for C++</a> is more
121 <h2><a name="elsa">Clang vs Elsa (Elkhound-based C++ Parser)</a></h2>
124 <p>Pro's of Elsa vs clang:</p>
128 grammar rules. Clang has a very simple and easily hackable parser,
132 <p>Pro's of clang vs Elsa:</p>
135 <li>Clang's C and C++ support is far more mature and practically useful than
139 projects (e.g. Oink), but Oink is apparently dead now too. Clang has a
142 file bugs against Clang and they will often be fixed for you. If you
145 <li>Elsa is not built as a stack of reusable libraries like clang is. It is
148 AST. You can do this in Clang and it is much faster than building an
155 far more space and time than clang.</li>
165 <h2><a name="pcc">Clang vs PCC (Portable C Compiler)</a></h2>
168 <p>Pro's of PCC vs clang:</p>
175 <p>Pro's of clang vs PCC:</p>
179 The clang + llvm communities are very active.</li>