blob: d01c5a7752b649086724860691cdf89bb2e55a9c [file] [log] [blame]
Cedric Venet3d658642009-02-14 20:20:19 +00001<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"
2 "http://www.w3.org/TR/html4/strict.dtd">
3<html>
4<head>
Gabor Greif70f2a042009-02-25 15:22:45 +00005 <META http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
Cedric Venet3d658642009-02-14 20:20:19 +00006 <title>Clang - C++ Support</title>
Gabor Greif70f2a042009-02-25 15:22:45 +00007 <link type="text/css" rel="stylesheet" href="menu.css">
8 <link type="text/css" rel="stylesheet" href="content.css">
Cedric Venet3d658642009-02-14 20:20:19 +00009 <style type="text/css">
Douglas Gregor01cf1122009-05-12 18:36:58 +000010 .na { background-color: #C0C0C0; text-align: center; }
Cedric Venet3d658642009-02-14 20:20:19 +000011 .broken { background-color: #C11B17 }
12 .basic { background-color: #F88017 }
13 .medium { background-color: #FDD017 }
14 .advanced { background-color: #347C17 }
15 .complete { background-color: #00FF00 }
16 </style>
17</head>
18<body>
19
20<!--#include virtual="menu.html.incl"-->
21
22<div id="content">
23
24<!--*************************************************************************-->
25<h1>C++ Support in Clang</h1>
26<!--*************************************************************************-->
Douglas Gregor4c9b68f2009-06-27 19:33:58 +000027<p>Last updated: $Date$</p>
Cedric Venet3d658642009-02-14 20:20:19 +000028
29<p>
30This page tracks the status of C++ support in Clang.<br>
Douglas Gregor33aa5192009-03-20 20:39:57 +000031Currently most of the C++ features are missing; here you can find features that are at least partially supported in Clang. If you are looking to <a href="get_involved.html">get involved with Clang development</a> to help work on support for C++, please also look at our <a href="OpenProjects.html">Open Projects</a> page for some specific ideas.</p>
Cedric Venet3d658642009-02-14 20:20:19 +000032
33
34<!-- Within this table: The colors we're using to color-code our level
35of support for a given section:
36
37 White (no background): not considered/tested.
38 #C11B17: Broken.
39 #F88017: Some useful examples work
40 #FDD017: Many examples work
41 #347C17: Nearly everything works
42 #00FF00 + check mark: Implementation complete!
43 -->
44
45<p>The following table is used to help track our implementation
46 progress toward implementing the complete C++03 standard. We use a
47 simple, somewhat arbitrary color-coding scheme to describe the
48 relative completeness of features by section:</p>
49
50<table width="689" border="1" cellspacing="0">
51 <tr>
52 <th>Not started/not evaluated</th>
53 <th>Not Applicable</th>
54 <th>Broken</th>
55 <th>Some examples work</th>
56 <th>Many examples work</th>
57 <th>Nearly everything works</th>
Douglas Gregor07554022009-05-12 17:55:28 +000058 <th>Complete</th>
59 <th>Complete (with tests for each paragraph)</th>
Cedric Venet3d658642009-02-14 20:20:19 +000060 </tr>
61 <tr>
62 <td></td>
63 <td class="na">N/A</td>
64 <td class="broken"></td>
65 <td class="basic"></td>
66 <td class="medium"></td>
67 <td class="advanced"></td>
Douglas Gregor07554022009-05-12 17:55:28 +000068 <td class="complete"></td>
Cedric Venet3d658642009-02-14 20:20:19 +000069 <td class="complete" align="center">&#x2713;</td>
70 </tr>
71</table>
72
73<p>A feature is "complete" when the appropriate Clang component (Parse, AST,
74Sema, CodeGen) implements the behavior described in all of the
75paragraphs in the relevant C++ standard. Note that many C++ features are
76actually described in several different sections within the standard. The major components are:</p>
77
78<dl>
79 <dt>Parse</dt>
80 <dd>Clang is able to parse the grammar of this feature (or the grammar described by this section), but does not necessarily do anything with the parsed result. Use Clang's <code>-fsyntax-only</code> option to parse C++ programs.</dd>
81
82 <dt>AST</dt>
83 <dd>Clang builds an abstract syntax tree (AST) for the feature, but does not necessarily perform any type-checking. Use Clang's <code>-ast-print</code> option to print the resulting ASTs.</dd>
84
85 <dt>Sema</dt>
86 <dd>Clang parses and type-checks this feature and provides a well-formed AST annotated with types. Use Clang's <code>-fsyntax-only</code> to type-check code.</dd>
87
88 <dt>CodeGen</dt>
89 <dd>Clang parses, type-checks, and generates code for this feature, allowing one to compile and execute programs.</dd>
90</dl>
91
92<p>Updates to this table are welcome! Since Clang already supports
93much of C, and therefore much C++, many of the currently-white cells
94could be filled in. If you wish to do so, please compare Clang's
95implementation against the C++ standard and provide a patch that
96updates the table accordingly. Tests for the various features are also
97welcome!</p>
98
99<table width="689" border="1" cellspacing="0">
100 <tr>
101 <th>Section</th>
102 <th>Parse</th>
103 <th>AST</th>
104 <th>Sema</th>
105 <th>CodeGen</th>
106 <th>Notes</th>
107 </tr>
108<tr>
109 <td>2 [lex]</td>
Douglas Gregor07554022009-05-12 17:55:28 +0000110 <td class="complete" align="center"></td>
Cedric Venet3d658642009-02-14 20:20:19 +0000111 <td class="na">N/A</td>
112 <td class="na">N/A</td>
113 <td class="na">N/A</td>
114 <td></td>
115</tr>
116<tr>
117 <td>&nbsp;&nbsp;2.1 [lex.phases]</td>
118 <td class="advanced" align="center"></td>
119 <td class="na">N/A</td>
120 <td class="na">N/A</td>
121 <td class="na">N/A</td>
122 <td>Extended characters aren't handled.</td>
123</tr>
124<tr>
125 <td>&nbsp;&nbsp;2.2 [lex.charset]</td>
126 <td class="basic"></td>
127 <td class="na">N/A</td>
128 <td class="na">N/A</td>
129 <td class="na">N/A</td>
130 <td>No support for extended characters.</td>
131</tr>
132<tr>
133 <td>&nbsp;&nbsp;2.3 [lex.trigraph]</td>
Douglas Gregor07554022009-05-12 17:55:28 +0000134 <td class="complete" align="center"></td>
Cedric Venet3d658642009-02-14 20:20:19 +0000135 <td class="na">N/A</td>
136 <td class="na">N/A</td>
137 <td class="na">N/A</td>
138 <td></td>
139</tr>
140<tr>
141 <td>&nbsp;&nbsp;2.4 [lex.pptoken]</td>
Douglas Gregor07554022009-05-12 17:55:28 +0000142 <td class="complete" align="center"></td>
Cedric Venet3d658642009-02-14 20:20:19 +0000143 <td class="na">N/A</td>
144 <td class="na">N/A</td>
145 <td class="na">N/A</td>
146 <td></td>
147</tr>
148<tr>
149 <td>&nbsp;&nbsp;2.5 [lex.digraph]</td>
Douglas Gregor07554022009-05-12 17:55:28 +0000150 <td class="complete" align="center"></td>
Cedric Venet3d658642009-02-14 20:20:19 +0000151 <td class="na">N/A</td>
152 <td class="na">N/A</td>
153 <td class="na">N/A</td>
154 <td></td>
155</tr>
156<tr>
157 <td>&nbsp;&nbsp;2.6 [lex.token]</td>
Douglas Gregor07554022009-05-12 17:55:28 +0000158 <td class="complete" align="center"></td>
Cedric Venet3d658642009-02-14 20:20:19 +0000159 <td class="na">N/A</td>
160 <td class="na">N/A</td>
161 <td class="na">N/A</td>
162 <td></td>
163</tr>
164<tr>
165 <td>&nbsp;&nbsp;2.7 [lex.comment]</td>
166 <td class="advanced" align="center"></td>
167 <td></td>
168 <td class="na">N/A</td>
169 <td class="na">N/A</td>
170 <td>NDR "form feed or vtab in comment" is not diagnosed. No AST representation of comments.</td>
171</tr>
172<tr>
173 <td>&nbsp;&nbsp;2.8 [lex.header]</td>
Douglas Gregor07554022009-05-12 17:55:28 +0000174 <td class="complete" align="center"></td>
Cedric Venet3d658642009-02-14 20:20:19 +0000175 <td class="na">N/A</td>
176 <td class="na">N/A</td>
177 <td class="na">N/A</td>
178 <td></td>
179</tr>
180<tr>
181 <td>&nbsp;&nbsp;2.9 [lex.ppnumber]</td>
Douglas Gregor07554022009-05-12 17:55:28 +0000182 <td class="complete" align="center"></td>
Cedric Venet3d658642009-02-14 20:20:19 +0000183 <td class="na">N/A</td>
184 <td class="na">N/A</td>
185 <td class="na">N/A</td>
186 <td></td>
187</tr>
188<tr>
189 <td>&nbsp;&nbsp;2.10 [lex.name]</td>
190 <td class="advanced" align="center"></td>
191 <td class="na">N/A</td>
192 <td class="na">N/A</td>
193 <td class="na">N/A</td>
194 <td>No support for extended characters</td>
195</tr>
196<tr>
197 <td>&nbsp;&nbsp;2.11 [lex.key]</td>
Douglas Gregor07554022009-05-12 17:55:28 +0000198 <td class="complete" align="center"></td>
Cedric Venet3d658642009-02-14 20:20:19 +0000199 <td class="na">N/A</td>
200 <td class="na">N/A</td>
201 <td class="na">N/A</td>
202 <td></td>
203</tr>
204<tr>
205 <td>&nbsp;&nbsp;2.12 [lex.operators]</td>
Douglas Gregor07554022009-05-12 17:55:28 +0000206 <td class="complete" align="center"></td>
Cedric Venet3d658642009-02-14 20:20:19 +0000207 <td class="na">N/A</td>
208 <td class="na">N/A</td>
209 <td class="na">N/A</td>
210 <td></td>
211</tr>
212<tr>
213 <td>&nbsp;&nbsp;2.13 [lex.literal]</td>
Douglas Gregor07554022009-05-12 17:55:28 +0000214 <td class="complete" align="center"></td>
Cedric Venet3d658642009-02-14 20:20:19 +0000215 <td class="na">N/A</td>
216 <td class="na">N/A</td>
217 <td class="na">N/A</td>
218 <td></td>
219</tr>
220<tr>
221 <td>&nbsp;&nbsp;&nbsp;&nbsp;2.13.1 [lex.icon]</td>
Douglas Gregor07554022009-05-12 17:55:28 +0000222 <td class="complete" align="center"></td>
Cedric Venet3d658642009-02-14 20:20:19 +0000223 <td class="na">N/A</td>
224 <td class="na">N/A</td>
225 <td class="na">N/A</td>
226 <td></td>
227</tr>
228<tr>
229 <td>&nbsp;&nbsp;&nbsp;&nbsp;2.13.2 [lex.ccon]</td>
230 <td class="advanced" align="center"></td>
231 <td class="na">N/A</td>
232 <td class="na">N/A</td>
233 <td class="na">N/A</td>
234 <td>Poor support for extended characters</td>
235</tr>
236<tr>
237 <td>&nbsp;&nbsp;&nbsp;&nbsp;2.13.3 [lex.fcon]</td>
Douglas Gregor07554022009-05-12 17:55:28 +0000238 <td class="complete" align="center"></td>
Cedric Venet3d658642009-02-14 20:20:19 +0000239 <td class="na">N/A</td>
240 <td class="na">N/A</td>
241 <td class="na">N/A</td>
242 <td></td>
243</tr>
244<tr>
245 <td>&nbsp;&nbsp;&nbsp;&nbsp;2.13.4 [lex.string]</td>
246 <td class="advanced" align="center"></td>
247 <td class="na">N/A</td>
248 <td class="na">N/A</td>
249 <td class="na">N/A</td>
250 <td>Poor support for extended characters</td>
251</tr>
252<tr>
253 <td>&nbsp;&nbsp;&nbsp;&nbsp;2.13.5 [lex.bool]</td>
Douglas Gregor07554022009-05-12 17:55:28 +0000254 <td class="complete" align="center"></td>
Cedric Venet3d658642009-02-14 20:20:19 +0000255 <td class="na">N/A</td>
256 <td class="na">N/A</td>
257 <td class="na">N/A</td>
258 <td></td>
259</tr>
260<tr>
261<td>3 [basic]</td>
262 <td class="na">N/A</td>
263 <td class="na">N/A</td>
264 <td class="na">N/A</td>
265 <td class="na">N/A</td>
266 <td></td>
267</tr>
268<tr>
269 <td>&nbsp;&nbsp;3.1 [basic.def]</td>
270 <td></td>
271 <td></td>
272 <td></td>
273 <td class="na">N/A</td>
274 <td></td>
275</tr>
276<tr>
277 <td>&nbsp;&nbsp;3.2 [basic.def.odr]</td>
278 <td></td>
279 <td></td>
280 <td></td>
281 <td></td>
282 <td></td>
283</tr>
284<tr>
285 <td>&nbsp;&nbsp;3.3 [basic.scope]</td>
286 <td class="na">N/A</td>
287 <td class="na">N/A</td>
Douglas Gregor07554022009-05-12 17:55:28 +0000288 <td class="complete" align="center"></td>
Cedric Venet3d658642009-02-14 20:20:19 +0000289 <td class="na">N/A</td>
290 <td></td>
291</tr>
292<tr>
293 <td>&nbsp;&nbsp;&nbsp;&nbsp;3.3.1 [basic.scope.pdecl]</td>
294 <td class="na">N/A</td>
295 <td class="na">N/A</td>
Douglas Gregor07554022009-05-12 17:55:28 +0000296 <td class="complete" align="center"></td>
Cedric Venet3d658642009-02-14 20:20:19 +0000297 <td class="na">N/A</td>
Sebastian Redl0393e282009-05-10 20:06:11 +0000298 <td></td>
Cedric Venet3d658642009-02-14 20:20:19 +0000299</tr>
300<tr>
301 <td>&nbsp;&nbsp;&nbsp;&nbsp;3.3.2 [basic.scope.local]</td>
302 <td class="na">N/A</td>
303 <td class="na">N/A</td>
Douglas Gregor07554022009-05-12 17:55:28 +0000304 <td class="complete" align="center"></td>
Cedric Venet3d658642009-02-14 20:20:19 +0000305 <td class="na">N/A</td>
Sebastian Redl0393e282009-05-10 20:06:11 +0000306 <td></td>
Cedric Venet3d658642009-02-14 20:20:19 +0000307</tr>
308<tr>
309 <td>&nbsp;&nbsp;&nbsp;&nbsp;3.3.3 [basic.scope.proto]</td>
310 <td class="na">N/A</td>
311 <td class="na">N/A</td>
Douglas Gregor07554022009-05-12 17:55:28 +0000312 <td class="complete" align="center"></td>
Cedric Venet3d658642009-02-14 20:20:19 +0000313 <td class="na">N/A</td>
314 <td></td>
315</tr>
316<tr>
317 <td>&nbsp;&nbsp;&nbsp;&nbsp;3.3.4 [basic.funscope]</td>
318 <td class="na">N/A</td>
319 <td class="na">N/A</td>
Douglas Gregor07554022009-05-12 17:55:28 +0000320 <td class="complete" align="center"></td>
Cedric Venet3d658642009-02-14 20:20:19 +0000321 <td class="na">N/A</td>
322 <td></td>
323</tr>
324<tr><td>&nbsp;&nbsp;&nbsp;&nbsp;3.3.5 [basic.scope.namespace]</td><td></td><td></td><td></td><td></td><td></td></tr>
325<tr><td>&nbsp;&nbsp;&nbsp;&nbsp;3.3.6 [basic.scope.class]</td><td></td><td></td><td></td><td></td><td></td></tr>
326<tr>
327 <td>&nbsp;&nbsp;&nbsp;&nbsp;3.3.7 [basic.scope.hiding]</td>
328 <td class="na">N/A</td>
329 <td class="na">N/A</td>
Douglas Gregor07554022009-05-12 17:55:28 +0000330 <td class="complete" align="center"></td>
Cedric Venet3d658642009-02-14 20:20:19 +0000331 <td class="na">N/A</td>
332 <td></td>
333</tr>
334<tr>
335 <td>&nbsp;&nbsp;3.4 [basic.lookup]</td>
336 <td class="na">N/A</td>
337 <td class="na">N/A</td>
Douglas Gregor07554022009-05-12 17:55:28 +0000338 <td class="complete" align="center"></td>
Cedric Venet3d658642009-02-14 20:20:19 +0000339 <td class="na">N/A</td>
340 <td></td>
341</tr>
342<tr>
343 <td>&nbsp;&nbsp;&nbsp;&nbsp;3.4.1 [basic.lookup.unqual]</td>
344 <td class="na">N/A</td>
345 <td class="na">N/A</td>
346 <td class="medium"></td>
347 <td class="na">N/A</td>
348 <td>Many cases beyond simple global and function-local lookup don't work</td>
349</tr>
350<tr>
351 <td>&nbsp;&nbsp;&nbsp;&nbsp;3.4.2 [basic.lookup.argdep]</td>
352 <td class="na">N/A</td>
353 <td class="advanced" align="center"></td>
354 <td class="advanced" align="center"></td>
355 <td class="na">N/A</td>
Douglas Gregor69be8d62009-07-08 07:51:57 +0000356 <td>Missing support for friend functions.</td>
Cedric Venet3d658642009-02-14 20:20:19 +0000357</tr>
358<tr>
359 <td>&nbsp;&nbsp;&nbsp;&nbsp;3.4.3 [basic.lookup.qual]</td>
360 <td class="na">N/A</td>
361 <td class="na">N/A</td>
362 <td class="advanced"></td>
363 <td class="na">N/A</td>
364 <td></td>
365</tr>
366<tr>
367 <td>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;3.4.3.1 [class.qual]</td>
368 <td class="na">N/A</td>
369 <td class="na">N/A</td>
370 <td class="advanced"></td>
371 <td class="na">N/A</td>
372 <td></td>
373</tr>
374<tr>
375 <td>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;3.4.3.2 [namespace.qual]</td>
376 <td class="na">N/A</td>
377 <td class="na">N/A</td>
378 <td class="advanced"></td>
379 <td class="na">N/A</td>
380 <td></td>
381</tr>
382<tr><td>&nbsp;&nbsp;&nbsp;&nbsp;3.4.4 [basic.lookup.elab]</td><td></td><td></td><td></td><td></td><td></td></tr>
383<tr><td>&nbsp;&nbsp;&nbsp;&nbsp;3.4.5 [basic.lookup.classref]</td><td></td><td></td><td></td><td></td><td></td></tr>
384<tr><td>&nbsp;&nbsp;&nbsp;&nbsp;3.4.6 [basic.lookup.udir]</td><td></td><td></td><td></td><td></td><td></td></tr>
385<tr><td>&nbsp;&nbsp;3.5 [basic.link]</td><td></td><td></td><td></td><td></td><td></td></tr>
386<tr><td>&nbsp;&nbsp;3.6 [basic.start]</td><td></td><td></td><td></td><td></td><td></td></tr>
387<tr><td>&nbsp;&nbsp;&nbsp;&nbsp;3.6.1 [basic.start.main]</td><td></td><td></td><td></td><td></td><td></td></tr>
388<tr><td>&nbsp;&nbsp;&nbsp;&nbsp;3.6.2 [basic.start.init]</td><td></td><td></td><td></td><td></td><td></td></tr>
389<tr><td>&nbsp;&nbsp;&nbsp;&nbsp;3.6.3 [basic.start.term]</td><td></td><td></td><td></td><td></td><td></td></tr>
390<tr><td>&nbsp;&nbsp;3.7 [basic.stc]</td><td></td><td></td><td></td><td></td><td></td></tr>
391<tr><td>&nbsp;&nbsp;&nbsp;&nbsp;3.7.1 [basic.stc.static]</td><td></td><td></td><td></td><td></td><td></td></tr>
392<tr><td>&nbsp;&nbsp;&nbsp;&nbsp;3.7.2 [basic.stc.auto]</td><td></td><td></td><td></td><td></td><td></td></tr>
393<tr><td>&nbsp;&nbsp;&nbsp;&nbsp;3.7.3 [basic.stc.dynamic]</td><td></td><td></td><td></td><td></td><td></td></tr>
394<tr><td>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;3.7.3.1 [basic.stc.dynamic.allocation]</td><td></td><td></td><td></td><td></td><td></td></tr>
395<tr><td>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;3.7.3.2 [basic.stc.dynamic.deallocation]</td><td></td><td></td><td></td><td></td><td></td></tr>
396<tr><td>&nbsp;&nbsp;&nbsp;&nbsp;3.7.4 [basic.stc.inherit]</td><td></td><td></td><td></td><td></td><td></td></tr>
397<tr><td>&nbsp;&nbsp;3.8 [basic.life]</td><td></td><td></td><td></td><td></td><td></td></tr>
398<tr><td>&nbsp;&nbsp;3.9 [basic.types]</td><td></td><td></td><td></td><td></td><td></td></tr>
399<tr><td>&nbsp;&nbsp;&nbsp;&nbsp;3.9.1 [basic.fundamental]</td><td></td><td></td><td></td><td></td><td></td></tr>
400<tr><td>&nbsp;&nbsp;&nbsp;&nbsp;3.9.2 [basic.compound]</td><td></td><td></td><td></td><td></td><td></td></tr>
401<tr><td>&nbsp;&nbsp;&nbsp;&nbsp;3.9.3 [basic.type.qualifier]</td><td></td><td></td><td></td><td></td><td></td></tr>
402<tr><td>&nbsp;&nbsp;3.10 [basic.lval]</td><td></td><td></td><td></td><td></td><td></td></tr>
403<tr>
404 <td>4 [conv]</td>
Douglas Gregor07554022009-05-12 17:55:28 +0000405 <td class="complete" align="center"></td>
406 <td class="complete" align="center"></td>
407 <td class="complete" align="center"></td>
Cedric Venet3d658642009-02-14 20:20:19 +0000408 <td></td>
409 <td></td>
410</tr>
411<tr>
412 <td>&nbsp;&nbsp;4.1 [conv.lval]</td>
Douglas Gregor07554022009-05-12 17:55:28 +0000413 <td class="complete" align="center"></td>
414 <td class="complete" align="center"></td>
Cedric Venet3d658642009-02-14 20:20:19 +0000415 <td class="advanced" align="center"></td> <!-- p2: sizeof -->
416 <td></td>
417 <td></td>
418</tr>
419<tr>
420 <td>&nbsp;&nbsp;4.2 [conv.array]</td>
Douglas Gregor07554022009-05-12 17:55:28 +0000421 <td class="complete" align="center"></td>
422 <td class="complete" align="center"></td>
423 <td class="complete" align="center"></td>
Cedric Venet3d658642009-02-14 20:20:19 +0000424 <td></td>
425 <td></td>
426</tr>
427<tr>
428 <td>&nbsp;&nbsp;4.3 [conv.func]</td>
Douglas Gregor07554022009-05-12 17:55:28 +0000429 <td class="complete" align="center"></td>
430 <td class="complete" align="center"></td>
Cedric Venet3d658642009-02-14 20:20:19 +0000431 <td class="advanced" align="center"></td>
432 <td></td>
433 <td></td>
434</tr>
435<tr>
436 <td>&nbsp;&nbsp;4.4 [conv.qual]</td>
Douglas Gregor07554022009-05-12 17:55:28 +0000437 <td class="complete" align="center"></td>
438 <td class="complete" align="center"></td>
439 <td class="complete" align="center"></td>
Cedric Venet3d658642009-02-14 20:20:19 +0000440 <td></td>
441 <td></td>
442</tr>
443<tr>
444 <td>&nbsp;&nbsp;4.5 [conv.prom]</td>
Douglas Gregor07554022009-05-12 17:55:28 +0000445 <td class="complete" align="center"></td>
446 <td class="complete" align="center"></td>
447 <td class="complete" align="center"></td>
Cedric Venet3d658642009-02-14 20:20:19 +0000448 <td></td>
449 <td></td>
450</tr>
451<tr>
452 <td>&nbsp;&nbsp;4.6 [conv.fpprom]</td>
Douglas Gregor07554022009-05-12 17:55:28 +0000453 <td class="complete" align="center"></td>
454 <td class="complete" align="center"></td>
455 <td class="complete" align="center"></td>
Cedric Venet3d658642009-02-14 20:20:19 +0000456 <td></td>
457 <td></td>
458</tr>
459<tr>
460 <td>&nbsp;&nbsp;4.7 [conv.integral]</td>
Douglas Gregor07554022009-05-12 17:55:28 +0000461 <td class="complete" align="center"></td>
462 <td class="complete" align="center"></td>
463 <td class="complete" align="center"></td>
Cedric Venet3d658642009-02-14 20:20:19 +0000464 <td></td>
465 <td></td>
466</tr>
467<tr>
468 <td>&nbsp;&nbsp;4.8 [conv.double]</td>
Douglas Gregor07554022009-05-12 17:55:28 +0000469 <td class="complete" align="center"></td>
470 <td class="complete" align="center"></td>
471 <td class="complete" align="center"></td>
Cedric Venet3d658642009-02-14 20:20:19 +0000472 <td></td>
473 <td></td>
474</tr>
475<tr>
476 <td>&nbsp;&nbsp;4.9 [conv.fpint]</td>
Douglas Gregor07554022009-05-12 17:55:28 +0000477 <td class="complete" align="center"></td>
478 <td class="complete" align="center"></td>
479 <td class="complete" align="center"></td>
Cedric Venet3d658642009-02-14 20:20:19 +0000480 <td></td>
481 <td></td>
482</tr>
483<tr>
484 <td>&nbsp;&nbsp;4.10 [conv.ptr]</td>
Douglas Gregor07554022009-05-12 17:55:28 +0000485 <td class="complete" align="center"></td>
486 <td class="complete" align="center"></td>
487 <td class="complete" align="center"></td>
Cedric Venet3d658642009-02-14 20:20:19 +0000488 <td></td>
489 <td></td>
490</tr>
491<tr>
492 <td>&nbsp;&nbsp;4.11 [conv.mem]</td>
Douglas Gregor07554022009-05-12 17:55:28 +0000493 <td class="complete" align="center"></td>
494 <td class="complete" align="center"></td>
495 <td class="complete" align="center"></td>
Cedric Venet3d658642009-02-14 20:20:19 +0000496 <td></td>
497 <td></td>
498</tr>
499<tr>
500 <td>&nbsp;&nbsp;4.12 [conv.bool]</td>
Douglas Gregor07554022009-05-12 17:55:28 +0000501 <td class="complete" align="center"></td>
502 <td class="complete" align="center"></td>
503 <td class="complete" align="center"></td>
Cedric Venet3d658642009-02-14 20:20:19 +0000504 <td></td>
505 <td></td>
506</tr>
507<tr>
508 <td>5 [expr]</td>
509 <td class="na">N/A</td>
510 <td class="na">N/A</td>
Douglas Gregor07554022009-05-12 17:55:28 +0000511 <td class="complete" align="center"></td>
Cedric Venet3d658642009-02-14 20:20:19 +0000512 <td></td>
513 <td></td>
514</tr>
515<tr>
516 <td>&nbsp;&nbsp;5.1 [expr.prim]</td>
517 <td class="medium" align="center"></td>
518 <td class="medium" align="center"></td>
519 <td class="medium" align="center"></td>
520 <td></td>
521 <td>template-ids are not supported, name lookup is not complete</td>
522</tr>
523<tr><td>&nbsp;&nbsp;5.2 [expr.post]</td><td></td><td></td><td></td><td></td><td></td></tr>
524<tr>
525 <td>&nbsp;&nbsp;&nbsp;&nbsp;5.2.1 [expr.sub]</td>
Douglas Gregor07554022009-05-12 17:55:28 +0000526 <td class="complete" align="center"></td>
527 <td class="complete" align="center"></td>
528 <td class="complete" align="center"></td>
Cedric Venet3d658642009-02-14 20:20:19 +0000529 <td></td>
530 <td></td>
531</tr>
532<tr>
533 <td>&nbsp;&nbsp;&nbsp;&nbsp;5.2.2 [expr.call]</td>
Douglas Gregor07554022009-05-12 17:55:28 +0000534 <td class="complete" align="center"></td>
535 <td class="complete" align="center"></td>
Douglas Gregor35adb752009-03-12 00:09:31 +0000536 <td class="advanced" align="center"></td>
Cedric Venet3d658642009-02-14 20:20:19 +0000537 <td></td>
Douglas Gregor35adb752009-03-12 00:09:31 +0000538 <td></td>
Cedric Venet3d658642009-02-14 20:20:19 +0000539</tr>
540<tr>
541 <td>&nbsp;&nbsp;&nbsp;&nbsp;5.2.3 [expr.type.conv]</td>
Douglas Gregor07554022009-05-12 17:55:28 +0000542 <td class="complete" align="center"></td>
Sebastian Redl9cc11e72009-07-25 15:41:38 +0000543 <td class="medium" align="center"></td>
544 <td class="advanced"></td>
Cedric Venet3d658642009-02-14 20:20:19 +0000545 <td></td>
Sebastian Redl9cc11e72009-07-25 15:41:38 +0000546 <td>Allows some invalid pointer conversions, AST has little information</td>
Cedric Venet3d658642009-02-14 20:20:19 +0000547</tr>
548<tr>
549 <td>&nbsp;&nbsp;&nbsp;&nbsp;5.2.4 [expr.pseudo]</td>
550 <td class="broken"></td>
551 <td class="broken"></td>
552 <td class="broken"></td>
553 <td></td>
554 <td></td>
555</tr>
556<tr>
557 <td>&nbsp;&nbsp;&nbsp;&nbsp;5.2.5 [expr.ref]</td>
Douglas Gregor07554022009-05-12 17:55:28 +0000558 <td class="complete" align="center"></td>
Cedric Venet3d658642009-02-14 20:20:19 +0000559 <td class="medium"></td>
560 <td class="medium"></td>
561 <td></td>
562 <td>Cannot look up operator names, qualified-ids, or names in base classes</td>
563</tr>
564<tr>
565 <td>&nbsp;&nbsp;&nbsp;&nbsp;5.2.6 [expr.post.incr]</td>
Douglas Gregor07554022009-05-12 17:55:28 +0000566 <td class="complete" align="center"></td>
567 <td class="complete" align="center"></td>
568 <td class="complete" align="center"></td>
Cedric Venet3d658642009-02-14 20:20:19 +0000569 <td></td>
570 <td></td>
571</tr>
572<tr>
573 <td>&nbsp;&nbsp;&nbsp;&nbsp;5.2.7 [expr.dynamic.cast]</td>
Douglas Gregor07554022009-05-12 17:55:28 +0000574 <td class="complete" align="center"></td>
575 <td class="complete" align="center"></td>
576 <td class="complete" align="center"></td>
Cedric Venet3d658642009-02-14 20:20:19 +0000577 <td></td>
578 <td></td>
579</tr>
580<tr>
581 <td>&nbsp;&nbsp;&nbsp;&nbsp;5.2.8 [expr.typeid]</td>
Douglas Gregor07554022009-05-12 17:55:28 +0000582 <td class="complete" align="center"></td>
583 <td class="complete" align="center"></td>
584 <td class="complete" align="center"></td>
Cedric Venet3d658642009-02-14 20:20:19 +0000585 <td></td>
586 <td></td>
587</tr>
588<tr>
589 <td>&nbsp;&nbsp;&nbsp;&nbsp;5.2.9 [expr.static.cast]</td>
Douglas Gregor07554022009-05-12 17:55:28 +0000590 <td class="complete" align="center"></td>
Sebastian Redl9cc11e72009-07-25 15:41:38 +0000591 <td class="medium" align="center"></td>
Cedric Venet3d658642009-02-14 20:20:19 +0000592 <td class="advanced" align="center"></td>
593 <td></td>
Sebastian Redl9cc11e72009-07-25 15:41:38 +0000594 <td>Allows some invalid pointer conversions, AST has little information</td>
Cedric Venet3d658642009-02-14 20:20:19 +0000595</tr>
596<tr>
597 <td>&nbsp;&nbsp;&nbsp;&nbsp;5.2.10 [expr.reinterpret.cast]</td>
Douglas Gregor07554022009-05-12 17:55:28 +0000598 <td class="complete" align="center"></td>
599 <td class="complete" align="center"></td>
600 <td class="complete" align="center"></td>
Cedric Venet3d658642009-02-14 20:20:19 +0000601 <td></td>
602 <td></td>
603</tr>
604<tr>
605 <td>&nbsp;&nbsp;&nbsp;&nbsp;5.2.11 [expr.const.cast]</td>
Douglas Gregor07554022009-05-12 17:55:28 +0000606 <td class="complete" align="center"></td>
607 <td class="complete" align="center"></td>
608 <td class="complete" align="center"></td>
Cedric Venet3d658642009-02-14 20:20:19 +0000609 <td></td>
610 <td></td>
611</tr>
612<tr><td>&nbsp;&nbsp;5.3 [expr.unary]</td><td></td><td></td><td></td><td></td><td></td></tr>
613<tr><td>&nbsp;&nbsp;&nbsp;&nbsp;5.3.1 [expr.unary.op]</td><td></td><td></td><td></td><td></td><td></td></tr>
614<tr>
615 <td>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;5.3.1p1 Unary *</td>
Douglas Gregor07554022009-05-12 17:55:28 +0000616 <td class="complete" align="center"></td>
617 <td class="complete" align="center"></td>
618 <td class="complete" align="center"></td>
Cedric Venet3d658642009-02-14 20:20:19 +0000619 <td></td>
620 <td></td>
621</tr>
622<tr>
623 <td>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;5.3.1p2-5 Unary &amp;</td>
Douglas Gregor07554022009-05-12 17:55:28 +0000624 <td class="complete" align="center"></td>
625 <td class="complete" align="center"></td>
626 <td class="complete" align="center"></td>
Cedric Venet3d658642009-02-14 20:20:19 +0000627 <td></td>
628 <td></td>
629</tr>
630<tr>
631 <td>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;5.3.1p6 Unary +</td>
Douglas Gregor07554022009-05-12 17:55:28 +0000632 <td class="complete" align="center"></td>
633 <td class="complete" align="center"></td>
634 <td class="complete" align="center"></td>
Cedric Venet3d658642009-02-14 20:20:19 +0000635 <td></td>
636 <td></td>
637</tr>
638<tr>
639 <td>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;5.3.1p7 Unary -</td>
Douglas Gregor07554022009-05-12 17:55:28 +0000640 <td class="complete" align="center"></td>
641 <td class="complete" align="center"></td>
642 <td class="complete" align="center"></td>
Cedric Venet3d658642009-02-14 20:20:19 +0000643 <td></td>
644 <td></td>
645</tr>
646<tr>
647 <td>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;5.3.1p8 Unary !</td>
Douglas Gregor07554022009-05-12 17:55:28 +0000648 <td class="complete" align="center"></td>
649 <td class="complete" align="center"></td>
650 <td class="complete" align="center"></td>
Cedric Venet3d658642009-02-14 20:20:19 +0000651 <td></td>
652 <td></td>
653</tr>
654<tr>
655 <td>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;5.3.1p9 Unary ~</td>
Douglas Gregor07554022009-05-12 17:55:28 +0000656 <td class="complete" align="center"></td>
657 <td class="complete" align="center"></td>
658 <td class="complete" align="center"></td>
Cedric Venet3d658642009-02-14 20:20:19 +0000659 <td></td>
660 <td></td>
661</tr>
662<tr>
663 <td>&nbsp;&nbsp;&nbsp;&nbsp;5.3.2 [expr.pre.incr]</td>
Douglas Gregor07554022009-05-12 17:55:28 +0000664 <td class="complete" align="center"></td>
665 <td class="complete" align="center"></td>
666 <td class="complete" align="center"></td>
Cedric Venet3d658642009-02-14 20:20:19 +0000667 <td></td>
668 <td></td>
669</tr>
670<tr>
671 <td>&nbsp;&nbsp;&nbsp;&nbsp;5.3.3 [expr.sizeof]</td>
Douglas Gregor07554022009-05-12 17:55:28 +0000672 <td class="complete" align="center"></td>
673 <td class="complete" align="center"></td>
674 <td class="complete" align="center"></td>
Cedric Venet3d658642009-02-14 20:20:19 +0000675 <td></td>
676 <td></td>
677</tr>
678<tr>
679 <td>&nbsp;&nbsp;&nbsp;&nbsp;5.3.4 [expr.new]</td>
Douglas Gregor07554022009-05-12 17:55:28 +0000680 <td class="complete" align="center"></td>
681 <td class="complete" align="center"></td>
Cedric Venet3d658642009-02-14 20:20:19 +0000682 <td class="advanced" align="center"></td>
683 <td></td>
684 <td>operator delete is not looked up, initialization not quite correct</td>
685</tr>
686<tr>
687 <td>&nbsp;&nbsp;&nbsp;&nbsp;5.3.5 [expr.delete]</td>
Douglas Gregor07554022009-05-12 17:55:28 +0000688 <td class="complete" align="center"></td>
689 <td class="complete" align="center"></td>
690 <td class="complete" align="center"></td>
Cedric Venet3d658642009-02-14 20:20:19 +0000691 <td></td>
692 <td></td>
693</tr>
694<tr>
695 <td>&nbsp;&nbsp;5.4 [expr.cast]</td>
Douglas Gregor07554022009-05-12 17:55:28 +0000696 <td class="complete" align="center"></td>
Sebastian Redl9cc11e72009-07-25 15:41:38 +0000697 <td class="medium" align="center"></td>
698 <td class="advanced"></td>
Cedric Venet3d658642009-02-14 20:20:19 +0000699 <td></td>
Sebastian Redl9cc11e72009-07-25 15:41:38 +0000700 <td>Allows some invalid pointer conversions, AST has little information</td>
Cedric Venet3d658642009-02-14 20:20:19 +0000701</tr>
702<tr>
703 <td>&nbsp;&nbsp;5.5 [expr.mptr.oper]</td>
Douglas Gregor07554022009-05-12 17:55:28 +0000704 <td class="complete" align="center"></td>
Cedric Venet3d658642009-02-14 20:20:19 +0000705 <td class="advanced"></td>
706 <td class="advanced"></td>
707 <td></td>
708 <td>Dereferenced member function pointers have the wrong type.</td>
709</tr>
710<tr>
711 <td>&nbsp;&nbsp;5.6 [expr.mul]</td>
Douglas Gregor07554022009-05-12 17:55:28 +0000712 <td class="complete" align="center"></td>
713 <td class="complete" align="center"></td>
714 <td class="complete" align="center"></td>
Cedric Venet3d658642009-02-14 20:20:19 +0000715 <td></td>
716 <td></td>
717</tr>
718<tr>
719 <td>&nbsp;&nbsp;5.7 [expr.add]</td>
Douglas Gregor07554022009-05-12 17:55:28 +0000720 <td class="complete" align="center"></td>
721 <td class="complete" align="center"></td>
722 <td class="complete" align="center"></td>
Cedric Venet3d658642009-02-14 20:20:19 +0000723 <td></td>
724 <td></td>
725</tr>
726<tr>
727 <td>&nbsp;&nbsp;5.8 [expr.shift]</td>
Douglas Gregor07554022009-05-12 17:55:28 +0000728 <td class="complete" align="center"></td>
729 <td class="complete" align="center"></td>
730 <td class="complete" align="center"></td>
Cedric Venet3d658642009-02-14 20:20:19 +0000731 <td></td>
732 <td></td>
733</tr>
734<tr>
735 <td>&nbsp;&nbsp;5.9 [expr.rel]</td>
Douglas Gregor07554022009-05-12 17:55:28 +0000736 <td class="complete" align="center"></td>
737 <td class="complete" align="center"></td>
738 <td class="complete" align="center"></td>
Cedric Venet3d658642009-02-14 20:20:19 +0000739 <td></td>
740 <td></td>
741</tr>
742<tr>
743 <td>&nbsp;&nbsp;5.10 [expr.eq]</td>
Douglas Gregor07554022009-05-12 17:55:28 +0000744 <td class="complete" align="center"></td>
745 <td class="complete" align="center"></td>
746 <td class="complete" align="center"></td>
Cedric Venet3d658642009-02-14 20:20:19 +0000747 <td></td>
748 <td></td>
749</tr>
750<tr>
751 <td>&nbsp;&nbsp;5.11 [expr.bit.and]</td>
Douglas Gregor07554022009-05-12 17:55:28 +0000752 <td class="complete" align="center"></td>
753 <td class="complete" align="center"></td>
754 <td class="complete" align="center"></td>
Cedric Venet3d658642009-02-14 20:20:19 +0000755 <td></td>
756 <td></td>
757</tr>
758<tr>
759 <td>&nbsp;&nbsp;5.12 [expr.xor]</td>
Douglas Gregor07554022009-05-12 17:55:28 +0000760 <td class="complete" align="center"></td>
761 <td class="complete" align="center"></td>
762 <td class="complete" align="center"></td>
Cedric Venet3d658642009-02-14 20:20:19 +0000763 <td></td>
764 <td></td>
765</tr>
766<tr>
767 <td>&nbsp;&nbsp;5.13 [expr.or]</td>
Douglas Gregor07554022009-05-12 17:55:28 +0000768 <td class="complete" align="center"></td>
769 <td class="complete" align="center"></td>
770 <td class="complete" align="center"></td>
Cedric Venet3d658642009-02-14 20:20:19 +0000771 <td></td>
772 <td></td>
773</tr>
774<tr>
775 <td>&nbsp;&nbsp;5.14 [expr.log.and]</td>
Douglas Gregor07554022009-05-12 17:55:28 +0000776 <td class="complete" align="center"></td>
777 <td class="complete" align="center"></td>
778 <td class="complete" align="center"></td>
Cedric Venet3d658642009-02-14 20:20:19 +0000779 <td></td>
780 <td></td>
781</tr>
782<tr>
783 <td>&nbsp;&nbsp;5.15 [expr.log.or]</td>
Douglas Gregor07554022009-05-12 17:55:28 +0000784 <td class="complete" align="center"></td>
785 <td class="complete" align="center"></td>
786 <td class="complete" align="center"></td>
Cedric Venet3d658642009-02-14 20:20:19 +0000787 <td></td>
788 <td></td>
789</tr>
790<tr>
791 <td>&nbsp;&nbsp;5.16 [expr.cond]</td>
Douglas Gregor07554022009-05-12 17:55:28 +0000792 <td class="complete" align="center"></td>
793 <td class="complete" align="center"></td>
794 <td class="complete" align="center"></td>
Cedric Venet3d658642009-02-14 20:20:19 +0000795 <td></td>
Sebastian Redl78eb8742009-04-19 21:53:20 +0000796 <td>some invalid hierarchy casts still accepted, but that's a general problem</td>
Cedric Venet3d658642009-02-14 20:20:19 +0000797</tr>
798<tr>
799 <td>&nbsp;&nbsp;5.17 [expr.ass]</td>
Douglas Gregor07554022009-05-12 17:55:28 +0000800 <td class="complete" align="center"></td>
801 <td class="complete" align="center"></td>
802 <td class="complete" align="center"></td>
Cedric Venet3d658642009-02-14 20:20:19 +0000803 <td></td>
804 <td></td>
805</tr>
806<tr>
807 <td>&nbsp;&nbsp;5.18 [expr.comma]</td>
Douglas Gregor07554022009-05-12 17:55:28 +0000808 <td class="complete" align="center"></td>
809 <td class="complete" align="center"></td>
810 <td class="complete" align="center"></td>
Cedric Venet3d658642009-02-14 20:20:19 +0000811 <td></td>
812 <td></td>
813</tr>
814<tr>
815 <td>&nbsp;&nbsp;5.19 [expr.const]</td>
Douglas Gregor07554022009-05-12 17:55:28 +0000816 <td class="complete" align="center"></td>
817 <td class="complete" align="center"></td>
Cedric Venet3d658642009-02-14 20:20:19 +0000818 <td class="basic"></td>
819 <td></td>
820 <td>Uses C semantics</td>
821</tr>
822<tr>
823 <td>6 [stmt.stmt]</td>
Douglas Gregor07554022009-05-12 17:55:28 +0000824 <td class="complete" align="center"></td>
825 <td class="complete" align="center"></td>
826 <td class="complete" align="center"></td>
Cedric Venet3d658642009-02-14 20:20:19 +0000827 <td></td>
828 <td></td>
829</tr>
830<tr>
831 <td>&nbsp;&nbsp;6.1 [stmt.label]</td>
Douglas Gregor07554022009-05-12 17:55:28 +0000832 <td class="complete" align="center"></td>
833 <td class="complete" align="center"></td>
834 <td class="complete" align="center"></td>
Cedric Venet3d658642009-02-14 20:20:19 +0000835 <td></td>
836 <td></td>
837</tr>
838<tr>
839 <td>&nbsp;&nbsp;6.2 [stmt.expr]</td>
Douglas Gregor07554022009-05-12 17:55:28 +0000840 <td class="complete" align="center"></td>
841 <td class="complete" align="center"></td>
842 <td class="complete" align="center"></td>
Cedric Venet3d658642009-02-14 20:20:19 +0000843 <td></td>
844 <td></td>
845</tr>
846<tr>
847 <td>&nbsp;&nbsp;6.3 [stmt.block]</td>
Douglas Gregor07554022009-05-12 17:55:28 +0000848 <td class="complete" align="center"></td>
849 <td class="complete" align="center"></td>
850 <td class="complete" align="center"></td>
Cedric Venet3d658642009-02-14 20:20:19 +0000851 <td></td>
852 <td></td>
853</tr>
854<tr>
855 <td>&nbsp;&nbsp;6.4 [stmt.select]</td>
Douglas Gregor07554022009-05-12 17:55:28 +0000856 <td class="complete" align="center"></td>
857 <td class="complete" align="center"></td>
Cedric Venet3d658642009-02-14 20:20:19 +0000858 <td class="advanced" align="center"></td>
859 <td></td>
860 <td>Conversion of declarations to required types not really supported.</td>
861</tr>
862<tr>
863 <td>&nbsp;&nbsp;&nbsp;&nbsp;6.4.1 [stmt.if]</td>
Douglas Gregor07554022009-05-12 17:55:28 +0000864 <td class="complete" align="center"></td>
865 <td class="complete" align="center"></td>
866 <td class="complete" align="center"></td>
Cedric Venet3d658642009-02-14 20:20:19 +0000867 <td></td>
868 <td></td>
869</tr>
870<tr>
871 <td>&nbsp;&nbsp;&nbsp;&nbsp;6.4.2 [stmt.switch]</td>
Douglas Gregor07554022009-05-12 17:55:28 +0000872 <td class="complete" align="center"></td>
873 <td class="complete" align="center"></td>
874 <td class="complete" align="center"></td>
Cedric Venet3d658642009-02-14 20:20:19 +0000875 <td></td>
876 <td></td>
877</tr>
878<tr>
879 <td>&nbsp;&nbsp;6.5 [stmt.iter]</td>
Douglas Gregor07554022009-05-12 17:55:28 +0000880 <td class="complete" align="center"></td>
881 <td class="complete" align="center"></td>
Cedric Venet3d658642009-02-14 20:20:19 +0000882 <td class="advanced" align="center"></td>
883 <td></td>
884 <td>Conversion of declarations to required types not really supported.</td>
885</tr>
886<tr>
887 <td>&nbsp;&nbsp;&nbsp;&nbsp;6.5.1 [stmt.while]</td>
Douglas Gregor07554022009-05-12 17:55:28 +0000888 <td class="complete" align="center"></td>
889 <td class="complete" align="center"></td>
890 <td class="complete" align="center"></td>
Cedric Venet3d658642009-02-14 20:20:19 +0000891 <td></td>
892 <td></td>
893</tr>
894<tr>
895 <td>&nbsp;&nbsp;&nbsp;&nbsp;6.5.2 [stmt.do]</td>
Douglas Gregor07554022009-05-12 17:55:28 +0000896 <td class="complete" align="center"></td>
897 <td class="complete" align="center"></td>
898 <td class="complete" align="center"></td>
Cedric Venet3d658642009-02-14 20:20:19 +0000899 <td></td>
900 <td></td>
901</tr>
902<tr>
903 <td>&nbsp;&nbsp;&nbsp;&nbsp;6.5.3 [stmt.for]</td>
Douglas Gregor07554022009-05-12 17:55:28 +0000904 <td class="complete" align="center"></td>
905 <td class="complete" align="center"></td>
906 <td class="complete" align="center"></td>
Cedric Venet3d658642009-02-14 20:20:19 +0000907 <td></td>
908 <td></td>
909</tr>
910<tr>
911 <td>&nbsp;&nbsp;6.6 [stmt.jump]</td>
Douglas Gregor07554022009-05-12 17:55:28 +0000912 <td class="complete" align="center"></td>
913 <td class="complete" align="center"></td>
914 <td class="complete" align="center"></td>
Cedric Venet3d658642009-02-14 20:20:19 +0000915 <td></td>
916 <td></td>
917</tr>
918<tr>
919 <td>&nbsp;&nbsp;&nbsp;&nbsp;6.6.1 [stmt.break]</td>
Douglas Gregor07554022009-05-12 17:55:28 +0000920 <td class="complete" align="center"></td>
921 <td class="complete" align="center"></td>
922 <td class="complete" align="center"></td>
Cedric Venet3d658642009-02-14 20:20:19 +0000923 <td></td>
924 <td></td>
925</tr>
926<tr>
927 <td>&nbsp;&nbsp;&nbsp;&nbsp;6.6.2 [stmt.cont]</td>
Douglas Gregor07554022009-05-12 17:55:28 +0000928 <td class="complete" align="center"></td>
929 <td class="complete" align="center"></td>
930 <td class="complete" align="center"></td>
Cedric Venet3d658642009-02-14 20:20:19 +0000931 <td></td>
932 <td></td>
933</tr>
934<tr>
935 <td>&nbsp;&nbsp;&nbsp;&nbsp;6.6.3 [stmt.return]</td>
Douglas Gregor07554022009-05-12 17:55:28 +0000936 <td class="complete" align="center"></td>
937 <td class="complete" align="center"></td>
938 <td class="complete" align="center"></td>
Cedric Venet3d658642009-02-14 20:20:19 +0000939 <td></td>
940 <td></td>
941</tr>
942<tr>
943 <td>&nbsp;&nbsp;&nbsp;&nbsp;6.6.4 [stmt.goto]</td>
Douglas Gregor07554022009-05-12 17:55:28 +0000944 <td class="complete" align="center"></td>
945 <td class="complete" align="center"></td>
946 <td class="complete" align="center"></td>
Cedric Venet3d658642009-02-14 20:20:19 +0000947 <td></td>
948 <td></td>
949</tr>
950<tr>
951 <td>&nbsp;&nbsp;6.7 [stmt.dcl]</td>
Douglas Gregor07554022009-05-12 17:55:28 +0000952 <td class="complete" align="center"></td>
953 <td class="complete" align="center"></td>
Cedric Venet3d658642009-02-14 20:20:19 +0000954 <td class="advanced" align="center"></td>
955 <td></td>
956 <td>Skipping of initialization is not flagged. Existence and accessibility of destructors is not tested for.</td>
957</tr>
958<tr>
959 <td>&nbsp;&nbsp;6.8 [stmt.ambig]</td>
Douglas Gregor07554022009-05-12 17:55:28 +0000960 <td class="complete" align="center"></td>
961 <td class="complete" align="center"></td>
962 <td class="complete" align="center"></td>
Cedric Venet3d658642009-02-14 20:20:19 +0000963 <td></td>
964 <td></td>
965</tr>
966<tr><td>7 [dcl.dcl]</td><td></td><td></td><td></td><td></td><td></td></tr>
967<tr><td>
968 &nbsp;&nbsp;7.1 [dcl.spec]</td>
969 <td class="advanced" align="center"></td>
970 <td class="advanced" align="center"></td>
971 <td class="advanced" align="center"></td>
972 <td></td>
973 <td>No support for friend declarations.</td>
974</tr>
975<tr>
976 <td>&nbsp;&nbsp;&nbsp;&nbsp;7.1.1 [dcl.stc]</td>
Douglas Gregor07554022009-05-12 17:55:28 +0000977 <td class="complete" align="center"></td>
Cedric Venet3d658642009-02-14 20:20:19 +0000978 <td class="advanced" align="center"></td>
979 <td class="advanced" align="center"></td>
980 <td></td>
981 <td>Linkage merging has some errors.</td>
982</tr>
983<tr>
984 <td>&nbsp;&nbsp;&nbsp;&nbsp;7.1.2 [dcl.fct.spec]</td>
Douglas Gregor07554022009-05-12 17:55:28 +0000985 <td class="complete" align="center"></td>
986 <td class="complete" align="center"></td>
987 <td class="complete" align="center"></td>
Cedric Venet3d658642009-02-14 20:20:19 +0000988 <td></td>
989 <td></td>
990</tr>
991<tr>
992 <td>&nbsp;&nbsp;&nbsp;&nbsp;7.1.3 [dcl.typedef]</td>
Douglas Gregor07554022009-05-12 17:55:28 +0000993 <td class="complete" align="center"></td>
994 <td class="complete" align="center"></td>
995 <td class="complete" align="center"></td>
996 <td class="complete" align="center"></td>
Douglas Gregor35adb752009-03-12 00:09:31 +0000997 <td></td>
Cedric Venet3d658642009-02-14 20:20:19 +0000998</tr>
999<tr>
1000 <td>&nbsp;&nbsp;&nbsp;&nbsp;7.1.4 [dcl.friend]</td>
1001 <td class="broken"></td>
1002 <td class="broken"></td>
1003 <td class="broken"></td>
1004 <td></td>
1005 <td></td>
1006</tr>
1007<tr>
1008 <td>&nbsp;&nbsp;&nbsp;&nbsp;7.1.5 [dcl.type]</td>
Douglas Gregor07554022009-05-12 17:55:28 +00001009 <td class="complete" align="center"></td>
1010 <td class="complete" align="center"></td>
1011 <td class="complete" align="center"></td>
Cedric Venet3d658642009-02-14 20:20:19 +00001012 <td></td>
1013 <td></td>
1014</tr>
1015<tr>
1016 <td>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;7.1.5.1 [dcl.type.cv]</td>
Douglas Gregor07554022009-05-12 17:55:28 +00001017 <td class="complete" align="center"></td>
1018 <td class="complete" align="center"></td>
1019 <td class="complete" align="center"></td>
Cedric Venet3d658642009-02-14 20:20:19 +00001020 <td></td>
1021 <td></td>
1022</tr>
1023<tr>
1024 <td>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;7.1.5.2 [dcl.type.simple]</td>
1025 <td class="medium"></td>
1026 <td class="advanced"></td>
1027 <td class="advanced"></td>
1028 <td></td>
1029 <td>Cannot parse template IDs.</td>
1030</tr>
1031<tr>
1032 <td>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;7.1.5.3 [dcl.type.elab]</td>
1033 <td class="medium"></td>
1034 <td class="advanced"></td>
1035 <td class="advanced"></td>
1036 <td></td>
1037 <td>Cannot parse template IDs.</td>
1038</tr>
1039<tr>
1040 <td>&nbsp;&nbsp;7.2 [dcl.enum]</td>
Douglas Gregor07554022009-05-12 17:55:28 +00001041 <td class="complete" align="center"></td>
1042 <td class="complete" align="center"></td>
1043 <td class="complete" align="center"></td>
Cedric Venet3d658642009-02-14 20:20:19 +00001044 <td></td>
1045 <td></td>
1046</tr>
1047<tr>
1048 <td>&nbsp;&nbsp;7.3 [basic.namespace]</td>
Douglas Gregor07554022009-05-12 17:55:28 +00001049 <td class="complete" align="center"></td>
1050 <td class="complete" align="center"></td>
1051 <td class="complete" align="center"></td>
Cedric Venet3d658642009-02-14 20:20:19 +00001052 <td></td>
1053 <td></td>
1054</tr>
1055<tr>
1056 <td>&nbsp;&nbsp;&nbsp;&nbsp;7.3.1 [namespace.def]</td>
Douglas Gregor1e185d92009-08-02 18:22:38 +00001057 <td class="advanced"></td>
1058 <td class="advanced"></td>
1059 <td class="advanced"></td>
Cedric Venet3d658642009-02-14 20:20:19 +00001060 <td></td>
Douglas Gregor1e185d92009-08-02 18:22:38 +00001061 <td></td>
Cedric Venet3d658642009-02-14 20:20:19 +00001062</tr>
1063<tr>
1064 <td>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;7.3.1.1 [namespace.unnamed]</td>
Douglas Gregor07554022009-05-12 17:55:28 +00001065 <td class="complete" align="center"></td>
1066 <td class="complete" align="center"></td>
Cedric Venet3d658642009-02-14 20:20:19 +00001067 <td class="broken"></td>
1068 <td></td>
1069 <td>Unnamed namespace members cannot be looked up.</td>
1070</tr>
1071<tr>
1072 <td>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;7.3.1.2 [namespace.memdef]</td>
Douglas Gregor07554022009-05-12 17:55:28 +00001073 <td class="complete" align="center"></td>
1074 <td class="complete" align="center"></td>
Cedric Venet3d658642009-02-14 20:20:19 +00001075 <td class="advanced"></td>
1076 <td></td>
1077 <td>The friend stuff is not supported.</td>
1078</tr>
1079<tr>
1080 <td>&nbsp;&nbsp;&nbsp;&nbsp;7.3.2 [namespace.alias]</td>
Douglas Gregor07554022009-05-12 17:55:28 +00001081 <td class="complete" align="center"></td>
1082 <td class="complete" align="center"></td>
1083 <td class="complete" align="center"></td>
Anders Carlsson5705e532009-03-31 17:17:14 +00001084 <td class="na">N/A</td>
Cedric Venet3d658642009-02-14 20:20:19 +00001085 <td></td>
1086</tr>
1087<tr>
1088 <td>&nbsp;&nbsp;&nbsp;&nbsp;7.3.3 [namespace.udecl]</td>
1089 <td class="broken" align="center"></td>
1090 <td class="broken" align="center"></td>
1091 <td class="broken" align="center"></td>
1092 <td></td>
1093 <td></td>
1094</tr>
1095<tr>
1096 <td>&nbsp;&nbsp;&nbsp;&nbsp;7.3.4[namespace.udir]</td>
Douglas Gregor07554022009-05-12 17:55:28 +00001097 <td class="complete" align="center"></td>
1098 <td class="complete" align="center"></td>
Cedric Venet3d658642009-02-14 20:20:19 +00001099 <td class="advanced"></td>
1100 <td class="broken" align="center"></td>
1101 <td>Example in p4 fails.</td>
1102</tr>
1103<tr><td>
1104 &nbsp;&nbsp;7.4 [dcl.asm]</td>
Douglas Gregor07554022009-05-12 17:55:28 +00001105 <td class="complete" align="center"></td>
1106 <td class="complete" align="center"></td>
1107 <td class="complete" align="center"></td>
Cedric Venet3d658642009-02-14 20:20:19 +00001108 <td></td>
1109 <td></td>
1110</tr>
1111<tr>
1112 <td>&nbsp;&nbsp;7.5 [dcl.link]</td>
Douglas Gregor07554022009-05-12 17:55:28 +00001113 <td class="complete" align="center"></td>
Cedric Venet3d658642009-02-14 20:20:19 +00001114 <td class="basic"></td>
1115 <td class="basic"></td>
1116 <td></td>
1117 <td></td>
1118</tr>
Cedric Venet3d658642009-02-14 20:20:19 +00001119<tr>
Douglas Gregor6d507a62009-05-07 17:50:16 +00001120 <td>8 [dcl.decl]</td><td></td><td></td><td></td><td></td><td></td>
1121</tr>
1122<tr>
1123 <td>&nbsp;&nbsp;8.1 [dcl.name]</td>
Douglas Gregor07554022009-05-12 17:55:28 +00001124 <td class="complete" align="center"></td>
1125 <td class="complete" align="center"></td>
1126 <td class="complete" align="center"></td>
Douglas Gregor6d507a62009-05-07 17:50:16 +00001127 <td class="na">N/A</td>
1128 <td></td>
1129</tr>
1130<tr>
1131 <td>&nbsp;&nbsp;8.2 [dcl.ambig.res]</td>
1132 <td class="complete" align="center">&#x2713;</td>
1133 <td class="na" align="center">N/A</td>
1134 <td class="complete" align="center">&#x2713;</td>
1135 <td class="na">N/A</td>
1136 <td></td>
1137</tr>
1138<tr>
1139 <td>&nbsp;&nbsp;8.3 [dcl.meaning]</td>
Douglas Gregor07554022009-05-12 17:55:28 +00001140 <td class="complete" align="center"></td>
1141 <td class="complete" align="center"></td>
Douglas Gregor6d507a62009-05-07 17:50:16 +00001142 <td class="advanced" align="center"></td>
1143 <td class="na">N/A</td>
1144 <td>Qualified declarator-ids are not fully implemented.</td>
1145</tr>
1146 <tr>
1147 <td>&nbsp;&nbsp;&nbsp;&nbsp;8.3.1 [dcl.ptr]</td>
Douglas Gregor07554022009-05-12 17:55:28 +00001148 <td class="complete" align="center"></td>
1149 <td class="complete" align="center"></td>
1150 <td class="complete" align="center"></td>
Douglas Gregor6d507a62009-05-07 17:50:16 +00001151 <td class="na">N/A</td>
1152 <td></td>
1153 </tr>
1154 <tr>
1155 <td>&nbsp;&nbsp;&nbsp;&nbsp;8.3.2 [dcl.ref]</td>
Douglas Gregor07554022009-05-12 17:55:28 +00001156 <td class="complete" align="center"></td>
1157 <td class="complete" align="center"></td>
1158 <td class="complete" align="center"></td>
Douglas Gregor6d507a62009-05-07 17:50:16 +00001159 <td class="na">N/A</td>
1160 <td></td>
1161 </tr>
1162 <tr>
1163 <td>&nbsp;&nbsp;&nbsp;&nbsp;8.3.3 [dcl.mptr]</td>
Douglas Gregor07554022009-05-12 17:55:28 +00001164 <td class="complete" align="center"></td>
1165 <td class="complete" align="center"></td>
1166 <td class="complete" align="center"></td>
Douglas Gregor6d507a62009-05-07 17:50:16 +00001167 <td class="na">N/A</td>
1168 <td></td>
1169 </tr>
1170 <tr>
1171 <td>&nbsp;&nbsp;&nbsp;&nbsp;8.3.4 [dcl.array]</td>
Douglas Gregor07554022009-05-12 17:55:28 +00001172 <td class="complete" align="center"></td>
1173 <td class="complete" align="center"></td>
1174 <td class="complete" align="center"></td>
Douglas Gregor6d507a62009-05-07 17:50:16 +00001175 <td class="na">N/A</td>
1176 <td></td>
1177 </tr>
1178 <tr>
1179 <td>&nbsp;&nbsp;&nbsp;&nbsp;8.3.5 [dcl.fct]</td>
Douglas Gregor07554022009-05-12 17:55:28 +00001180 <td class="complete" align="center"></td>
1181 <td class="complete" align="center"></td>
1182 <td class="complete" align="center"></td>
Douglas Gregor6d507a62009-05-07 17:50:16 +00001183 <td class="na">N/A</td>
1184 <td></td>
1185 </tr>
1186 <tr>
Cedric Venet3d658642009-02-14 20:20:19 +00001187 <td>&nbsp;&nbsp;&nbsp;&nbsp;8.3.6 [dcl.fct.default]</td>
1188 <td class="advanced" align="center"></td>
1189 <td class="advanced" align="center"></td>
1190 <td class="advanced" align="center"></td>
Douglas Gregor6d507a62009-05-07 17:50:16 +00001191 <td class="na">N/A</td>
Cedric Venet3d658642009-02-14 20:20:19 +00001192 <td>Missing default arguments for templates.</td>
1193</tr>
Douglas Gregor6d507a62009-05-07 17:50:16 +00001194<tr>
1195 <td>&nbsp;&nbsp;8.4 [dcl.fct.def]</td>
Douglas Gregor07554022009-05-12 17:55:28 +00001196 <td class="complete" align="center"></td>
1197 <td class="complete" align="center"></td>
Douglas Gregor6d507a62009-05-07 17:50:16 +00001198 <td class="medium" align="center"></td>
1199 <td class="basic" align="center"></td>
1200 <td>ctor-initializers are not fully type-checked.</td>
1201</tr>
1202<tr>
1203 <td>&nbsp;&nbsp;8.5 [dcl.init]</td>
1204 <td class="advanced" align="center"></td>
1205 <td class="advanced" align="center"></td>
1206 <td class="medium" align="center"></td>
1207 <td class="medium" align="center"></td>
1208 <td></td>
1209</tr>
Cedric Venet3d658642009-02-14 20:20:19 +00001210<tr>
1211 <td>&nbsp;&nbsp;&nbsp;&nbsp;8.5.1[dcl.init.aggr]</td>
1212 <td class="advanced" align="center"></td>
1213 <td class="advanced" align="center"></td>
1214 <td class="medium" align="center"></td>
1215 <td class="basic" align="center"></td>
1216 <td>No CodeGen for initializing non-aggregates or dynamic initialization.</td>
1217</tr>
Douglas Gregor35adb752009-03-12 00:09:31 +00001218<tr>
1219 <td>&nbsp;&nbsp;&nbsp;&nbsp;8.5.2[dcl.init.string]</td>
1220 <td class="advanced" align="center"></td>
1221 <td class="advanced" align="center"></td>
1222 <td class="medium" align="center"></td>
1223 <td class="basic" align="center"></td>
1224 <td></td>
1225</tr>
Cedric Venet3d658642009-02-14 20:20:19 +00001226<tr>
1227 <td>&nbsp;&nbsp;&nbsp;&nbsp;8.5.3 [dcl.init.ref]</td>
1228 <td class="advanced" align="center"></td>
1229 <td class="advanced" align="center"></td>
1230 <td class="medium" align="center"></td>
1231 <td class="basic" align="center"></td>
1232 <td></td>
1233</tr>
1234<tr>
1235 <td>9 [class]</td>
1236 <td class="advanced" align="center"></td>
1237 <td></td>
1238 <td></td>
1239 <td></td>
1240 <td></td>
1241</tr>
1242<tr>
1243 <td>&nbsp;&nbsp;9.1 [class.name]</td>
Douglas Gregor07554022009-05-12 17:55:28 +00001244 <td class="complete" align="center"></td>
1245 <td class="complete" align="center"></td>
1246 <td class="complete" align="center"></td>
Douglas Gregor6d507a62009-05-07 17:50:16 +00001247 <td class="na" align="center">N/A</td>
Cedric Venet3d658642009-02-14 20:20:19 +00001248 <td></td>
1249</tr>
1250<tr>
1251 <td>&nbsp;&nbsp;9.2 [class.mem]</td>
1252 <td class="advanced" align="center"></td>
Douglas Gregor35adb752009-03-12 00:09:31 +00001253 <td class="medium" align="center"></td>
1254 <td class="medium" align="center"></td>
Douglas Gregor6d507a62009-05-07 17:50:16 +00001255 <td class="basic" align="center"></td>
1256 <td>No parser support for using declarations or member templates.</td>
Cedric Venet3d658642009-02-14 20:20:19 +00001257</tr>
1258<tr>
1259 <td>&nbsp;&nbsp;9.3 [class.mfct]</td>
Douglas Gregor07554022009-05-12 17:55:28 +00001260 <td class="complete" align="center"></td>
Douglas Gregor6d507a62009-05-07 17:50:16 +00001261 <td class="advanced" align="center"></td>
1262 <td class="advanced" align="center"></td>
1263 <td class="basic" align="center"></td>
Cedric Venet3d658642009-02-14 20:20:19 +00001264 <td></td>
1265</tr>
1266<tr>
1267 <td>&nbsp;&nbsp;&nbsp;&nbsp;9.3.1 [class.mfct.non-static]</td>
Douglas Gregor07554022009-05-12 17:55:28 +00001268 <td class="complete" align="center"></td>
Douglas Gregor35adb752009-03-12 00:09:31 +00001269 <td class="medium" align="center"></td>
1270 <td class="medium" align="center"></td>
Douglas Gregor6d507a62009-05-07 17:50:16 +00001271 <td class="basic" align="center"></td>
Cedric Venet3d658642009-02-14 20:20:19 +00001272 <td></td>
1273</tr>
1274<tr>
1275 <td>&nbsp;&nbsp;&nbsp;&nbsp;9.3.2 [class.this]</td>
Douglas Gregor07554022009-05-12 17:55:28 +00001276 <td class="complete" align="center"></td>
Douglas Gregor35adb752009-03-12 00:09:31 +00001277 <td class="medium" align="center"></td>
1278 <td class="medium" align="center"></td>
Douglas Gregor6d507a62009-05-07 17:50:16 +00001279 <td class="basic"></td>
Cedric Venet3d658642009-02-14 20:20:19 +00001280 <td></td>
1281</tr>
1282<tr>
1283 <td>&nbsp;&nbsp;9.4 [class.static]</td>
Douglas Gregor07554022009-05-12 17:55:28 +00001284 <td class="complete" align="center"></td>
1285 <td class="complete" align="center"></td>
Douglas Gregor35adb752009-03-12 00:09:31 +00001286 <td class="medium" align="center"></td>
Douglas Gregor6d507a62009-05-07 17:50:16 +00001287 <td class="basic"></td>
Cedric Venet3d658642009-02-14 20:20:19 +00001288 <td></td>
1289</tr>
1290<tr>
1291 <td>&nbsp;&nbsp;&nbsp;&nbsp;9.4.1 [class.static.mfct]</td>
Douglas Gregor07554022009-05-12 17:55:28 +00001292 <td class="complete" align="center"></td>
1293 <td class="complete" align="center"></td>
Douglas Gregor35adb752009-03-12 00:09:31 +00001294 <td class="medium" align="center"></td>
Douglas Gregor6d507a62009-05-07 17:50:16 +00001295 <td class="basic"></td>
Cedric Venet3d658642009-02-14 20:20:19 +00001296 <td></td>
1297</tr>
1298<tr>
1299 <td>&nbsp;&nbsp;&nbsp;&nbsp;9.4.2 [class.static.data]</td>
Douglas Gregor07554022009-05-12 17:55:28 +00001300 <td class="complete" align="center"></td>
1301 <td class="complete" align="center"></td>
Douglas Gregor35adb752009-03-12 00:09:31 +00001302 <td class="medium" align="center"></td>
Douglas Gregor6d507a62009-05-07 17:50:16 +00001303 <td class="basic"></td>
Cedric Venet3d658642009-02-14 20:20:19 +00001304 <td></td>
1305</tr>
1306<tr>
1307 <td>&nbsp;&nbsp;9.5 [class.union]</td>
Douglas Gregor07554022009-05-12 17:55:28 +00001308 <td class="complete" align="center"></td>
1309 <td class="complete" align="center"></td>
Douglas Gregor9c09b882009-07-24 00:05:42 +00001310 <td class="complete"></td>
1311 <td class="complete"></td>
1312 <td></td>
Cedric Venet3d658642009-02-14 20:20:19 +00001313</tr>
1314<tr>
1315 <td>&nbsp;&nbsp;9.6 [class.bit]</td>
Douglas Gregor07554022009-05-12 17:55:28 +00001316 <td class="complete" align="center"></td>
1317 <td class="complete" align="center"></td>
1318 <td class="complete" align="center"></td>
1319 <td class="complete" align="center"></td>
Cedric Venet3d658642009-02-14 20:20:19 +00001320 <td></td>
1321</tr>
1322<tr>
1323 <td>&nbsp;&nbsp;9.7 [class.nest]</td>
Douglas Gregor07554022009-05-12 17:55:28 +00001324 <td class="complete" align="center"></td>
Douglas Gregor6d507a62009-05-07 17:50:16 +00001325 <td class="advanced"></td>
1326 <td class="advanced"></td>
1327 <td class="na" align="center">N/A</td>
Cedric Venet3d658642009-02-14 20:20:19 +00001328 <td></td>
1329</tr>
1330<tr>
1331 <td>&nbsp;&nbsp;9.8 [class.local]</td>
Anders Carlssone6510f12009-06-24 02:03:09 +00001332 <td class="complete" align="center">&#x2713;</td>
1333 <td class="complete" align="center">&#x2713;</td>
1334 <td class="complete" align="center">&#x2713;</td>
1335 <td class="na" align="center">N/A</td>
Cedric Venet3d658642009-02-14 20:20:19 +00001336 <td></td>
1337</tr>
1338<tr>
1339 <td>&nbsp;&nbsp;9.9 [class.nested.type]</td>
Anders Carlsson43f24e02009-06-24 00:32:04 +00001340 <td class="complete" align="center">&#x2713;</td>
1341 <td class="complete" align="center">&#x2713;</td>
1342 <td class="complete" align="center">&#x2713;</td>
Douglas Gregor6d507a62009-05-07 17:50:16 +00001343 <td class="na" align="center">N/A</td>
Cedric Venet3d658642009-02-14 20:20:19 +00001344 <td></td>
1345</tr>
Douglas Gregor6d507a62009-05-07 17:50:16 +00001346<tr>
1347 <td>10 [class.derived]</td>
1348 <td class="advanced" align="center"></td>
1349 <td class="advanced" align="center"></td>
1350 <td class="medium" align="center"></td>
1351 <td class="broken" align="center"></td>
1352 <td></td>
1353</tr>
1354<tr>
1355 <td>&nbsp;&nbsp;10.1 [class.mi]</td>
1356 <td class="advanced" align="center"></td>
1357 <td class="advanced" align="center"></td>
1358 <td class="medium" align="center"></td>
1359 <td class="broken" align="center"></td>
1360 <td>No layout of base classes</td>
1361</tr>
1362<tr>
1363 <td>&nbsp;&nbsp;10.2 [class.member.lookup]</td>
Douglas Gregor07554022009-05-12 17:55:28 +00001364 <td class="complete" align="center"></td>
1365 <td class="complete" align="center"></td>
1366 <td class="complete" align="center"></td>
Douglas Gregor6d507a62009-05-07 17:50:16 +00001367 <td class="na" align="center">N/A</td>
1368 <td></td>
1369</tr>
1370<tr>
1371 <td>&nbsp;&nbsp;10.3 [class.virtual]</td>
1372 <td class="advanced" align="center"></td>
1373 <td class="medium" align="center"></td>
1374 <td class="basic" align="center"></td>
1375 <td class="broken" align="center"></td>
1376 <td>No semantic analysis for overriding virtual functions or inheriting a virtual function. No layout of classes with virtual functions.</td>
1377</tr>
Anders Carlsson1edac4d2009-03-24 01:24:06 +00001378<tr>
1379 <td>&nbsp;&nbsp;10.4 [class.abstract]</td>
Douglas Gregor07554022009-05-12 17:55:28 +00001380 <td class="complete" align="center"></td>
1381 <td class="complete" align="center"></td>
1382 <td class="complete" align="center"></td>
Douglas Gregor6d507a62009-05-07 17:50:16 +00001383 <td class="na" align="center">N/A</td>
Anders Carlsson1edac4d2009-03-24 01:24:06 +00001384 <td></td>
1385 </tr>
Douglas Gregor6d507a62009-05-07 17:50:16 +00001386<tr>
1387 <td>11 [class.access]</td>
1388 <td class="medium" align="center"></td>
1389 <td class="medium" align="center"></td>
1390 <td class="broken" align="center"></td>
1391 <td class="na" align="center">N/A</td>
1392 <td></td>
1393</tr>
1394<tr>
1395 <td>&nbsp;&nbsp;11.1 [class.access.spec]</td>
Douglas Gregor07554022009-05-12 17:55:28 +00001396 <td class="complete" align="center"></td>
Douglas Gregor6d507a62009-05-07 17:50:16 +00001397 <td class="advanced" align="center"></td>
Douglas Gregor07554022009-05-12 17:55:28 +00001398 <td class="complete" align="center"></td>
Douglas Gregor6d507a62009-05-07 17:50:16 +00001399 <td class="na" align="center">N/A</td>
1400 <td></td>
1401</tr>
1402<tr>
1403 <td>&nbsp;&nbsp;11.2 [class.access.base]</td>
Douglas Gregor07554022009-05-12 17:55:28 +00001404 <td class="complete" align="center"></td>
1405 <td class="complete" align="center"></td>
Douglas Gregor6d507a62009-05-07 17:50:16 +00001406 <td class="broken" align="center"></td>
1407 <td class="na" align="center">N/A</td>
1408 <td></td>
1409</tr>
1410<tr>
1411 <td>&nbsp;&nbsp;11.3 [class.access.dcl]</td>
1412 <td class="broken" align="center"></td>
1413 <td class="broken" align="center"></td>
1414 <td class="broken" align="center"></td>
1415 <td class="na" align="center">N/A</td>
1416 <td></td>
1417</tr>
1418<tr>
1419 <td>&nbsp;&nbsp;11.4 [class.friend]</td>
1420 <td class="broken" align="center"></td>
1421 <td class="broken" align="center"></td>
1422 <td class="broken" align="center"></td>
1423 <td class="na" align="center">N/A</td>
1424 <td></td>
1425</tr>
1426<tr>
1427 <td>&nbsp;&nbsp;11.5 [class.protected]</td>
1428 <td class="na" align="center"></td>
Douglas Gregor07554022009-05-12 17:55:28 +00001429 <td class="complete" align="center"></td>
Douglas Gregor6d507a62009-05-07 17:50:16 +00001430 <td class="broken" align="center"></td>
1431 <td class="na" align="center">N/A</td>
1432 <td></td>
1433</tr>
1434<tr>
1435 <td>&nbsp;&nbsp;11.6 [class.access.virt]</td>
1436 <td class="na" align="center"></td>
1437 <td class="na" align="center"></td>
1438 <td class="broken" align="center"></td>
1439 <td class="na" align="center">N/A</td>
1440 <td></td>
1441</tr>
1442<tr>
1443 <td>&nbsp;&nbsp;11.7 [class.paths]</td>
1444 <td class="na" align="center"></td>
1445 <td class="na" align="center"></td>
1446 <td class="broken" align="center"></td>
1447 <td class="na" align="center">N/A</td>
1448 <td></td>
1449</tr>
1450<tr>
1451 <td>&nbsp;&nbsp;11.8 [class.access.nest]</td>
1452 <td class="na" align="center"></td>
1453 <td class="na" align="center"></td>
1454 <td class="broken" align="center"></td>
1455 <td class="na" align="center">N/A</td>
1456 <td></td>
1457</tr>
Cedric Venet3d658642009-02-14 20:20:19 +00001458<tr><td>12 [special]</td><td></td><td></td><td></td><td></td><td></td></tr>
1459<tr>
1460 <td>&nbsp;&nbsp;12.1 [class.ctor]</td>
1461 <td class="advanced" align="center"></td>
1462 <td class="medium" align="center"></td>
Fariborz Jahanianc1410862009-08-22 00:18:52 +00001463 <td class="advanced" align="center"></td>
1464 <td class="advanced" align="center"></td>
1465 <td>Most of the semantics of constructors are implemented.</td>
Cedric Venet3d658642009-02-14 20:20:19 +00001466</tr>
Douglas Gregor6d507a62009-05-07 17:50:16 +00001467<tr>
1468 <td>&nbsp;&nbsp;12.2 [class.temporary]</td>
1469 <td class="na" align="center">N/A</td>
1470 <td class="basic" align="center"></td>
1471 <td class="basic" align="center"></td>
1472 <td class="basic" align="center"></td>
1473 <td>Implementation of temporary objects is in its initial stages.</td>
1474</tr>
Cedric Venet3d658642009-02-14 20:20:19 +00001475<tr>
1476 <td>&nbsp;&nbsp;12.3 [class.conv]</td>
1477 <td class="advanced" align="center"></td>
Douglas Gregor6d507a62009-05-07 17:50:16 +00001478 <td class="advanced" align="center"></td>
Cedric Venet3d658642009-02-14 20:20:19 +00001479 <td class="medium" align="center"></td>
Cedric Venet3d658642009-02-14 20:20:19 +00001480 <td class="broken" align="center"></td>
1481 <td></td>
1482</tr>
1483<tr>
1484 <td>&nbsp;&nbsp;&nbsp;&nbsp;12.3.1 [class.conv.ctor]</td>
Douglas Gregor6d507a62009-05-07 17:50:16 +00001485 <td class="complete" align="center"></td>
Cedric Venet3d658642009-02-14 20:20:19 +00001486 <td class="advanced" align="center"></td>
Douglas Gregor6d507a62009-05-07 17:50:16 +00001487 <td class="advanced" align="center"></td>
Cedric Venet3d658642009-02-14 20:20:19 +00001488 <td class="broken" align="center"></td>
1489 <td></td>
1490</tr>
1491<tr>
1492 <td>&nbsp;&nbsp;&nbsp;&nbsp;12.3.2 [class.conv.fct]</td>
Douglas Gregor6d507a62009-05-07 17:50:16 +00001493 <td class="complete" align="center"></td>
Cedric Venet3d658642009-02-14 20:20:19 +00001494 <td class="advanced" align="center"></td>
Douglas Gregor6d507a62009-05-07 17:50:16 +00001495 <td class="advanced" align="center"></td>
Cedric Venet3d658642009-02-14 20:20:19 +00001496 <td class="broken" align="center"></td>
Douglas Gregor6d507a62009-05-07 17:50:16 +00001497 <td>No support for inheritance of conversion functions.</td>
Cedric Venet3d658642009-02-14 20:20:19 +00001498</tr>
1499<tr>
1500 <td>&nbsp;&nbsp;12.4 [class.dtor]</td>
1501 <td class="advanced" align="center"></td>
1502 <td class="medium" align="center"></td>
Fariborz Jahanianc1410862009-08-22 00:18:52 +00001503 <td class="medium" align="center"></td>
1504 <td class="medium" align="center"></td>
1505 <td>Most of the semantics of destructors are implemented.</td>
Cedric Venet3d658642009-02-14 20:20:19 +00001506</tr>
1507<tr><td>&nbsp;&nbsp;12.5 [class.free]</td><td></td><td></td><td></td><td></td><td></td></tr>
1508<tr><td>&nbsp;&nbsp;12.6 [class.init]</td><td></td><td></td><td></td><td></td><td></td></tr>
1509<tr><td>&nbsp;&nbsp;&nbsp;&nbsp;12.6.1 [class.expl.init]</td><td></td><td></td><td></td><td></td><td></td></tr>
1510<tr>
1511 <td>&nbsp;&nbsp;&nbsp;&nbsp;12.6.2 [class.base.init]</td>
1512 <td class="advanced" align="center"></td>
1513 <td class="medium" align="center"></td>
Fariborz Jahanianc1410862009-08-22 00:18:52 +00001514 <td class="advanced" align="center"></td>
1515 <td class="advanced" align="center"></td>
1516 <td>Most of the semantics of base initializations are implemented.</td>
Cedric Venet3d658642009-02-14 20:20:19 +00001517</tr>
1518<tr><td>&nbsp;&nbsp;12.7 [class.cdtor]</td><td></td><td></td><td></td><td></td><td></td></tr>
Douglas Gregor6d507a62009-05-07 17:50:16 +00001519<tr>
1520 <td>&nbsp;&nbsp;12.8 [class.copy]</td>
1521 <td class="advanced" align="center"></td>
1522 <td class="advanced" align="center"></td>
Fariborz Jahanianc1410862009-08-22 00:18:52 +00001523 <td class="advanced" align="center"></td>
1524 <td class="advanced" align="center"></td>
1525 <td>Most of the semantics of copy constructors are implemented.</td>
Douglas Gregor6d507a62009-05-07 17:50:16 +00001526</tr>
1527
Cedric Venet3d658642009-02-14 20:20:19 +00001528<tr><td>13 [over]</td><td></td><td></td><td></td><td></td><td></td></tr>
1529<tr>
1530 <td>&nbsp;&nbsp;13.1 [over.load]</td>
Douglas Gregor46685092009-07-08 10:03:09 +00001531 <td class="na" align="center">N/A</td>
1532 <td class="advanced" align="center"></td>
1533 <td class="advanced" align="center"></td>
1534 <td class="medium" align="center"></td>
1535 <td></td>
Cedric Venet3d658642009-02-14 20:20:19 +00001536</tr>
1537<tr>
1538 <td>&nbsp;&nbsp;13.2 [over.dcl]</td>
Douglas Gregor46685092009-07-08 10:03:09 +00001539 <td class="na" align="center">N/A</td>
1540 <td class="advanced" align="center"></td>
1541 <td class="advanced" align="center"></td>
1542 <td class="na" align="center">N/A</td>
Cedric Venet3d658642009-02-14 20:20:19 +00001543 <td></td>
1544</tr>
1545<tr>
1546 <td>&nbsp;&nbsp;13.3 [over.match]</td>
Douglas Gregor46685092009-07-08 10:03:09 +00001547 <td class="na" align="center">N/A</td>
1548 <td class="medium" align="center"></td>
1549 <td class="medium" align="center"></td>
1550 <td class="na" align="center">N/A</td>
Cedric Venet3d658642009-02-14 20:20:19 +00001551 <td></td>
1552</tr>
1553<tr>
1554 <td>&nbsp;&nbsp;&nbsp;&nbsp;13.3.1 [over.match.funcs]</td>
Douglas Gregor46685092009-07-08 10:03:09 +00001555 <td class="na" align="center">N/A</td>
Cedric Venet3d658642009-02-14 20:20:19 +00001556 <td class="basic" align="center"></td>
1557 <td class="basic" align="center"></td>
Douglas Gregor46685092009-07-08 10:03:09 +00001558 <td class="na" align="center">N/A</td>
Cedric Venet3d658642009-02-14 20:20:19 +00001559 <td></td>
1560</tr>
1561<tr>
1562 <td>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;13.3.1.1 [over.match.call]</td>
Douglas Gregor46685092009-07-08 10:03:09 +00001563 <td class="na" align="center">N/A</td>
Cedric Venet3d658642009-02-14 20:20:19 +00001564 <td class="basic" align="center"></td>
1565 <td class="basic" align="center"></td>
Douglas Gregor46685092009-07-08 10:03:09 +00001566 <td class="na" align="center">N/A</td>
Cedric Venet3d658642009-02-14 20:20:19 +00001567 <td></td>
1568</tr>
1569<tr>
1570 <td>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;13.3.1.1.1 [over.call.func]</td>
Douglas Gregor46685092009-07-08 10:03:09 +00001571 <td class="na" align="center">N/A</td>
1572 <td class="medium" align="center"></td>
1573 <td class="advanced" align="center"></td>
1574 <td class="na" align="center">N/A</td>
Cedric Venet3d658642009-02-14 20:20:19 +00001575 <td></td>
1576</tr>
1577<tr>
1578 <td>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;13.3.1.1.2 [over.call.object]</td>
Douglas Gregor46685092009-07-08 10:03:09 +00001579 <td class="na" align="center">N/A</td>
Cedric Venet3d658642009-02-14 20:20:19 +00001580 <td class="medium" align="center"></td>
1581 <td class="advanced" align="center"></td>
Douglas Gregor46685092009-07-08 10:03:09 +00001582 <td class="na" align="center">N/A</td>
Cedric Venet3d658642009-02-14 20:20:19 +00001583 <td>Missing AST representation for the implicit conversion to a function reference/pointer</td>
1584</tr>
1585<tr>
1586 <td>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;13.3.1.2 [over.match.oper]</td>
Douglas Gregor46685092009-07-08 10:03:09 +00001587 <td class="na" align="center">N/A</td>
Cedric Venet3d658642009-02-14 20:20:19 +00001588 <td class="advanced" align="center"></td>
1589 <td class="advanced" align="center"></td>
Douglas Gregor46685092009-07-08 10:03:09 +00001590 <td class="na" align="center">N/A</td>
Cedric Venet3d658642009-02-14 20:20:19 +00001591 <td></td>
1592</tr>
1593<tr>
1594 <td>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;13.3.1.3 [over.match.ctor]</td>
Douglas Gregor46685092009-07-08 10:03:09 +00001595 <td class="na" align="center">N/A</td>
1596 <td class="medium" align="center"></td>
1597 <td class="medium" align="center"></td>
1598 <td class="na" align="center">N/A</td>
Cedric Venet3d658642009-02-14 20:20:19 +00001599 <td></td>
1600</tr>
1601<tr>
1602 <td>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;13.3.1.4 [over.match.copy]</td>
Douglas Gregor46685092009-07-08 10:03:09 +00001603 <td class="na" align="center">N/A</td>
1604 <td class="medium" align="center"></td>
1605 <td class="medium" align="center"></td>
1606 <td class="na" align="center">N/A</td>
Cedric Venet3d658642009-02-14 20:20:19 +00001607 <td></td>
1608</tr>
1609<tr>
1610 <td>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;13.3.1.5 [over.match.conv]</td>
Douglas Gregor46685092009-07-08 10:03:09 +00001611 <td class="na" align="center">N/A</td>
1612 <td class="medium" align="center"></td>
1613 <td class="medium" align="center"></td>
1614 <td class="na" align="center">N/A</td>
Cedric Venet3d658642009-02-14 20:20:19 +00001615 <td></td>
1616</tr>
1617<tr>
1618 <td>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;13.3.1.6 [over.match.ref]</td>
Douglas Gregor46685092009-07-08 10:03:09 +00001619 <td class="na" align="center">N/A</td>
1620 <td class="medium" align="center"></td>
1621 <td class="medium" align="center"></td>
1622 <td class="na" align="center">N/A</td>
Cedric Venet3d658642009-02-14 20:20:19 +00001623 <td></td>
1624</tr>
1625<tr>
1626 <td>&nbsp;&nbsp;&nbsp;&nbsp;13.3.2 [over.match.viable]</td>
Douglas Gregor46685092009-07-08 10:03:09 +00001627 <td class="na" align="center">N/A</td>
Cedric Venet3d658642009-02-14 20:20:19 +00001628 <td class="medium" align="center"></td>
1629 <td class="medium" align="center"></td>
Douglas Gregor46685092009-07-08 10:03:09 +00001630 <td class="na" align="center">N/A</td>
Cedric Venet3d658642009-02-14 20:20:19 +00001631 <td></td>
1632</tr>
1633<tr>
1634 <td>&nbsp;&nbsp;&nbsp;&nbsp;13.3.3 [over.match.best]</td>
Douglas Gregor46685092009-07-08 10:03:09 +00001635 <td class="na" align="center">N/A</td>
1636 <td class="medium" align="center"></td>
1637 <td class="medium" align="center"></td>
1638 <td class="na" align="center">N/A</td>
Cedric Venet3d658642009-02-14 20:20:19 +00001639 <td></td>
1640</tr>
1641<tr>
1642 <td>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;13.3.3.1 [over.best.ics]</td>
Douglas Gregor46685092009-07-08 10:03:09 +00001643 <td class="na" align="center">N/A</td>
1644 <td class="advanced" align="center"></td>
1645 <td class="advanced" align="center"></td>
1646 <td class="na" align="center">N/A</td>
Cedric Venet3d658642009-02-14 20:20:19 +00001647 <td></td>
1648</tr>
1649<tr>
1650 <td>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;13.3.3.1.1 [over.ics.scs]</td>
Douglas Gregor46685092009-07-08 10:03:09 +00001651 <td class="na" align="center">N/A</td>
1652 <td class="advanced" align="center"></td>
1653 <td class="advanced" align="center"></td>
1654 <td class="na" align="center">N/A</td>
Cedric Venet3d658642009-02-14 20:20:19 +00001655 <td></td>
1656</tr>
1657<tr>
1658 <td>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;13.3.3.1.2 [over.ics.user]</td>
Douglas Gregor46685092009-07-08 10:03:09 +00001659 <td class="na" align="center">N/A</td>
1660 <td class="medium" align="center"></td>
1661 <td class="medium" align="center"></td>
1662 <td class="na" align="center">N/A</td>
Cedric Venet3d658642009-02-14 20:20:19 +00001663 <td></td>
1664</tr>
1665<tr>
1666 <td>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;13.3.3.1.3 [over.ics.ellipsis]</td>
Douglas Gregor46685092009-07-08 10:03:09 +00001667 <td class="na" align="center">N/A</td>
Cedric Venet3d658642009-02-14 20:20:19 +00001668 <td class="medium" align="center"></td>
1669 <td class="medium" align="center"></td>
Douglas Gregor46685092009-07-08 10:03:09 +00001670 <td class="na" align="center">N/A</td>
Cedric Venet3d658642009-02-14 20:20:19 +00001671 <td></td>
1672</tr>
1673<tr>
1674 <td>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;13.3.3.1.4 [over.ics.ref]</td>
Douglas Gregor46685092009-07-08 10:03:09 +00001675 <td class="na" align="center">N/A</td>
Cedric Venet3d658642009-02-14 20:20:19 +00001676 <td class="medium" align="center"></td>
1677 <td class="medium" align="center"></td>
Douglas Gregor46685092009-07-08 10:03:09 +00001678 <td class="na" align="center">N/A</td>
Cedric Venet3d658642009-02-14 20:20:19 +00001679 <td></td>
1680</tr>
1681<tr>
1682 <td>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;13.3.3.2 [over.ics.rank]</td>
Douglas Gregor46685092009-07-08 10:03:09 +00001683 <td class="na" align="center">N/A</td>
Cedric Venet3d658642009-02-14 20:20:19 +00001684 <td class="medium" align="center"></td>
1685 <td class="medium" align="center"></td>
Douglas Gregor46685092009-07-08 10:03:09 +00001686 <td class="na" align="center">N/A</td>
Cedric Venet3d658642009-02-14 20:20:19 +00001687 <td></td>
1688</tr>
1689<tr>
1690 <td>&nbsp;&nbsp;13.4 [over.over]</td>
Douglas Gregor46685092009-07-08 10:03:09 +00001691 <td class="na" align="center">N/A</td>
Douglas Gregor00aeb522009-07-08 23:33:52 +00001692 <td class="advanced" align="center"></td>
1693 <td class="advanced" align="center"></td>
Douglas Gregor46685092009-07-08 10:03:09 +00001694 <td class="na" align="center">N/A</td>
Douglas Gregor00aeb522009-07-08 23:33:52 +00001695 <td>No partial ordering of function templates.</td>
Cedric Venet3d658642009-02-14 20:20:19 +00001696</tr>
1697<tr>
1698 <td>&nbsp;&nbsp;13.5 [over.oper]</td>
1699 <td class="advanced" align="center"></td>
1700 <td class="advanced" align="center"></td>
Douglas Gregor46685092009-07-08 10:03:09 +00001701 <td class="advanced" align="center"></td>
1702 <td class="na" align="center">N/A</td>
1703 <td></td>
Cedric Venet3d658642009-02-14 20:20:19 +00001704</tr>
1705<tr>
1706 <td>&nbsp;&nbsp;&nbsp;&nbsp;13.5.1 [over.unary]</td>
1707 <td class="na" align="center">N/A</td>
1708 <td class="advanced" align="center"></td>
1709 <td class="advanced" align="center"></td>
Douglas Gregor46685092009-07-08 10:03:09 +00001710 <td class="na" align="center">N/A</td>
Cedric Venet3d658642009-02-14 20:20:19 +00001711 <td></td>
1712</tr>
1713<tr>
1714 <td>&nbsp;&nbsp;&nbsp;&nbsp;13.5.2 [over.binary]</td>
1715 <td class="na" align="center">N/A</td>
1716 <td class="advanced" align="center"></td>
1717 <td class="advanced" align="center"></td>
Douglas Gregor46685092009-07-08 10:03:09 +00001718 <td class="na" align="center">N/A</td>
Cedric Venet3d658642009-02-14 20:20:19 +00001719 <td></td>
1720</tr>
1721<tr>
1722 <td>&nbsp;&nbsp;&nbsp;&nbsp;13.5.3 [over.ass]</td>
1723 <td class="na" align="center">N/A</td>
1724 <td class="advanced" align="center"></td>
1725 <td class="advanced" align="center"></td>
Douglas Gregor46685092009-07-08 10:03:09 +00001726 <td class="na" align="center">N/A</td>
Cedric Venet3d658642009-02-14 20:20:19 +00001727 <td></td>
1728</tr>
1729<tr>
1730 <td>&nbsp;&nbsp;&nbsp;&nbsp;13.5.4 [over.call]</td>
1731 <td class="na" align="center">N/A</td>
1732 <td class="advanced" align="center"></td>
1733 <td class="advanced" align="center"></td>
Douglas Gregor46685092009-07-08 10:03:09 +00001734 <td class="na" align="center">N/A</td>
Cedric Venet3d658642009-02-14 20:20:19 +00001735 <td></td>
1736</tr>
1737<tr>
1738 <td>&nbsp;&nbsp;&nbsp;&nbsp;13.5.5 [over.sub]</td>
1739 <td class="na" align="center">N/A</td>
1740 <td class="advanced" align="center"></td>
1741 <td class="advanced" align="center"></td>
Douglas Gregor46685092009-07-08 10:03:09 +00001742 <td class="na" align="center">N/A</td>
Cedric Venet3d658642009-02-14 20:20:19 +00001743 <td></td>
1744</tr>
1745<tr>
1746 <td>&nbsp;&nbsp;&nbsp;&nbsp;13.5.6 [over.ref]</td>
1747 <td class="na" align="center">N/A</td>
1748 <td class="advanced" align="center"></td>
1749 <td class="advanced" align="center"></td>
Douglas Gregor46685092009-07-08 10:03:09 +00001750 <td class="na" align="center">N/A</td>
Cedric Venet3d658642009-02-14 20:20:19 +00001751 <td></td>
1752</tr>
1753<tr>
1754 <td>&nbsp;&nbsp;&nbsp;&nbsp;13.5.7 [over.inc]</td>
1755 <td class="na" align="center">N/A</td>
1756 <td class="advanced" align="center"></td>
1757 <td class="advanced" align="center"></td>
Douglas Gregor46685092009-07-08 10:03:09 +00001758 <td class="na" align="center">N/A</td>
Cedric Venet3d658642009-02-14 20:20:19 +00001759 <td></td>
1760</tr>
1761<tr>
1762 <td>&nbsp;&nbsp;13.6 [over.built]</td>
1763 <td class="na" align="center">N/A</td>
1764 <td class="advanced" align="center"></td>
1765 <td class="medium" align="center"></td>
Douglas Gregor46685092009-07-08 10:03:09 +00001766 <td class="na" align="center">N/A</td>
Douglas Gregor20b3e992009-08-24 17:42:35 +00001767 <td>Missing support for the ->* operator (p11, p16) and support for
Cedric Venet3d658642009-02-14 20:20:19 +00001768 the ternary operator (p24, p25).</td>
1769</tr>
Douglas Gregor07554022009-05-12 17:55:28 +00001770<tr>
1771 <td>14 [temp]</td>
1772 <td class="basic" align="center">N/A</td>
1773 <td class="basic" align="center"></td>
Douglas Gregor46685092009-07-08 10:03:09 +00001774 <td class="basic" align="center"></td>
Douglas Gregor07554022009-05-12 17:55:28 +00001775 <td class="broken" align="center"></td>
1776 <td></td>
1777</tr>
1778<tr>
1779 <td>&nbsp;&nbsp;14.1 [temp.param]</td>
1780 <td class="complete" align="center">&#x2713;</td>
1781 <td class="complete" align="center">&#x2713;</td>
1782 <td class="medium" align="center"></td>
1783 <td class="na" align="center">N/A</td>
1784 <td>Template template parameters cannot actually be used in templates</td>
1785</tr>
1786<tr>
1787 <td>&nbsp;&nbsp;14.2 [temp.names]</td>
1788 <td class="medium" align="center"></td>
1789 <td class="basic" align="center"></td>
1790 <td class="basic" align="center"></td>
1791 <td class="na" align="center">N/A</td>
1792 <td>Cannot name function template specializations</td>
1793</tr>
1794<tr>
1795 <td>&nbsp;&nbsp;14.3 [temp.arg]</td>
1796 <td class="complete" align="center"></td>
1797 <td class="medium" align="center"></td>
1798 <td class="basic" align="center"></td>
1799 <td class="na" align="center">N/A</td>
1800 <td>Cannot name function template specializations</td>
1801</tr>
1802<tr>
1803 <td>&nbsp;&nbsp;&nbsp;&nbsp;14.3.1 [temp.arg.type]</td>
1804 <td class="complete" align="center">&#x2713;</td>
1805 <td class="complete" align="center">&#x2713;</td>
1806 <td class="complete" align="center"></td>
1807 <td class="na" align="center">N/A</td>
1808 <td>Paragraph 3 will be tested elsewhere</td>
1809</tr>
1810<tr>
1811 <td>&nbsp;&nbsp;&nbsp;&nbsp;14.3.2 [temp.arg.nontype]</td>
1812 <td class="complete" align="center"></td>
1813 <td class="complete" align="center"></td>
1814 <td class="complete" align="center"></td>
1815 <td class="na" align="center">N/A</td>
1816 <td></td>
1817</tr>
1818<tr>
1819 <td>&nbsp;&nbsp;&nbsp;&nbsp;14.3.3 [temp.arg.template]</td>
1820 <td class="complete" align="center"></td>
1821 <td class="medium" align="center"></td>
1822 <td class="basic" align="center"></td>
1823 <td class="na" align="center">N/A</td>
1824 <td></td>
1825</tr>
1826<tr>
1827 <td>&nbsp;&nbsp;14.4 [temp.type]</td>
1828 <td class="na" align="center">N/A</td>
1829 <td class="complete" align="center">&#x2713;</td>
1830 <td class="complete" align="center">&#x2713;</td>
1831 <td class="na" align="center">N/A</td>
1832 <td></td>
1833</tr>
1834<tr>
1835 <td>&nbsp;&nbsp;14.5 [temp.decls]</td><td></td><td></td><td></td><td></td><td></td>
1836</tr>
1837<tr>
1838 <td>&nbsp;&nbsp;&nbsp;&nbsp;14.5.1 [temp.class]</td>
Douglas Gregor75b451e2009-07-23 23:58:15 +00001839 <td class="advanced" align="center"></td>
1840 <td class="advanced" align="center"></td>
1841 <td class="advanced" align="center"></td>
Douglas Gregor07554022009-05-12 17:55:28 +00001842 <td class="medium" align="center"></td>
Douglas Gregor75b451e2009-07-23 23:58:15 +00001843 <td></td>
Douglas Gregor07554022009-05-12 17:55:28 +00001844</tr>
1845<tr>
1846 <td>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;14.5.1.1 [temp.mem.func]</td>
Douglas Gregor75b451e2009-07-23 23:58:15 +00001847 <td class="advanced" align="center"></td>
1848 <td class="advanced" align="center"></td>
Douglas Gregorbe1ad922009-08-21 23:27:46 +00001849 <td class="advanced" align="center"></td>
Douglas Gregor07554022009-05-12 17:55:28 +00001850 <td class="medium" align="center"></td>
Douglas Gregorbe1ad922009-08-21 23:27:46 +00001851 <td></td>
Douglas Gregor07554022009-05-12 17:55:28 +00001852</tr>
1853<tr>
1854 <td>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;14.5.1.2 [temp.mem.class]</td>
Douglas Gregor75b451e2009-07-23 23:58:15 +00001855 <td class="advanced" align="center"></td>
1856 <td class="advanced" align="center"></td>
Douglas Gregorbe1ad922009-08-21 23:27:46 +00001857 <td class="advanced" align="center"></td>
Douglas Gregor75b451e2009-07-23 23:58:15 +00001858 <td class="medium" align="center"></td>
1859 <td></td>
Douglas Gregor07554022009-05-12 17:55:28 +00001860</tr>
1861<tr>
1862 <td>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;14.5.1.3 [temp.static]</td>
Douglas Gregor75b451e2009-07-23 23:58:15 +00001863 <td class="advanced" align="center"></td>
1864 <td class="advanced" align="center"></td>
Douglas Gregorbe1ad922009-08-21 23:27:46 +00001865 <td class="advanced" align="center"></td>
Douglas Gregor07554022009-05-12 17:55:28 +00001866 <td class="medium" align="center"></td>
Douglas Gregorbe1ad922009-08-21 23:27:46 +00001867 <td></td>
Douglas Gregor07554022009-05-12 17:55:28 +00001868</tr>
1869<tr>
1870 <td>&nbsp;&nbsp;&nbsp;&nbsp;14.5.2 [temp.mem]</td>
Douglas Gregorbe1ad922009-08-21 23:27:46 +00001871 <td class="basic" align="center"></td>
1872 <td class="basic" align="center"></td>
Douglas Gregor07554022009-05-12 17:55:28 +00001873 <td class="broken" align="center"></td>
1874 <td class="broken" align="center"></td>
1875 <td></td>
1876</tr>
1877<tr>
1878 <td>&nbsp;&nbsp;&nbsp;&nbsp;14.5.3 [temp.friend]</td>
1879 <td class="broken" align="center"></td>
1880 <td class="broken" align="center"></td>
1881 <td class="broken" align="center"></td>
1882 <td class="na" align="center">N/A</td>
1883 <td></td>
1884</tr>
1885<tr>
1886 <td>&nbsp;&nbsp;&nbsp;&nbsp;14.5.4 [temp.class.spec]</td>
Douglas Gregor7e8976b2009-06-12 19:15:38 +00001887 <td class="complete" align="center"></td>
1888 <td class="complete" align="center"></td>
Douglas Gregor16df8502009-06-12 22:21:45 +00001889 <td class="complete" align="center"></td>
Douglas Gregor6aa75cf2009-06-12 22:08:06 +00001890 <td class="na" align="center">N/A</td>
Douglas Gregor07554022009-05-12 17:55:28 +00001891 <td></td>
1892</tr>
1893<tr>
Douglas Gregor6aa75cf2009-06-12 22:08:06 +00001894 <td>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;14.5.4.1 [temp.class.spec.match]</td>
Douglas Gregor7e8976b2009-06-12 19:15:38 +00001895 <td class="na" align="center">N/A</td>
1896 <td class="na" align="center">N/A</td>
Douglas Gregorc1efb3f2009-06-12 22:31:52 +00001897 <td class="complete" align="center"></td>
Douglas Gregor07554022009-05-12 17:55:28 +00001898 <td class="na" align="center">N/A</td>
1899 <td></td>
1900</tr>
1901<tr>
Douglas Gregor6aa75cf2009-06-12 22:08:06 +00001902 <td>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;14.5.4.2 [temp.class.order]</td>
Douglas Gregor07554022009-05-12 17:55:28 +00001903 <td class="broken" align="center"></td>
1904 <td class="broken" align="center"></td>
1905 <td class="broken" align="center"></td>
1906 <td class="na" align="center">N/A</td>
1907 <td></td>
1908</tr>
1909<tr>
1910 <td>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;14.5.5.3 [temp.class.spec.mfunc]</td>
Douglas Gregorbe1ad922009-08-21 23:27:46 +00001911 <td class="advanced" align="center"></td>
1912 <td class="advanced" align="center"></td>
1913 <td class="advanced" align="center"></td>
Douglas Gregor07554022009-05-12 17:55:28 +00001914 <td class="na" align="center">N/A</td>
1915 <td></td>
1916</tr>
1917<tr>
1918 <td>&nbsp;&nbsp;&nbsp;&nbsp;14.5.5 [temp.fct]</td>
Douglas Gregorbe1ad922009-08-21 23:27:46 +00001919 <td class="advanced" align="center"></td>
1920 <td class="advanced" align="center"></td>
1921 <td class="advanced" align="center"></td>
Douglas Gregorb10d2fb2009-06-27 00:08:54 +00001922 <td class="medium" align="center"></td>
Douglas Gregor07554022009-05-12 17:55:28 +00001923 <td></td>
1924</tr>
1925<tr>
1926 <td>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;14.5.5.1 [temp.over.link]</td>
Douglas Gregorb10d2fb2009-06-27 00:08:54 +00001927 <td class="na" align="center"></td>
1928 <td class="complete" align="center"></td>
1929 <td class="medium" align="center"></td>
Douglas Gregor07554022009-05-12 17:55:28 +00001930 <td class="na" align="center">N/A</td>
1931 <td></td>
1932</tr>
1933<tr>
1934 <td>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;14.5.5.2 [temp.func.order]</td>
1935 <td class="broken" align="center"></td>
1936 <td class="broken" align="center"></td>
1937 <td class="broken" align="center"></td>
1938 <td class="na" align="center">N/A</td>
1939 <td></td>
1940</tr>
1941<tr>
1942 <td>&nbsp;&nbsp;14.6 [temp.res]</td>
1943 <td class="basic" align="center"></td>
1944 <td class="basic" align="center"></td>
1945 <td class="basic" align="center"></td>
1946 <td class="na" align="center"></td>
1947 <td></td>
1948</tr>
1949<tr>
1950 <td>&nbsp;&nbsp;&nbsp;&nbsp;14.6.1 [temp.local]</td>
1951 <td class="medium" align="center"></td>
1952 <td class="medium" align="center"></td>
1953 <td class="medium" align="center"></td>
1954 <td class="na" align="center"></td>
1955 <td></td>
1956</tr>
1957<tr>
1958 <td>&nbsp;&nbsp;&nbsp;&nbsp;14.6.2 [temp.dep]</td>
1959 <td class="na" align="center">N/A</td>
1960 <td class="medium" align="center"></td>
1961 <td class="medium" align="center"></td>
1962 <td class="na" align="center"></td>
1963 <td></td>
1964</tr>
1965<tr>
1966 <td>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;14.6.2.1 [temp.dep.type]</td>
1967 <td class="na" align="center">N/A</td>
1968 <td class="medium" align="center"></td>
1969 <td class="medium" align="center"></td>
1970 <td class="na" align="center"></td>
1971 <td></td>
1972</tr>
1973<tr>
1974 <td>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;14.6.2.2 [temp.dep.expr]</td>
1975 <td class="na" align="center">N/A</td>
1976 <td class="medium" align="center"></td>
1977 <td class="medium" align="center"></td>
1978 <td class="na" align="center"></td>
1979 <td></td>
1980</tr>
1981<tr>
1982 <td>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;14.6.2.3 [temp.dep.constexpr]</td>
1983 <td class="na" align="center">N/A</td>
1984 <td class="medium" align="center"></td>
1985 <td class="medium" align="center"></td>
1986 <td class="na" align="center"></td>
1987 <td></td>
1988</tr>
1989<tr>
1990 <td>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;14.6.2.4 [temp.dep.temp]</td>
1991 <td class="na" align="center">N/A</td>
1992 <td class="medium" align="center"></td>
1993 <td class="medium" align="center"></td>
1994 <td class="na" align="center"></td>
1995 <td></td>
1996</tr>
1997<tr>
1998 <td>&nbsp;&nbsp;&nbsp;&nbsp;14.6.3 [temp.nondep]</td>
1999 <td class="na" align="center">N/A</td>
2000 <td class="complete" align="center"></td>
2001 <td class="complete" align="center"></td>
2002 <td class="na" align="center"></td>
2003 <td></td>
2004</tr>
2005<tr>
2006 <td>&nbsp;&nbsp;&nbsp;&nbsp;14.6.4 [temp.dep.res]</td>
2007 <td class="na" align="center">N/A</td>
2008 <td class="basic" align="center"></td>
2009 <td class="basic" align="center"></td>
2010 <td class="na" align="center"></td>
2011 <td></td>
2012</tr>
2013<tr>
2014 <td>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;14.6.4.1 [temp.point]</td>
2015 <td class="na" align="center">N/A</td>
Douglas Gregorb10d2fb2009-06-27 00:08:54 +00002016 <td class="basic" align="center"></td>
2017 <td class="basic" align="center"></td>
2018 <td class="basic" align="center"></td>
2019 <td></td>
Douglas Gregor07554022009-05-12 17:55:28 +00002020</tr>
2021<tr>
2022 <td>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;14.6.4.2 [temp.dep.candidate]</td>
2023 <td class="na" align="center">N/A</td>
2024 <td class="basic" align="center"></td>
2025 <td class="basic" align="center"></td>
2026 <td class="na" align="center"></td>
2027 <td>Not restricted to functions with external linkage</td>
2028</tr>
2029<tr>
2030 <td>&nbsp;&nbsp;&nbsp;&nbsp;14.6.5 [temp.inject]</td>
2031 <td class="na" align="center">N/A</td>
2032 <td class="broken" align="center"></td>
2033 <td class="broken" align="center"></td>
2034 <td class="na" align="center"></td>
2035 <td></td>
2036</tr>
2037<tr>
2038 <td>&nbsp;&nbsp;14.7 [temp.spec]</td>
2039 <td class="basic" align="center"></td>
2040 <td class="basic" align="center"></td>
2041 <td class="basic" align="center"></td>
2042 <td class="broken" align="center"></td>
Douglas Gregorbe1ad922009-08-21 23:27:46 +00002043 <td></td>
Douglas Gregor07554022009-05-12 17:55:28 +00002044</tr>
2045<tr>
2046 <td>&nbsp;&nbsp;&nbsp;&nbsp;14.7.1 [temp.inst]</td>
2047 <td class="na" align="center">N/A</td>
2048 <td class="basic" align="center"></td>
2049 <td class="basic" align="center"></td>
Douglas Gregorbe1ad922009-08-21 23:27:46 +00002050 <td class="basic" align="center"></td>
2051 <td></td>
Douglas Gregor07554022009-05-12 17:55:28 +00002052</tr>
2053<tr>
2054 <td>&nbsp;&nbsp;&nbsp;&nbsp;14.7.2 [temp.explicit]</td>
Douglas Gregor4d9a16f2009-05-12 23:25:50 +00002055 <td class="basic" align="center"></td>
2056 <td class="basic" align="center"></td>
Douglas Gregor93dfdb12009-05-13 00:25:59 +00002057 <td class="basic" align="center"></td>
Douglas Gregor07554022009-05-12 17:55:28 +00002058 <td class="broken" align="center"></td>
Douglas Gregorbe1ad922009-08-21 23:27:46 +00002059 <td>Function templates cannot be explicitly instantiated</td>
Douglas Gregor07554022009-05-12 17:55:28 +00002060</tr>
2061<tr>
2062 <td>&nbsp;&nbsp;&nbsp;&nbsp;14.7.3 [temp.expl.spec]</td>
2063 <td class="basic" align="center"></td>
2064 <td class="basic" align="center"></td>
2065 <td class="basic" align="center"></td>
2066 <td class="broken" align="center"></td>
2067 <td>Only class template specialization is available</td>
2068</tr>
2069<tr>
2070 <td>&nbsp;&nbsp;14.8 [temp.fct.spec]</td>
2071 <td class="broken" align="center"></td>
2072 <td class="broken" align="center"></td>
2073 <td class="broken" align="center"></td>
2074 <td class="broken" align="center"></td>
2075 <td></td>
2076</tr>
2077<tr>
2078 <td>&nbsp;&nbsp;&nbsp;&nbsp;14.8.1 [temp.arg.explicit]</td>
Douglas Gregorb10d2fb2009-06-27 00:08:54 +00002079 <td class="basic" align="center"></td>
2080 <td class="basic" align="center"></td>
2081 <td class="basic" align="center"></td>
Douglas Gregorbe1ad922009-08-21 23:27:46 +00002082 <td class="na" align="center"></td>
Douglas Gregor07554022009-05-12 17:55:28 +00002083 <td></td>
2084</tr>
2085<tr>
2086 <td>&nbsp;&nbsp;&nbsp;&nbsp;14.8.2 [temp.deduct]</td>
Douglas Gregor5e9f35c2009-06-14 07:33:30 +00002087 <td class="na" align="center">N/A</td>
2088 <td class="na" align="center">N/A</td>
Douglas Gregorbe1ad922009-08-21 23:27:46 +00002089 <td class="advanced" align="center"></td>
Douglas Gregor5e9f35c2009-06-14 07:33:30 +00002090 <td class="na" align="center">N/A</td>
Douglas Gregor07554022009-05-12 17:55:28 +00002091 <td></td>
2092</tr>
2093<tr>
2094 <td>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;14.8.2.1 [temp.deduct.call]</td>
Douglas Gregorbe1ad922009-08-21 23:27:46 +00002095 <td class="na" align="center"></td>
Douglas Gregorb10d2fb2009-06-27 00:08:54 +00002096 <td class="complete" align="center"></td>
Douglas Gregorbe1ad922009-08-21 23:27:46 +00002097 <td class="advanced" align="center"></td>
Douglas Gregorb10d2fb2009-06-27 00:08:54 +00002098 <td class="na" align="center"></td>
Douglas Gregor07554022009-05-12 17:55:28 +00002099 <td></td>
2100</tr>
2101<tr>
2102 <td>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;14.8.2.2 [temp.deduct.funcaddr]</td>
Douglas Gregor00aeb522009-07-08 23:33:52 +00002103 <td class="na" align="center">N/A</td>
2104 <td class="advanced" align="center"></td>
2105 <td class="advanced" align="center"></td>
2106 <td class="na" align="center">N/A</td>
Douglas Gregor07554022009-05-12 17:55:28 +00002107 <td></td>
2108</tr>
2109<tr>
2110 <td>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;14.8.2.3 [temp.deduct.conv]</td>
Douglas Gregor65ec1fd2009-08-21 23:19:43 +00002111 <td class="na" align="center"></td>
2112 <td class="advanced" align="center"></td>
2113 <td class="medium" align="center"></td>
2114 <td class="na" align="center"></td>
Douglas Gregor07554022009-05-12 17:55:28 +00002115 <td></td>
2116</tr>
2117<tr>
2118 <td>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;14.8.2.4 [temp.deduct.type]</td>
Douglas Gregor7e8976b2009-06-12 19:15:38 +00002119 <td class="na" align="center">N/A</td>
2120 <td class="complete" align="center"></td>
2121 <td class="medium" align="center"></td>
2122 <td class="na" align="center">N/A</td>
Douglas Gregor07554022009-05-12 17:55:28 +00002123 <td></td>
2124</tr>
2125<tr>
2126 <td>&nbsp;&nbsp;&nbsp;&nbsp;14.8.3 [temp.over]</td>
2127 <td class="broken" align="center"></td>
2128 <td class="broken" align="center"></td>
2129 <td class="broken" align="center"></td>
2130 <td class="broken" align="center"></td>
2131 <td></td>
2132</tr>
Sebastian Redlf331fb42009-04-27 18:25:15 +00002133<tr>
2134 <td>15 [except]</td>
Douglas Gregor07554022009-05-12 17:55:28 +00002135 <td class="complete" align="center"></td>
2136 <td class="complete" align="center"></td>
2137 <td class="complete" align="center"></td>
Sebastian Redlf331fb42009-04-27 18:25:15 +00002138 <td></td>
2139 <td></td>
2140</tr>
2141<tr>
2142 <td>&nbsp;&nbsp;15.1 [except.throw]</td>
2143 <td class="na" align="center">N/A</td>
2144 <td class="na" align="center">N/A</td>
Sebastian Redl972041f2009-04-27 20:27:31 +00002145 <td class="advanced" align="center"></td>
Sebastian Redlf331fb42009-04-27 18:25:15 +00002146 <td></td>
Sebastian Redl972041f2009-04-27 20:27:31 +00002147 <td>Does not check for existence of copy constructor and destructor, and some other details</td>
Sebastian Redlf331fb42009-04-27 18:25:15 +00002148</tr>
2149<tr>
2150 <td>&nbsp;&nbsp;15.2 [except.ctor]</td>
2151 <td class="na" align="center">N/A</td>
2152 <td class="na" align="center">N/A</td>
2153 <td class="na" align="center">N/A</td>
2154 <td></td>
2155 <td></td>
2156</tr>
2157<tr>
2158 <td>&nbsp;&nbsp;15.3 [except.handle]</td>
2159 <td class="na" align="center">N/A</td>
2160 <td class="na" align="center">N/A</td>
Sebastian Redl972041f2009-04-27 20:27:31 +00002161 <td class="advanced" align="center"></td>
Sebastian Redlf331fb42009-04-27 18:25:15 +00002162 <td></td>
Sebastian Redl13e88542009-04-27 21:33:24 +00002163 <td>Not all constraints are checked</td>
Sebastian Redlf331fb42009-04-27 18:25:15 +00002164</tr>
2165<tr>
2166 <td>&nbsp;&nbsp;15.4 [except.spec]</td>
Douglas Gregor07554022009-05-12 17:55:28 +00002167 <td class="complete" align="center"></td>
Sebastian Redlf331fb42009-04-27 18:25:15 +00002168 <td></td>
2169 <td></td>
2170 <td></td>
2171 <td></td>
2172</tr>
2173<tr>
2174 <td>&nbsp;&nbsp;15.5 [except.special]</td>
2175 <td class="na" align="center">N/A</td>
2176 <td class="na" align="center">N/A</td>
2177 <td class="na" align="center">N/A</td>
2178 <td class="na" align="center">N/A</td>
2179 <td></td>
2180</tr>
2181<tr>
2182 <td>&nbsp;&nbsp;&nbsp;&nbsp;15.5.1 [except.terminate]</td>
2183 <td class="na" align="center">N/A</td>
2184 <td class="na" align="center">N/A</td>
2185 <td class="na" align="center">N/A</td>
2186 <td class="na" align="center">N/A</td>
2187 <td></td>
2188</tr>
2189<tr>
2190 <td>&nbsp;&nbsp;&nbsp;&nbsp;15.5.2 [except.unexpected]</td>
2191 <td class="na" align="center">N/A</td>
2192 <td class="na" align="center">N/A</td>
2193 <td class="na" align="center">N/A</td>
2194 <td class="na" align="center">N/A</td>
2195 <td></td>
2196</tr>
2197<tr>
2198 <td>&nbsp;&nbsp;&nbsp;&nbsp;15.5.3 [except.uncaught]</td>
2199 <td class="na" align="center">N/A</td>
2200 <td class="na" align="center">N/A</td>
2201 <td class="na" align="center">N/A</td>
2202 <td class="na" align="center">N/A</td>
2203 <td></td>
2204</tr>
2205<tr>
2206 <td>&nbsp;&nbsp;15.6 [except.access]</td>
2207 <td class="na" align="center">N/A</td>
2208 <td class="na" align="center">N/A</td>
Sebastian Redlf331fb42009-04-27 18:25:15 +00002209 <td class="na" align="center">N/A</td>
Sebastian Redl972041f2009-04-27 20:27:31 +00002210 <td class="na" align="center">N/A</td>
2211 <td>Redundant - struck from C++0x</td>
Sebastian Redlf331fb42009-04-27 18:25:15 +00002212</tr>
Cedric Venet3d658642009-02-14 20:20:19 +00002213<tr><td>16 [cpp]</td><td></td><td></td><td></td><td></td><td></td></tr>
2214<tr><td>&nbsp;&nbsp;16.1 [cpp.cond]</td><td></td><td></td><td></td><td></td><td></td></tr>
2215<tr><td>&nbsp;&nbsp;16.2 [cpp.include]</td><td></td><td></td><td></td><td></td><td></td></tr>
2216<tr><td>&nbsp;&nbsp;16.3 [cpp.replace]</td><td></td><td></td><td></td><td></td><td></td></tr>
2217<tr><td>&nbsp;&nbsp;&nbsp;&nbsp;16.3.1 [cpp.subst]</td><td></td><td></td><td></td><td></td><td></td></tr>
2218<tr><td>&nbsp;&nbsp;&nbsp;&nbsp;16.3.2 [cpp.stringize]</td><td></td><td></td><td></td><td></td><td></td></tr>
2219<tr><td>&nbsp;&nbsp;&nbsp;&nbsp;16.3.3 [cpp.concat]</td><td></td><td></td><td></td><td></td><td></td></tr>
2220<tr><td>&nbsp;&nbsp;&nbsp;&nbsp;16.3.4 [cpp.rescan]</td><td></td><td></td><td></td><td></td><td></td></tr>
2221<tr><td>&nbsp;&nbsp;&nbsp;&nbsp;16.3.5 [cpp.scope]</td><td></td><td></td><td></td><td></td><td></td></tr>
2222<tr><td>&nbsp;&nbsp;16.4 [cpp.line]</td><td></td><td></td><td></td><td></td><td></td></tr>
2223<tr><td>&nbsp;&nbsp;16.5 [cpp.error]</td><td></td><td></td><td></td><td></td><td></td></tr>
2224<tr><td>&nbsp;&nbsp;16.6 [cpp.pragma]</td><td></td><td></td><td></td><td></td><td></td></tr>
2225<tr><td>&nbsp;&nbsp;16.7 [cpp.null]</td><td></td><td></td><td></td><td></td><td></td></tr>
2226<tr><td>&nbsp;&nbsp;16.8 [cpp.predefined]</td><td></td><td></td><td></td><td></td><td></td></tr>
2227<tr><td>A [gram]</td><td></td><td></td><td></td><td></td><td></td></tr>
2228<tr><td>&nbsp;&nbsp;A.1 [gram.key]</td><td></td><td></td><td></td><td></td><td></td></tr>
2229<tr><td>&nbsp;&nbsp;A.2 [gram.lex]</td><td></td><td></td><td></td><td></td><td></td></tr>
2230<tr><td>&nbsp;&nbsp;A.3 [gram.basic]</td><td></td><td></td><td></td><td></td><td></td></tr>
2231<tr><td>&nbsp;&nbsp;A.4 [gram.expr]</td><td></td><td></td><td></td><td></td><td></td></tr>
2232<tr><td>&nbsp;&nbsp;A.5 [gram.stmt]</td><td></td><td></td><td></td><td></td><td></td></tr>
2233<tr><td>&nbsp;&nbsp;A.6 [gram.dcl]</td><td></td><td></td><td></td><td></td><td></td></tr>
2234<tr><td>&nbsp;&nbsp;A.7 [gram.decl]</td><td></td><td></td><td></td><td></td><td></td></tr>
2235<tr><td>&nbsp;&nbsp;A.8 [gram.class]</td><td></td><td></td><td></td><td></td><td></td></tr>
2236<tr><td>&nbsp;&nbsp;A.9 [gram.derived]</td><td></td><td></td><td></td><td></td><td></td></tr>
2237<tr><td>&nbsp;&nbsp;A.10 [gram.special]</td><td></td><td></td><td></td><td></td><td></td></tr>
2238<tr><td>&nbsp;&nbsp;A.11 [gram.over]</td><td></td><td></td><td></td><td></td><td></td></tr>
2239<tr><td>&nbsp;&nbsp;A.12 [gram.temp]</td><td></td><td></td><td></td><td></td><td></td></tr>
2240<tr><td>&nbsp;&nbsp;A.13 [gram.except]</td><td></td><td></td><td></td><td></td><td></td></tr>
2241<tr><td>&nbsp;&nbsp;A.14 [gram.cpp]</td><td></td><td></td><td></td><td></td><td></td></tr>
2242<tr><td>B [implimits]</td><td></td><td></td><td></td><td></td><td></td></tr>
2243<tr><td>C [diff]</td><td></td><td></td><td></td><td></td><td></td></tr>
2244<tr><td>&nbsp;&nbsp;C.1 [diff.iso]</td><td></td><td></td><td></td><td></td><td></td></tr>
2245<tr><td>&nbsp;&nbsp;&nbsp;&nbsp;C.1.1 [diff.lex]</td><td></td><td></td><td></td><td></td><td></td></tr>
2246<tr><td>&nbsp;&nbsp;&nbsp;&nbsp;C.1.2 [diff.basic]</td><td></td><td></td><td></td><td></td><td></td></tr>
2247<tr><td>&nbsp;&nbsp;&nbsp;&nbsp;C.1.3 [diff.expr]</td><td></td><td></td><td></td><td></td><td></td></tr>
2248<tr><td>&nbsp;&nbsp;&nbsp;&nbsp;C.1.4 [diff.stat]</td><td></td><td></td><td></td><td></td><td></td></tr>
2249<tr><td>&nbsp;&nbsp;&nbsp;&nbsp;C.1.5 [diff.dcl]</td><td></td><td></td><td></td><td></td><td></td></tr>
2250<tr><td>&nbsp;&nbsp;&nbsp;&nbsp;C.1.6 [diff.decl]</td><td></td><td></td><td></td><td></td><td></td></tr>
2251<tr><td>&nbsp;&nbsp;&nbsp;&nbsp;C.1.7 [diff.class]</td><td></td><td></td><td></td><td></td><td></td></tr>
2252<tr><td>&nbsp;&nbsp;&nbsp;&nbsp;C.1.8 [diff.special]</td><td></td><td></td><td></td><td></td><td></td></tr>
2253<tr><td>&nbsp;&nbsp;&nbsp;&nbsp;C.1.9 [diff.cpp]</td><td></td><td></td><td></td><td></td><td></td></tr>
2254<tr><td>&nbsp;&nbsp;C.2 [diff.library]</td><td></td><td></td><td></td><td></td><td></td></tr>
2255<tr><td>&nbsp;&nbsp;&nbsp;&nbsp;C.2.1 [diff.mods.to.headers]</td><td></td><td></td><td></td><td></td><td></td></tr>
2256<tr><td>&nbsp;&nbsp;&nbsp;&nbsp;C.2.2 [diff.mods.to.definitions]</td><td></td><td></td><td></td><td></td><td></td></tr>
2257<tr><td>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;C.2.2.2 [diff.wchar.t]</td><td></td><td></td><td></td><td></td><td></td></tr>
2258<tr><td>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;C.2.2.3 [diff.header.iso646.h]</td><td></td><td></td><td></td><td></td><td></td></tr>
2259<tr><td>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;C.2.2.4 [diff.null]</td><td></td><td></td><td></td><td></td><td></td></tr>
2260<tr><td>&nbsp;&nbsp;&nbsp;&nbsp;C.2.3 [diff.mods.to.declarations]</td><td></td><td></td><td></td><td></td><td></td></tr>
2261<tr><td>&nbsp;&nbsp;&nbsp;&nbsp;C.2.4 [diff.mods.to.behavior]</td><td></td><td></td><td></td><td></td><td></td></tr>
2262<tr><td>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;C.2.4.1 [diff.offsetof]</td><td></td><td></td><td></td><td></td><td></td></tr>
2263<tr><td>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;C.2.4.2 [diff.malloc]</td><td></td><td></td><td></td><td></td><td></td></tr>
2264<tr><td>D [depr]</td><td></td><td></td><td></td><td></td><td></td></tr>
2265<tr><td>&nbsp;&nbsp;D.1 [depr.incr.bool]</td><td></td><td></td><td></td><td></td><td></td></tr>
2266<tr><td>&nbsp;&nbsp;D.2 [depr.static]</td><td></td><td></td><td></td><td></td><td></td></tr>
2267<tr><td>&nbsp;&nbsp;D.3 [depr.access.dcl]</td><td></td><td></td><td></td><td></td><td></td></tr>
2268<tr><td>&nbsp;&nbsp;D.4 [depr.string]</td><td></td><td></td><td></td><td></td><td></td></tr>
2269<tr><td>&nbsp;&nbsp;D.5 [depr.c.headers]</td><td></td><td></td><td></td><td></td><td></td></tr>
2270<tr><td>E [extendid]</td><td></td><td></td><td></td><td></td><td></td></tr>
2271<tr>
2272 <td colspan="6" align="center" bgcolor="#ffffcc">C++0x Features</td>
Sebastian Redl6e8ed162009-05-10 18:38:11 +00002273</tr>
2274<tr>
Cedric Venet3d658642009-02-14 20:20:19 +00002275 <td>Explicit conversion operators (<a href="http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2007/n2437.pdf">N2437</a>)</td>
Douglas Gregor07554022009-05-12 17:55:28 +00002276 <td class="complete" align="center"></td>
Cedric Venet3d658642009-02-14 20:20:19 +00002277 <td class="medium" align="center"></td>
2278 <td class="advanced" align="center"></td>
2279 <td class="broken"></td>
2280 <td>No name mangling; ASTs don't contain calls to conversion operators</td>
Sebastian Redl6e8ed162009-05-10 18:38:11 +00002281</tr>
2282<tr>
Anders Carlssonc31a0ce2009-03-16 17:28:26 +00002283 <td>Static assertions (<a href="http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2004/n1720.pdf">N1720</a>)</td>
Douglas Gregor07554022009-05-12 17:55:28 +00002284 <td class="complete" align="center"></td>
2285 <td class="complete" align="center"></td>
2286 <td class="complete" align="center"></td>
Anders Carlssonc31a0ce2009-03-16 17:28:26 +00002287 <td class="na">N/A</td>
2288 <td></td>
Sebastian Redl6e8ed162009-05-10 18:38:11 +00002289</tr>
2290<tr>
Sebastian Redl0b5e7fb2009-04-12 17:41:24 +00002291 <td>Deleted functions (<a href="http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2007/n2346.htm">N2346</a>)</td>
Douglas Gregor07554022009-05-12 17:55:28 +00002292 <td class="complete" align="center"></td>
2293 <td class="complete" align="center"></td>
2294 <td class="complete" align="center"></td>
Sebastian Redl0b5e7fb2009-04-12 17:41:24 +00002295 <td class="na">N/A</td>
2296 <td></td>
Sebastian Redl6e8ed162009-05-10 18:38:11 +00002297</tr>
2298<tr>
Sebastian Redl0b5e7fb2009-04-12 17:41:24 +00002299 <td>Rvalue references (<a href="http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2006/n2118.html">N2118</a> + <a href="http://www.open-std.org/JTC1/SC22/WG21/docs/papers/2009/n2831.html">N2831</a>)</td>
Douglas Gregor07554022009-05-12 17:55:28 +00002300 <td class="complete" align="center"></td>
2301 <td class="complete" align="center"></td>
2302 <td class="complete" align="center"></td>
Sebastian Redl0b5e7fb2009-04-12 17:41:24 +00002303 <td class="broken"></td>
2304 <td></td>
Sebastian Redl6e8ed162009-05-10 18:38:11 +00002305</tr>
2306<tr>
2307 <td>nullptr (<a href="http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2007/n2431.pdf">N2431</a>)</td>
Douglas Gregor07554022009-05-12 17:55:28 +00002308 <td class="complete" align="center"></td>
2309 <td class="complete" align="center"></td>
2310 <td class="complete" align="center"></td>
Sebastian Redl6e8ed162009-05-10 18:38:11 +00002311 <td class="broken"></td>
2312 <td></td>
Cedric Venet3d658642009-02-14 20:20:19 +00002313</tr>
Douglas Gregor7420c2d2009-06-15 16:50:45 +00002314<tr>
2315 <td>Right angle brackets (<a href="http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2005/n1757.html">N1757</a>)</td>
2316 <td class="complete" align="center"></td>
2317 <td class="na" align="center">N/A</td>
2318 <td class="na" align="center">N/A</td>
2319 <td class="na">N/A</td>
2320 <td></td>
2321</tr>
Anders Carlsson3eb43a02009-06-24 22:10:19 +00002322<tr>
2323 <td>Decltype (<a href="http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2007/n2343.pdf">N2343</a>)</td>
2324 <td class="complete" align="center">&#x2713;</td>
2325 <td class="complete" align="center">&#x2713;</td>
2326 <td class="complete" align="center">&#x2713;</td>
2327 <td class="na">N/A</td>
2328 <td></td>
2329</tr>
Cedric Venet3d658642009-02-14 20:20:19 +00002330</table>
Douglas Gregor01cf1122009-05-12 18:36:58 +00002331<br />
Cedric Venet3d658642009-02-14 20:20:19 +00002332</div>
2333</body>
2334</html>