<html>
<head>
<title>Clang 3.0 Release Notes</title>
<link type="text/css" rel="stylesheet" href="../menu.css" />
<link type="text/css" rel="stylesheet" href="../content.css" />
<style type="text/css">
td {
	vertical-align: top;
}
</style>
</head>
<body>

<!--#include virtual="../menu.html.incl"-->

<div id="content">

<h1>Clang 3.0 Release Notes</h1>

<img align=right src="http://llvm.org/img/DragonSmall.png"
     width="136" height="136" alt="LLVM Dragon Logo">

<ul>
  <li><a href="#intro">Introduction</a></li>
  <li><a href="#whatsnew">What's New in Clang 3.0?</a>
    <ul>
      <li><a href="#majorfeatures">Major New Features</a></li>
      <li><a href="#cchanges">C Language Changes</a></li>
      <li><a href="#cxxhanges">C++ Language Changes</a></li>
      <li><a href="#objchanges">Objective-C Language Changes</a></li>
      <li><a href="#apichanges">Internal API Changes</a></li>
    </ul>
  </li>
  <li><a href="#knownproblems">Known Problems</a></li>
  <li><a href="#additionalinfo">Additional Information</a></li>
</ul>

<div class="doc_author">
  <p>Written by the <a href="http://llvm.org/">LLVM Team</a></p>
</div>

<!--
<h1 style="color:red">These are in-progress notes for the upcoming LLVM 3.0
release.<br>
You may prefer the
<a href="http://llvm.org/releases/2.9/docs/ReleaseNotes.html">LLVM 2.9
Release Notes</a>.</h1>
 -->

<!-- ======================================================================= -->
<h2 id="intro">Introduction</h2>
<!-- ======================================================================= -->

<p>This document contains the release notes for the Clang C/C++/Objective-C
frontend, part of the LLVM Compiler Infrastructure, release 3.0.  Here we
describe the status of Clang in some detail, including major improvements from
the previous release and new feature work. For the general LLVM release notes,
see <a href ="http;//llvm.org/docs/ReleaseNotes.html">the LLVM
 documentation</a>. All LLVM releases may be downloaded from the
<a href="http://llvm.org/releases/">LLVM releases web site</a>.</p>

<p>For more information about Clang or LLVM, including information about the
latest release, please check out the main please see the
<a href="http://clang.llvm.org">Clang Web Site</a> or the
<a href="http://llvm.org">LLVM Web Site</a>.

<p>Note that if you are reading this file from a Subversion checkout or the main
Clang web page, this document applies to the <i>next</i> release, not the
current one.  To see the release notes for a specific release, please see the
<a href="http://llvm.org/releases/">releases page</a>.</p>

<!-- ======================================================================= -->
<h2 id="whatsnew">What's New in Clang 3.0?</h2>
<!-- ======================================================================= -->

<p>Some of the major new features and improvements to Clang are listed here.
Generic improvements to Clang as a whole or two its underlying infrastructure
are described first, followed by language-specific sections with improvements to
Clang's support for those languages.</p>

<!-- = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = -->
<h3 id="majorfeatures">Major New Features</h3>
<!-- = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = -->

<h4 id="notes">Unorganized Notes</h4>
<p>These are completely random notes as I'm organizing my thoughts and reviewing
the history. Anything still here needs to be distilled and turned into proper
prose in a section of its own. When doing that, delete the notes.</p>
<ul>
  <li>OS Availability attribute -- r128127</li>
  <li>GNU ObjectiveC Runtime support -- David Chisnall</li>
  <li>Improved AST support for partially constructed nodes and incomplete
  information for LLDB and other clients which dynamically build AST nodes.</li>
  <li>Memory reduction -- initializers, macro expansions, source locations,
  etc.</li>
  <li>ObjC ARC -- get a blurb from rjmccall</li>
  <li>ObjC related result type/instancetype</li>
  <li>Thread Safety attributes and correctness analysis added to Clang.</li>
  <li>Major improvements to the interactions between serializing and
  deserializing the AST and the preprocessor -- argiris</li>
</ul>

<h4 id="diagnostics">A multitude of improvements to Clang's diagnostics</h4>
Clang's diagnostics are constantly being improved to catch more issues, explain
them more clearly, and provide more accurate source information about them.
A few improvements since the 2.9 release that have a particularly high impact:
<ul>
  <li>Substantially shorter messages due to better recovery, fewer include
  stacks, and tuning verbose features such as 'a.k.a.' type printing.</li>
  <li>
    Able to recover and correct from misspelled type names at the begging of statements. For example, Clang now emits:
    <pre><b>t.c:6:3: <span class="error">error:</span> use of undeclared identifier 'integer'; did you mean 'Integer'?</b>
  integer *i = 0;
  <span class="caret">^~~~~~~</span>
  Integer
