xref: /minix3/external/bsd/llvm/dist/clang/www/analyzer/release_notes.html (revision 0a6a1f1d05b60e214de2f05a7310ddd1f0e590e7)
1f4a2713aSLionel Sambuc<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"
2f4a2713aSLionel Sambuc          "http://www.w3.org/TR/html4/strict.dtd">
3f4a2713aSLionel Sambuc<html>
4f4a2713aSLionel Sambuc<head>
5f4a2713aSLionel Sambuc  <title>Release notes for checker-XXX builds</title>
6f4a2713aSLionel Sambuc  <link type="text/css" rel="stylesheet" href="menu.css">
7f4a2713aSLionel Sambuc  <link type="text/css" rel="stylesheet" href="content.css">
8f4a2713aSLionel Sambuc  <script type="text/javascript" src="scripts/menu.js"></script>
9f4a2713aSLionel Sambuc</head>
10f4a2713aSLionel Sambuc<body>
11f4a2713aSLionel Sambuc
12f4a2713aSLionel Sambuc<div id="page">
13f4a2713aSLionel Sambuc<!--#include virtual="menu.html.incl"-->
14f4a2713aSLionel Sambuc<div id="content">
15f4a2713aSLionel Sambuc
16f4a2713aSLionel Sambuc<h1>Release notes for <tt>checker-XXX</tt> builds</h1>
17f4a2713aSLionel Sambuc
18*0a6a1f1dSLionel Sambuc<h4 id="checker_276">checker-276</h4>
19*0a6a1f1dSLionel Sambuc<p><b>built:</b> February 19, 2014</br>
20*0a6a1f1dSLionel Sambuc	<b>download:</b> <a href="downloads/checker-276.tar.bz2">checker-276.tar.bz2</a></p>
21*0a6a1f1dSLionel Sambuc	<p><b>highlights:</b></p>
22*0a6a1f1dSLionel Sambuc	<ul>
23*0a6a1f1dSLionel Sambuc    <li>Includes about 9 months of change to Clang itself (improved C++11/14 support, etc.)</li>
24*0a6a1f1dSLionel Sambuc    <li>More precise modeling of Objective-C properties, which enables the analyzer to find more bugs.</li>
25*0a6a1f1dSLionel Sambuc    <li>Includes a new "missing call to <tt>super</tt>" warning, which looks for common pattern in iOS/OSX APIs that require chaining a call to a super class's implementation of a method.</li>
26*0a6a1f1dSLionel Sambuc    <li>Accepts <tt>-arch arm64</tt> (which may be passed by Xcode 5.0), but for the time being analyzes code in such cases as <tt>-arch armv7s</tt>.</li>
27*0a6a1f1dSLionel Sambuc    <li>Many sundry fixes, improvements to C++ support, etc.</li>
28*0a6a1f1dSLionel Sambuc	</ul>
29*0a6a1f1dSLionel Sambuc
30f4a2713aSLionel Sambuc<h4 id="checker_275">checker-275</h4>
31f4a2713aSLionel Sambuc<p><b>built:</b> May 23, 2013</br>
32f4a2713aSLionel Sambuc	<b>download:</b> <a href="downloads/checker-275.tar.bz2">checker-275.tar.bz2</a></p>
33f4a2713aSLionel Sambuc	<p><b>highlights:</b></p>
34f4a2713aSLionel Sambuc	<ul>
35f4a2713aSLionel Sambuc    <li>Xcode: Includes a new arrow layout algorithm for issue presentation within Xcode.  The goal is for interprocedural bug reports to look cleaner and less busy (and easier to read).  Feedback appreciated.</li>
36f4a2713aSLionel Sambuc    <li>Xcode: Bugs that occur within header code (e.g., C++) are now reported within the callers in the main source file.  For example, if you misuse a C++ function declared in a header the primary diagnostic will be in the caller (in the main source file).  The full expanded path, however, will show the bug in the header code as well.  These kind of cross-file issues are currently only support by Xcode, not the HTML output.</li>
37f4a2713aSLionel Sambuc    <li>This build is built with LLVM's Link-Time Optimization (LTO), which should make it slightly faster.</li>
38f4a2713aSLionel Sambuc    <li>LTO also reduces the download size (about 19% smaller than checker-274).</li>
39f4a2713aSLionel Sambuc    <li>Many sundry fixes.</li>
40f4a2713aSLionel Sambuc	</ul>
41f4a2713aSLionel Sambuc
42f4a2713aSLionel Sambuc<h4 id="checker_274">checker-274</h4>
43f4a2713aSLionel Sambuc<p><b>built:</b> April 23, 2013</br>
44f4a2713aSLionel Sambuc	<b>download:</b> <a href="https://attache.apple.com/AttacheWeb/dl?id=ATCdb3165f4406a4589b5878a22494c3b79">checker-274.tar.bz2</a></p>
45f4a2713aSLionel Sambuc	<p><b>highlights:</b></p>
46f4a2713aSLionel Sambuc	<ul>
47f4a2713aSLionel Sambuc    <li>Improved use-after-free and mismatched deallocator checking.</li>
48f4a2713aSLionel Sambuc    <li>Diagnostic polish.</li>
49f4a2713aSLionel Sambuc    <li>Fixes crashes found in checker-273.</li>
50f4a2713aSLionel Sambuc	</ul>
51f4a2713aSLionel Sambuc
52f4a2713aSLionel Sambuc<h4 id="checker_273">checker-273</h4>
53f4a2713aSLionel Sambuc<p><b>built:</b> April 8, 2013</br>
54f4a2713aSLionel Sambuc	<b>download:</b> <a href="https://attache.apple.com/AttacheWeb/dl?id=ATCdefcc852a99546cfbaba2a960e07478e">checker-273.tar.bz2</a></p>
55f4a2713aSLionel Sambuc	<p><b>highlights:</b></p>
56f4a2713aSLionel Sambuc	<ul>
57f4a2713aSLionel Sambuc    <li>Additional checks for misuse of Foundation collection APIs.
58f4a2713aSLionel Sambuc    <li>New C++ checker for attempting to create a reference to null.</li>
59f4a2713aSLionel Sambuc    <li>New use-after-free checker for C++ 'delete'.</li>
60f4a2713aSLionel Sambuc    <li>New checker for simple cases of mismatched allocators and deallocators, e.g. "delete malloc(4);"</li>
61f4a2713aSLionel Sambuc    <li>Support for basic interprocedural analysis of C++ destructors.</li>
62f4a2713aSLionel Sambuc    <li>Additional heuristics for suppressing null pointer false positives.</li>
63f4a2713aSLionel Sambuc    <li>Misc. bug fixes and performance enhancements.</li>
64f4a2713aSLionel Sambuc	</ul>
65f4a2713aSLionel Sambuc
66f4a2713aSLionel Sambuc<h4 id="checker_272">checker-272</h4>
67f4a2713aSLionel Sambuc<p><b>built:</b> March 1, 2013</p>
68f4a2713aSLionel Sambuc	<p><b>highlights:</b></p>
69f4a2713aSLionel Sambuc	<ul>
70f4a2713aSLionel Sambuc        <li>Better modeling of C++ constructors:
71f4a2713aSLionel Sambuc            <ul>
72f4a2713aSLionel Sambuc                <li>Interprocedural analysis support for constructors of types with trivial destructors</li>
73f4a2713aSLionel Sambuc                <li>Efficient model of trivial copy and move constructors</li>
74f4a2713aSLionel Sambuc            </ul>
75f4a2713aSLionel Sambuc        </li>
76f4a2713aSLionel Sambuc        <li>Better diagnostics for loops that execute 0 times</li>
77f4a2713aSLionel Sambuc        <li>Fixes a linking issue that prevented the checker from running on OS X v10.6 and earlier</li>
78f4a2713aSLionel Sambuc        <li>Fixes for misc. crashes and false positives</li>
79f4a2713aSLionel Sambuc	</ul>
80f4a2713aSLionel Sambuc
81f4a2713aSLionel Sambuc<h4 id="checker_271">checker-271</h4>
82f4a2713aSLionel Sambuc<p><b>built:</b> February 8, 2013</p>
83f4a2713aSLionel Sambuc	<p><b>highlights:</b></p>
84f4a2713aSLionel Sambuc	<ul>
85f4a2713aSLionel Sambuc        <li>Faster analysis for <tt>scan-build xcodebuild</tt> when using Xcode 4.6 and higher:
86f4a2713aSLionel Sambuc            <ul>
87f4a2713aSLionel Sambuc                <li><tt>scan-build</tt> now uses Xcode's built-in interposition mechanism for the static analyzer to provide faster builds while doing static analysis (PCH files are now built).</li>
88f4a2713aSLionel Sambuc                <li>This change also allows <tt>scan-build</tt> to have better support for iOS project analysis without having to specifying weird SDK settings to <tt>scan-build</tt>.</li>
89f4a2713aSLionel Sambuc            </ul></li>
90f4a2713aSLionel Sambuc        <li>Better diagnostics for implicitly-defined member functions in C++.</li>
91f4a2713aSLionel Sambuc        <li>New warning for <tt>malloc</tt>/<tt>free</tt> checker when passing <tt>malloc</tt>'ed pointer with non-zero offset to <tt>free()</tt>.
92f4a2713aSLionel Sambuc        <li>Fixes for misc. parser crashes.</li>
93f4a2713aSLionel Sambuc        <li>Newer than the static analyzer version in Xcode 4.6</li>
94f4a2713aSLionel Sambuc	</ul>
95f4a2713aSLionel Sambuc
96f4a2713aSLionel Sambuc<h4 id="checker_270">checker-270</h4>
97f4a2713aSLionel Sambuc<p><b>built:</b> January 4, 2013</p>
98f4a2713aSLionel Sambuc	<p><b>highlights:</b></p>
99f4a2713aSLionel Sambuc	<ul>
100f4a2713aSLionel Sambuc		<li>Major performance enhancements to speed up interprocedural analysis.</li>
101f4a2713aSLionel Sambuc		<li>Misc. bug fixes.</li>
102f4a2713aSLionel Sambuc	</ul>
103f4a2713aSLionel Sambuc
104f4a2713aSLionel Sambuc<h4 id="checker_269">checker-269</h4>
105f4a2713aSLionel Sambuc<p><b>built:</b> September 25, 2012</p>
106f4a2713aSLionel Sambuc	<p><b>highlights:</b></p>
107f4a2713aSLionel Sambuc	<ul>
108f4a2713aSLionel Sambuc		<li>Significantly improves interprocedural analysis for Objective-C.</li>
109f4a2713aSLionel Sambuc		<li>Numerous bug fixes and heuristics to reduce false positives reported
110f4a2713aSLionel Sambuc			over checker-268.</li>
111f4a2713aSLionel Sambuc	</ul>
112f4a2713aSLionel Sambuc
113f4a2713aSLionel Sambuc<h4 id="checker_268">checker-268</h4>
114f4a2713aSLionel Sambuc<p><b>built:</b> September 11, 2012</p>
115f4a2713aSLionel Sambuc	<p><b>highlights:</b></p>
116f4a2713aSLionel Sambuc
117f4a2713aSLionel Sambuc<ul>
118f4a2713aSLionel Sambuc	<li>Adds initial interprocedural analysis support for C++ and Objective-C. This will greatly improve analysis coverage and find deeper bugs in Objective-C and C++ code.</li>
119f4a2713aSLionel Sambuc	<li>Contains a static analyzer newer than Xcode 4.4.</li>
120f4a2713aSLionel Sambuc</ul>
121f4a2713aSLionel Sambuc
122f4a2713aSLionel Sambuc<p>NOTE: this checker build includes a <i>huge</i> number of changes. It has the potential to find many more bugs, but may report new kinds of false positives. We'd like to know about
123f4a2713aSLionel Sambucthese, and any other problems you encounter. When you encounter an issue, please <a href="/filing_bugs.html">file a bug report</a>.</p>
124f4a2713aSLionel Sambuc
125f4a2713aSLionel Sambuc<h4 id="checker_267">checker-267</h4>
126f4a2713aSLionel Sambuc<p><b>built:</b> June 1, 2012</p>
127f4a2713aSLionel Sambuc   <p><b>highlights:</b></p>
128f4a2713aSLionel Sambuc
129f4a2713aSLionel Sambuc<p>Adds basic interprocedural analysis support for blocks.</p>
130f4a2713aSLionel Sambuc
131f4a2713aSLionel Sambuc<h4 id="checker_266">checker-266</h4>
132f4a2713aSLionel Sambuc<p><b>built:</b> May 23, 2012</p>
133f4a2713aSLionel Sambuc   <p><b>highlights:</b></p>
134f4a2713aSLionel Sambuc
135f4a2713aSLionel Sambuc<p>Contains numerous stability fixes over checker-266, especially when analyzing C++11 code.</p>
136f4a2713aSLionel Sambuc
137f4a2713aSLionel Sambuc<h4 id="checker_265">checker-265</h4>
138f4a2713aSLionel Sambuc<p><b>built:</b> May 8, 2012</p>
139f4a2713aSLionel Sambuc   <p><b>highlights:</b></p>
140f4a2713aSLionel Sambuc
141f4a2713aSLionel Sambuc<p>This release contains a fix for a major crasher introduced in checker-264, and various refinements to
142f4a2713aSLionel Sambucimprove the precision and reduce the false positive rate of the analyzer. It also enables a new unix.MallocSizeof check, which reports
143f4a2713aSLionel Sambucinconsistencies between the casted type of the return value of a 'malloc/calloc/realloc' call and the operand
144f4a2713aSLionel Sambucof sizeof expressions contained within its argument(s).</p>
145f4a2713aSLionel Sambuc
146f4a2713aSLionel Sambuc<h4 id="checker_264">checker-264</h4>
147f4a2713aSLionel Sambuc
148f4a2713aSLionel Sambuc<p><b>built:</b> April 26, 2012</p>
149f4a2713aSLionel Sambuc  <p><b>highlights:</b></p>
150f4a2713aSLionel Sambuc
151f4a2713aSLionel Sambuc<p>This release contains misc. bug fixes and performance enhancements over checker-263, including
152f4a2713aSLionel Sambuc  a reduction of some kinds of false positives related to the malloc() checker.</p>
153f4a2713aSLionel Sambuc
154f4a2713aSLionel Sambuc<h4 id="checker_263">checker-263</h4>
155f4a2713aSLionel Sambuc
156f4a2713aSLionel Sambuc<p><b>built:</b> March 22, 2012</p>
157f4a2713aSLionel Sambuc<p><b>highlights:</b></p>
158f4a2713aSLionel Sambuc
159f4a2713aSLionel Sambuc<ul>
160f4a2713aSLionel Sambuc<li>Fixes several serious bugs with inter-procedural analysis, including a case where retain/releases would be &quot;double-counted&quot;.</li>
161f4a2713aSLionel Sambuc</ul>
162f4a2713aSLionel Sambuc
163f4a2713aSLionel Sambuc<h4 id="checker_262">checker-262</h4>
164f4a2713aSLionel Sambuc
165f4a2713aSLionel Sambuc<p><b>built: </b>March 15, 2012</p>
166f4a2713aSLionel Sambuc<p><b>highlights:</b></p>
167f4a2713aSLionel Sambuc
168f4a2713aSLionel Sambuc<ul>
169f4a2713aSLionel Sambuc  <li>Enables experimental interprocedural analysis (within a file), which greatly amplifies the analyzer's ability to find issues.</li>
170f4a2713aSLionel Sambuc  <li>Many bug fixes to the malloc/free checker.</li>
171f4a2713aSLionel Sambuc  <li>Support for new Objective-C NSArray/NSDictionary/NSNumber literals syntax, and Objective-C container subscripting.</li>
172f4a2713aSLionel Sambuc</ul>
173f4a2713aSLionel Sambuc
174f4a2713aSLionel Sambuc<p>NOTE: This build contains new interprocedural analysis that allows the analyzer to find more complicated bugs that span function boundaries.  It may have problems, performance issues, etc.  We'd like to <a href="/filing_bugs.html">hear about them</a>.
175f4a2713aSLionel Sambuc
176f4a2713aSLionel Sambuc<h4 id="checker_261">checker-261</h4>
177f4a2713aSLionel Sambuc
178f4a2713aSLionel Sambuc<p><b>built: </b>February 22, 2012<br>
179f4a2713aSLionel Sambuc<p><b>highlights:</b></p>
180f4a2713aSLionel Sambuc
181f4a2713aSLionel Sambuc<ul>
182f4a2713aSLionel Sambuc  <li>Contains a new experimental malloc/free checker.</li>
183f4a2713aSLionel Sambuc  <li>Better support for projects using ARC.</li>
184f4a2713aSLionel Sambuc  <li>Warns about null pointers passed as arguments to C string functions.</li>
185f4a2713aSLionel Sambuc  <li>Warns about common anti-patterns in 'strncat' size argument, which can lead to buffer overflows.</li>
186f4a2713aSLionel Sambuc  <li>set-xcode-analyzer now supports self-contained Xcode.app (Xcode 4.3 and later).</li>
187f4a2713aSLionel Sambuc  <li>Contains a newer version of the analyzer than Xcode 4.3.</li>
188f4a2713aSLionel Sambuc  <li>Misc. bug fixes and performance work.</li>
189f4a2713aSLionel Sambuc</ul>
190f4a2713aSLionel Sambuc
191f4a2713aSLionel Sambuc<h4 id="checker_260">checker-260</h4>
192f4a2713aSLionel Sambuc
193f4a2713aSLionel Sambuc<p><b>built: </b>January 25, 2012<br>
194f4a2713aSLionel Sambuc<p><b>highlights:</b></p>
195f4a2713aSLionel Sambuc
196f4a2713aSLionel Sambuc<p>This is essentially the same as checker-259, but enables the following <i>experimental</i> checkers (please provide feedback):</p>
197f4a2713aSLionel Sambuc
198f4a2713aSLionel Sambuc<ul>
199f4a2713aSLionel Sambuc  <li>Warns about unsafe uses of CFArrayCreate, CFSetCreate, and CFDictionaryCreate</li>
200f4a2713aSLionel Sambuc  <li>Warns about unsafe uses of getpw, gets, which are sources of buffer overflows</li>
201f4a2713aSLionel Sambuc  <li>Warns about unsafe uses of mktemp and mktemps, which can lead to insecure temporary files</li>
202f4a2713aSLionel Sambuc  <li>Warns about unsafe uses of vfork, which is <a href="https://www.securecoding.cert.org/confluence/display/seccode/POS33-C.+Do+not+use+vfork()">insecure</a> to use</li>
203f4a2713aSLionel Sambuc  <li>Warns about not checking the return values of setuid, setgid, seteuid, setegid, setreuid, setregid (another security issue)</li>
204f4a2713aSLionel Sambuc</ul>
205f4a2713aSLionel Sambuc
206f4a2713aSLionel Sambuc<h4 id="checker_259">checker-259</h4>
207f4a2713aSLionel Sambuc
208f4a2713aSLionel Sambuc<p><b>built: </b>January 25, 2012<br>
209f4a2713aSLionel Sambuc<p><b>highlights:</b></p>
210f4a2713aSLionel Sambuc
211f4a2713aSLionel Sambuc<ul>
212f4a2713aSLionel Sambuc  <li>Contains a newer version of the analyzer than the one shipped in Xcode 4.2.</li>
213f4a2713aSLionel Sambuc  <li>Significant performance optimizations to reduce memory usage of the analyzer.</li>
214f4a2713aSLionel Sambuc  <li>Tweaks to scan-build to have it work more easily with Xcode projects using Clang.</li>
215f4a2713aSLionel Sambuc  <li>Numerous bug fixes to better support code using ARC.</li>
216f4a2713aSLionel Sambuc</ul>
217f4a2713aSLionel Sambuc
218f4a2713aSLionel Sambuc<h4 id="checker_258">checker-258</h4>
219f4a2713aSLionel Sambuc
220f4a2713aSLionel Sambuc<p><b>built: </b>October 13, 2011<br>
221f4a2713aSLionel Sambuc<p><b>highlights:</b></p>
222f4a2713aSLionel Sambuc
223f4a2713aSLionel Sambuc<ul>
224f4a2713aSLionel Sambuc  <li>Contains a newer version of the analyzer than the one shipped in Xcode 4.2.</li>
225f4a2713aSLionel Sambuc  <li>Adds a new security checker for looking at correct uses of the Mac OS KeyChain API.</li>
226f4a2713aSLionel Sambuc  <li>Supports ARC (please file bugs where you see issues)</li>
227f4a2713aSLionel Sambuc  <li>Major under-the-cover changes.  This should result in more precise results in some cases, but this is laying the groundwork for major improvements.  Please file bugs where you see regressions or issues.</li>
228f4a2713aSLionel Sambuc</ul>
229f4a2713aSLionel Sambuc
230f4a2713aSLionel Sambuc<h4 id="checker_257">checker-257</h4>
231f4a2713aSLionel Sambuc
232f4a2713aSLionel Sambuc<p><b>built: </b>May 25, 2011<br>
233f4a2713aSLionel Sambuc<p><b>highlights:</b></p>
234f4a2713aSLionel Sambuc
235f4a2713aSLionel Sambuc<ul>
236f4a2713aSLionel Sambuc  <li>The analyzer is now far more aggressive with checking conformance with Core Foundation conventions.  Any function that returns a CF type must now obey the Core Foundation naming conventions, or use the <a href="/annotations.html#attr_cf_returns_retained">cf_returns_retained</a> or <a href="/annotations.html#attr_cf_returns_not_retained">cf_returns_not_retained</a> annotations.</li>
237f4a2713aSLionel Sambuc  <li>Fixed a serious regression where the analyzer would not analyze Objective-C methods in class extensions.</li>
238f4a2713aSLionel Sambuc  <li>Misc. bug fixes to improve analyzer precision.
239f4a2713aSLionel Sambuc  </li>
240f4a2713aSLionel Sambuc</ul>
241f4a2713aSLionel Sambuc
242f4a2713aSLionel Sambuc<h4 id="checker_256">checker-256</h4>
243f4a2713aSLionel Sambuc
244f4a2713aSLionel Sambuc<p><b>built: </b>April 13, 2011<br>
245f4a2713aSLionel Sambuc<p><b>highlights:</b></p>
246f4a2713aSLionel Sambuc
247f4a2713aSLionel Sambuc<ul>
248f4a2713aSLionel Sambuc  <li>Lots of bug fixes and improvements to analyzer precision (fewer false positives, possibly more bugs found).
249f4a2713aSLionel Sambuc  <li>Introductory analysis support for C++ and Objective-C++.
250f4a2713aSLionel Sambuc</ul>
251f4a2713aSLionel Sambuc
252f4a2713aSLionel Sambuc<p>This build contains basic support for C++ and Objective-C++ that is ready to be tried out
253f4a2713aSLionel Sambuc  by general users.  It is still in its infancy, but establishes a baseline for things to come.  The main hope is that it can find some
254f4a2713aSLionel Sambuc  issues and have a reasonable false positive rate.</p>
255f4a2713aSLionel Sambuc
256f4a2713aSLionel Sambuc<p><b>Please</b> <a href="/filing_bugs.html">file bugs</a> when you see issues of any kind so we can assess
257f4a2713aSLionel Sambuc  where development on C++ analysis support needs to be focused.</p>
258f4a2713aSLionel Sambuc
259f4a2713aSLionel Sambuc<p>To try out C++ analysis support, it should work out of the box using <tt>scan-build</tt>.  If you are using this checker build
260f4a2713aSLionel Sambuc  as a replacement to the analyzer bundled with Xcode, first use the <tt>set-xcode-analyzer</tt> script to <a href="/xcode.html">change Xcode to use
261f4a2713aSLionel Sambuc  your version of the analyzer</a>.  You will then need to modify one configuration file in Xcode to enable C++ analysis support.  This can
262f4a2713aSLionel Sambuc  be done with the following steps:</p>
263f4a2713aSLionel Sambuc
264f4a2713aSLionel Sambuc<ol>
265f4a2713aSLionel Sambuc  <li>Find the clang .xcspec file:
266f4a2713aSLionel Sambuc<pre>$ cd /Developer/Library
267f4a2713aSLionel Sambuc$ find . | grep xcspec | grep Clang
268f4a2713aSLionel Sambuc./Xcode/<b>&lt;SNIP&gt;</b>/Clang LLVM 1.0.xcplugin/Contents/Resources/Clang LLVM 1.0.xcspec
269f4a2713aSLionel Sambuc</pre></li>
270f4a2713aSLionel Sambuc  <li>The exact location of the file may vary depending on your installation of Xcode.  Edit that file, and look for the string &quot;--analyze&quot;:
271f4a2713aSLionel Sambuc<pre>
272f4a2713aSLionel Sambuc  SourceFileOption = "--analyze";
273f4a2713aSLionel Sambuc  FileTypes = (
274f4a2713aSLionel Sambuc      "sourcecode.c.c",
275f4a2713aSLionel Sambuc      "sourcecode.c.objc",
276f4a2713aSLionel Sambuc  );
277f4a2713aSLionel Sambuc  ...
278f4a2713aSLionel Sambuc</pre>
279f4a2713aSLionel Sambuc  Change the &quot;FileTypes&quot; entry to:
280f4a2713aSLionel Sambuc<pre>
281f4a2713aSLionel Sambuc  FileTypes = (
282f4a2713aSLionel Sambuc      "sourcecode.c.c",
283f4a2713aSLionel Sambuc      "sourcecode.c.objc",
284f4a2713aSLionel Sambuc      "sourcecode.cpp.cpp",
285f4a2713aSLionel Sambuc      "sourcecode.cpp.objcpp",
286f4a2713aSLionel Sambuc  );
287f4a2713aSLionel Sambuc</pre></li>
288f4a2713aSLionel Sambuc<li>Restart Xcode.</li>
289f4a2713aSLionel Sambuc</ol>
290f4a2713aSLionel Sambuc
291f4a2713aSLionel Sambuc<h4 id="checker_255">checker-255</h4>
292f4a2713aSLionel Sambuc
293f4a2713aSLionel Sambuc<p><b>built: </b> February 11, 2011<br>
294f4a2713aSLionel Sambuc<p><b>highlights:</b></p>
295f4a2713aSLionel Sambuc
296f4a2713aSLionel Sambuc<ul>
297f4a2713aSLionel Sambuc<li>Mac OS X builds are now Intel <tt>i386</tt> and <tt>x86_64</tt> only (no <tt>ppc</tt> support)</li>
298f4a2713aSLionel Sambuc<li>Turns on new <tt>-init</tt> method checker by default</li>
299f4a2713aSLionel Sambuc<li>Reduces memory usage of analyzer by 10%</li>
300f4a2713aSLionel Sambuc<li>Misc. fixes to reduce false positives on dead stores and idempotent operations.</li>
301f4a2713aSLionel Sambuc</ul>
302f4a2713aSLionel Sambuc
303f4a2713aSLionel Sambuc<h4 id="checker_254">checker-254</h4>
304f4a2713aSLionel Sambuc
305f4a2713aSLionel Sambuc<p><b>built: </b> January 27, 2011<br>
306f4a2713aSLionel Sambuc<p><b>highlights:</b></p>
307f4a2713aSLionel Sambuc
308f4a2713aSLionel Sambuc<ul>
309f4a2713aSLionel Sambuc<li>Introduces new <tt>-init</tt> method checker to check if a super class's init method is properly called.</li>
310f4a2713aSLionel Sambuc<li>Objective-C retain/release checker now reasons about calls to property accessor methods (setter/getter).</li>
311f4a2713aSLionel Sambuc<li>Introduces new attribute <a href="annotations.html#attr_ns_consumes_self">ns_consumes_self</a> to educate the Objective-C retain/release checker about custom &quot;init-like&quot; methods that do not follow the standard Cocoa naming conventions.</li>
312f4a2713aSLionel Sambuc<li>Introduces new attributes <a href="annotations.html#attr_ns_consumed">ns_consumed</a> and <a href="annotations.html#attr_cf_consumed">cf_consumed</a> to educate the Objective-C retain/release checker about methods/functions that decrement the reference count of a parameter.</li>
313f4a2713aSLionel Sambuc</ul>
314f4a2713aSLionel Sambuc
315f4a2713aSLionel Sambuc</div>
316f4a2713aSLionel Sambuc</div>
317f4a2713aSLionel Sambuc</body>
318f4a2713aSLionel Sambuc</html>
319f4a2713aSLionel Sambuc
320