<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"
          "http://www.w3.org/TR/html4/strict.dtd">
<html>
<head>
  <META http-equiv="Content-Type" content="text/html; charset=ISO-8859-1" />
  <title>Clang - C++ Support</title>
  <link type="text/css" rel="stylesheet" href="menu.css" />
  <link type="text/css" rel="stylesheet" href="content.css" />
  <style type="text/css">
</style>
</head>
<body>

<!--#include virtual="menu.html.incl"-->

<div id="content">

<!--*************************************************************************-->
<h1>C++ Support in Clang</h1>
<!--*************************************************************************-->

<p>
This page tracks the status of C++ support in Clang.<br>
Currently most of the C++ features are missing; here you can find features that are at least partially supported in Clang. </p>

<p>
In this table, parser support means that the parser knows the grammar for
the feature.  "Sema" support means that we do type checking, report errors 
about misuses of the feature and build an AST.  CodeGen support means that we
actually produce LLVM code for the feature with the -emit-llvm option.
</p>

<table width="689" border="1" cellspacing="0">
  <tr>
    <td width="150"><h3>Feature</h3></td>
    <td width="172"><h3>Example</h3></td>
    <td width="345"><h3>Status</h3></td>
  </tr>
  <tr>
    <td>Bool type </td>
    <td>bool x; </td>
    <td>Full support.</td>
  </tr>
  <tr>
    <td>wchar_t type </td>
    <td>wchar_t x; </td>
    <td>Parser and Sema support in, partial Codegen support.</td>
  </tr>
  <tr>
    <td>Named Casts </td>
    <td>static_cast&lt;int&gt;(x)</td>
    <td>Partial Parser and Sema support, no codegen.</td>
  </tr>
  <tr>
    <td>References</td>
    <td>int &amp;x = ...;</td>
    <td>Parser and Sema support in, partial Codegen support.</td>
  </tr>
  <tr>
    <td>Default arguments </td>
    <td>void f(int x=0); </td>
    <td>Full support. </td>
  </tr>
  <tr>
    <td>Namespaces</td>
    <td>namespace A {<br/>
	  &nbsp;&nbsp;&nbsp;int x;<br/>
	  }</td>
    <td>Parser and Sema support in, no Codegen support.</td>
  </tr>
  <tr>
    <td>Class definitions</td>
    <td>class C {<br/>
      public:<br/>
      &nbsp;&nbsp;&nbsp;int getX() { return x; }<br/>
      private:<br/>
	  &nbsp;&nbsp;&nbsp;int x;<br/>
	  };</td>
    <td>Partial Parser and Sema support, no Codegen support.</td>
  </tr>
</table>
</div>
</body>
</html>
