blob: 8c47d693ed3772772593f319376339b0d083d48a [file] [log] [blame]
Sean Silvab0455142013-01-02 22:05:33 +00001=====================================
Eli Bendersky11b6bad2014-10-06 22:45:17 +00002Clang 3.6 (In-Progress) Release Notes
Sean Silvab0455142013-01-02 22:05:33 +00003=====================================
Sean Silvafe251442012-12-23 01:19:35 +00004
5.. contents::
6 :local:
7 :depth: 2
8
9Written by the `LLVM Team <http://llvm.org/>`_
10
11.. warning::
12
Rafael Espindolaaf742502014-08-22 21:59:11 +000013 These are in-progress notes for the upcoming Clang 3.6 release. You may
14 prefer the `Clang 3.5 Release Notes
15 <http://llvm.org/releases/3.5/tools/clang/docs/ReleaseNotes.html>`_.
Sean Silvafe251442012-12-23 01:19:35 +000016
17Introduction
18============
19
20This document contains the release notes for the Clang C/C++/Objective-C
Rafael Espindolaaf742502014-08-22 21:59:11 +000021frontend, part of the LLVM Compiler Infrastructure, release 3.6. Here we
Sean Silvafe251442012-12-23 01:19:35 +000022describe the status of Clang in some detail, including major
23improvements from the previous release and new feature work. For the
24general LLVM release notes, see `the LLVM
25documentation <http://llvm.org/docs/ReleaseNotes.html>`_. All LLVM
26releases may be downloaded from the `LLVM releases web
27site <http://llvm.org/releases/>`_.
28
29For more information about Clang or LLVM, including information about
30the latest release, please check out the main please see the `Clang Web
31Site <http://clang.llvm.org>`_ or the `LLVM Web
32Site <http://llvm.org>`_.
33
34Note that if you are reading this file from a Subversion checkout or the
35main Clang web page, this document applies to the *next* release, not
36the current one. To see the release notes for a specific release, please
37see the `releases page <http://llvm.org/releases/>`_.
38
Rafael Espindolaaf742502014-08-22 21:59:11 +000039What's New in Clang 3.6?
Sean Silvafe251442012-12-23 01:19:35 +000040========================
41
42Some of the major new features and improvements to Clang are listed
43here. Generic improvements to Clang as a whole or to its underlying
44infrastructure are described first, followed by language-specific
45sections with improvements to Clang's support for those languages.
46
47Major New Features
48------------------
49
Aaron Ballmana6f759e2014-12-05 15:24:55 +000050- The __has_attribute built-in macro no longer queries for attributes across
51 multiple attribute syntaxes (GNU, C++11, __declspec, etc). Instead, it only
52 queries GNU-style attributes. With the addition of __has_cpp_attribute and
53 __has_declspec_attribute, this allows for more precise coverage of attribute
54 syntax querying.
Aaron Ballmana4bb4b92014-01-09 23:11:13 +000055
Rafael Espindola34970692013-12-12 16:07:11 +000056
Sean Silvafe251442012-12-23 01:19:35 +000057Improvements to Clang's diagnostics
58^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
59
60Clang's diagnostics are constantly being improved to catch more issues,
61explain them more clearly, and provide more accurate source information
Rafael Espindolaaf742502014-08-22 21:59:11 +000062about them. The improvements since the 3.5 release include:
Sylvestre Ledru5e43f742014-07-14 18:30:23 +000063
Sean Silvafe251442012-12-23 01:19:35 +000064- ...
65
Sean Silvafe251442012-12-23 01:19:35 +000066New Compiler Flags
67------------------
68
Rafael Espindolaaf742502014-08-22 21:59:11 +000069The option ....
Renato Golin1588cda2013-12-11 09:35:10 +000070
Sylvestre Ledru0e767b12014-07-14 18:34:37 +000071
Tyler Nowickidb2668a2014-06-18 00:51:32 +000072New Pragmas in Clang
73-----------------------
74
Rafael Espindolaaf742502014-08-22 21:59:11 +000075Clang now supports the ...
Mark Heffernanbd26f5e2014-07-21 18:08:34 +000076
Hans Wennborg02dc0002014-08-05 00:21:23 +000077Windows Support
78---------------
79
Rafael Espindolaaf742502014-08-22 21:59:11 +000080Clang's support for building native Windows programs ...
Hans Wennborg02dc0002014-08-05 00:21:23 +000081
82
Renato Golinf2fcddb2013-12-13 09:27:34 +000083C Language Changes in Clang
84---------------------------
85
86...
87
Sean Silvafe251442012-12-23 01:19:35 +000088C11 Feature Support
89^^^^^^^^^^^^^^^^^^^
90
91...
92
93C++ Language Changes in Clang
94-----------------------------
95
Bill Wendling61f44cc2013-06-04 06:17:46 +000096- ...
Rafael Espindola9ca6e812013-04-09 12:51:24 +000097
Sean Silvafe251442012-12-23 01:19:35 +000098C++11 Feature Support
99^^^^^^^^^^^^^^^^^^^^^
100
101...
102
103Objective-C Language Changes in Clang
104-------------------------------------
105
106...
107
Erik Schnetter489700d2013-11-11 06:36:33 +0000108OpenCL C Language Changes in Clang
109----------------------------------
110
Bill Wendling0a794a4b2013-11-20 10:13:37 +0000111...
Erik Schnetter489700d2013-11-11 06:36:33 +0000112
Sean Silvafe251442012-12-23 01:19:35 +0000113Internal API Changes
114--------------------
115
Rafael Espindolaaf742502014-08-22 21:59:11 +0000116These are major API changes that have happened since the 3.5 release of
Sean Silvafe251442012-12-23 01:19:35 +0000117Clang. If upgrading an external codebase that uses Clang as a library,
118this section should help get you past the largest hurdles of upgrading.
119
Sean Silvafe251442012-12-23 01:19:35 +0000120...
121
Ted Kremenek3a2291b2013-04-24 07:33:52 +0000122libclang
123--------
124
Bill Wendling61f44cc2013-06-04 06:17:46 +0000125...
Ted Kremenek3a2291b2013-04-24 07:33:52 +0000126
Anna Zaksb6219a92013-04-25 23:14:38 +0000127Static Analyzer
Ted Kremenek004e8232013-04-26 00:01:34 +0000128---------------
Anna Zaksb6219a92013-04-25 23:14:38 +0000129
Bill Wendling0a794a4b2013-11-20 10:13:37 +0000130...
Ted Kremenek004e8232013-04-26 00:01:34 +0000131
132Core Analysis Improvements
133==========================
134
Bill Wendling61f44cc2013-06-04 06:17:46 +0000135- ...
Ted Kremenek004e8232013-04-26 00:01:34 +0000136
137New Issues Found
138================
139
Bill Wendling61f44cc2013-06-04 06:17:46 +0000140- ...
Anna Zaksb6219a92013-04-25 23:14:38 +0000141
Sean Silvafe251442012-12-23 01:19:35 +0000142Python Binding Changes
143----------------------
144
145The following methods have been added:
146
147- ...
148
149Significant Known Problems
150==========================
151
152Additional Information
153======================
154
155A wide variety of additional information is available on the `Clang web
156page <http://clang.llvm.org/>`_. The web page contains versions of the
157API documentation which are up-to-date with the Subversion version of
158the source code. You can access versions of these documents specific to
159this release by going into the "``clang/docs/``" directory in the Clang
160tree.
161
162If you have any questions or comments about Clang, please feel free to
163contact us via the `mailing
164list <http://lists.cs.uiuc.edu/mailman/listinfo/cfe-dev>`_.