<b>t.c:1:13: note:</b> 'Integer' declared here
typedef int Integer;
            <span class="caret">^</span></pre>
  </li>
  <li>Expanded typo correction to (among other improvements) look across
  namespaces and suggest namespace qualifiers in addition to misspellings of the
  identifier itself.</li>
  <li>More rich macro expansion backtraces and some (limited) fix-it hints when
  diagnostics stem from macro arguments.</li>
  <li>Many new warnings have been added to catch common, bug-prone code
  patterns.</li>
  <li>Uninitialized values Clang warning was rewritten to be more accurate,
  faster, and able to differentiate between the <em>possibility</em> of an
  uninitialized use and the <em>certainty</em> of an uninitialized use.</li>
</ul>

<h4 id="libclang">This release saw significant improvements to <code>libclang</code></h4>
<ul>
  <li>A broader set of the <code>libclang</code> API is exposed in the Python
  bindings.</li>
  <li>Much more of the Clang AST is exposed through <code>libclang</code>'s APIs
  and cursors.</li>
  <li>Cursors can now walk more effectively through macros, especially arguments
  to function-style macros, and resolve to the underlying AST.</li>
  <li>Improved code completion surrounding macros, macro arguments, and
  token pasting.</li>
  <li>Improved code completion for in-class member functions.</li>
  <li>Crash recovery for <code>libclang</code> clients.</li>
  <!-- Doug or Ted may want to flesh this out if there are relevant details I'm
  glossing over... -->
</ul>

<h4 id="driver">The Clang GCC-compatible command-line driver improved dramatically</h4>
A great deal of work went into the GCC-compatible driver for the 3.0 release
making it support more operating systems, emulate GCC behavior more accurately,
and support a much broader range of Linux distributions out of the box.
<ul>
  <li>More accurate support for hardware architecture pre-defined macros (e.g.,
  __i686__).</li>
  <li>Robust library and header search paths for the vast majority of x86 and
  x86-64 Linux distributions.</li>
  <li>Improved support for newer Darwin platforms.</li>
  <li>Partial support for <code>--sysroot=...</code> based cross-compiling on
  Linux (and similar) host systems.</li>
  <li>Improved support for locating and using libcxx when installed, especially
  on Darwin.</li>
  <!-- There are likely more Darwin-specific improvements to mention here? -->
  <!-- What support was added for FreeBSD? NetBSD? Anything noteworthy? -->
  <li>Automatic detection of Clang crashes in the driver and preparation of
  reproduction steps for filing bug reports.</li><!-- Chad, feel free to add
  more details here. -->
</ul>

<h4 id="ppcallbacks">Expanded support for instrumenting the preprocessor through
  callbacks</h4>
Several enhancements were made to the <code>PPCallbacks</code> interface to
expand the information available to tools and library users of Clang that wish
to introspect the preprocessing.
<ul>
  <li>The exact text used between the <code>""</code>s or <code>&lt;&gt;</code>s is reported.</li>
  <li>The header search path used to locate the header is reported.</li>
  <li>Missing files during including headers reported.</li>
  <li>The exact source range for expanded macros can be retrieved.</li>
</ul>

<h4 id="windows">Clang is building and tested regularly on Windows and can
  compile limited subsets of code on Windows</h4>
Clang is regularly built and tested on a variety of Windows platforms including
MinGW 32-bit and 64-bit, Cygwin, and natively with MSVC. In addition, Clang can
be used as a compiler in a few Windows contexts.
<ul>
  <li>Normal compilation supported for the MinGW target platform, in both 32-bit
  and 64-bit, and the Cygwin target platform.</li>
  <li>Parsing and AST support for Windows Structured Exception Handling.</li>
  <li>New -fms-compatibility flag to handle MSVC constructs that could change 
  the meaning of an otherwise well formed program</li>
  <li>clang can now parse all the MSVC 2010 standard C++ header files
  in the nominal case, (still need to specifiy -nobuiltininc for some headers).</li>
  <li>Improved support for MFC code parsing, (still a work in progress).</li>
</ul>

<!--
Nick and/or Rafael will flesh this out into a bit about the CFI / DWARF
improvements.

<h4 id="dwarf">DWARF Exception Handling uses CFI...</h4>
Rafael had a zillion patches to emit stuff using .cfi directives... =]

-->

<!--
Need Peter and/or Tanya to flesh this out if we want it in 3.0's notes.. The
state isn't clear just from documentation or commit logs.

<h4 id="opencl">Initial work to support compiling OpenCL with Clang</h4>
Clang has some (limited) support for compiling OpenCL.
-->

<!-- = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = -->
<h3 id="cchanges">C Language Changes in Clang</h3>
<!-- = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = -->

<h4 id="c1xchanges">C1X Feature Support</h4>

<p>Clang 3.0 adds support for the
<a href="http://clang.llvm.org/docs/LanguageExtensions.html#c1x">
<code>_Alignas</code>, <code>_Generic</code>, and <code>_Static_assert</code>
keywords</a>, drafted for inclusion in the next C standard, which is
provisionally known as C1X. Use <code>-std=c1x</code> or <code>-std=gnu1x</code>
to enable support for the new language standard. These features are
backwards-compatible and are available as an extension in all language
modes.</p>

<!-- = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = -->
<h3 id="cxxchanges">C++ Language Changes in Clang</h3>
<!-- = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = -->

<h4 id="cxx11changes">C++11 Feature Support</h4>
<p>Clang 3.0 adds support for
<a href="http://clang.llvm.org/cxx_status.html#cxx11">more of the language
features</a> added in the latest ISO C++ standard, C++11. Use
<code>-std=c++11</code> or <code>-std=gnu++11</code> to enable support for these
features. The following are now considered to be of production quality:
<ul>
  <li>Range-based <code>for</code> loops</li>
  <li>Alias declarations (a new syntax for <code>typedef</code> declarations),
  including their <code>template</code> forms</li>
  <li>Specifying default values for class data members within a class
  definition</li>
  <li>Constructors delegating to other constructors of the same class</li>
  <li>The <code>override</code> context-sensitive keyword for virtual member
  function declarations</li>
  <li>Explicitly generating default function definitions with
  <code>= default</code></li>
  <li>The <code>nullptr</code> keyword, and the corresponding type</li>
  <li>Raw string literals with arbitary delimiters (for instance,
  <code>R"delim(str"ing)delim"</code>)</li>
  <li>Unicode string literals (for instance, <code>U"\u1234"</code>) and the
  <code>char16_t</code> and <code>char32_t</code> built-in types
  <li><code>noexcept</code> expressions and the <code>noexcept</code> specifier
  on function declarations</li>
  <li><code>alignof</code> expressions and the <code>alignas</code> specifier on
  variable declarations</li>
  <li>A full set of <a href="http://clang.llvm.org/docs/LanguageExtensions.html#checking_type_traits">type traits</a>,
  sufficient to support C++11 standard libraries</li>
</ul>
All warning and language selection flags which previously accepted
<code>c++0x</code> now accept <code>c++11</code>. The old <code>c++0x</code>
form remains as an alias.

<!-- = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = -->
<h3 id="objcchanges">Objective-C Language Changes in Clang</h3>
<!-- = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = -->

<!-- = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = -->
<h3 id="apichanges">Internal API Changes</h3>
<!-- = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = -->

These are major API changes that have happened since the 2.9 release of Clang.
If upgrading an external codebase that uses Clang as a library, this section
should help get you past the largest hurdles of upgrading.

<h4 id="macroexpansion">Switched terminology from "instantiation" to "expansion"
  for macros</h4>
A great deal of comments and code changes fell out of this, but also every API
relating to macros with the word "instantiation" (or some variant thereof) was
renamed. An incomplete list of the most note-worthy ones is here:
<ul>
  <li><code>MacroInstantiation</code> became <code>MacroExpansion</code></li>
  <li><code>SourceManager::getInstantiationLoc</code> became
  <code>SourceManager::getExpansionLoc</code></li>
  <li><code>SourceManager::getInstantiationRange</code> became
  <code>SourceManager::getExpansionRange</code></li>
  <li><code>SourceManager::getImmediateInstantiationRange</code> became
  <code>SourceManager::getImmediateExpansionRange</code></li>
  <li><code>SourceManager::getDecomposedInstantiationLoc</code> became
  <code>SourceManager::getDecomposedExpansionLoc</code></li>
  <li><code>SourceManager::getInstantiationColumnNumber</code> became
  <code>SourceManager::getExpansionColumnNumber</code></li>
  <li><code>SourceManager::getInstantiationLineNumber</code> became
  <code>SourceManager::getExpansionLineNumber</code></li>
  <!-- TODO: Make this more complete! -->
</ul>

<h4 id="diagnosticrename">Diagnostic class names were shuffled</h4>
<ul>
  <li><code>Diagnostic</code> became <code>DiagnosticEngine</code></li>
  <li><code>DiagnosticClient</code> became <code>DiagnosticConsumer</code></li>
  <li><code>DiagnosticInfo</code> became <code>Diagnostic</code></li>
</ul>
Subclasses of <code>DiagnosticConsumer</code> were also then renamed to end with
<code>Consumer</code>.

<!-- ======================================================================= -->
<h2 id="knownproblems">Significant Known Problems</h2>
<!-- ======================================================================= -->

<!-- ======================================================================= -->
<h2 id="additionalinfo">Additional Information</h2>
<!-- ======================================================================= -->

<p>A wide variety of additional information is available on the
<a href="http://clang.llvm.org/">Clang web page</a>.  The web page contains
versions of the API documentation which are up-to-date with the Subversion
version of the source code.  You can access versions of these documents specific
to this release by going into the "<tt>clang/doc/</tt>" directory in the Clang
tree.</p>

<p>If you have any questions or comments about Clang, please feel free to
contact us via the <a href="http://lists.cs.uiuc.edu/mailman/listinfo/cfe-dev">
mailing list</a>.</p>


<!-- ======================================================================= -->
<!-- Likely 3.1 release notes -->
<!-- ======================================================================= -->
<!--
This is just a section to hold things that have already gotten started and
should likely pick up proper release notes in 3.1.

- C1X and C++11 atomics infrastructure and support
- CUDA support?

-->

</body>
</html>
