blob: d508b50db9fcb6da603f9afcc104f1e059e40e85 [file] [log] [blame]
Argyrios Kyrtzidis84b7a802008-07-02 11:38:59 +00001<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"
2 "http://www.w3.org/TR/html4/strict.dtd">
3<html>
4<head>
5 <META http-equiv="Content-Type" content="text/html; charset=ISO-8859-1" />
Argyrios Kyrtzidis682f77b2008-07-02 13:44:11 +00006 <title>Clang - C++ Support</title>
Argyrios Kyrtzidis84b7a802008-07-02 11:38:59 +00007 <link type="text/css" rel="stylesheet" href="menu.css" />
8 <link type="text/css" rel="stylesheet" href="content.css" />
9 <style type="text/css">
Cedric Venetd60b9272008-11-07 22:24:44 +000010 .na { background-color: #C0C0C0 }
11 .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>
Argyrios Kyrtzidis84b7a802008-07-02 11:38:59 +000017</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<!--*************************************************************************-->
27
28<p>
Argyrios Kyrtzidisb1ca7932008-07-02 15:10:46 +000029This page tracks the status of C++ support in Clang.<br>
30Currently most of the C++ features are missing; here you can find features that are at least partially supported in Clang. </p>
Chris Lattnercdbd0a02008-07-02 16:28:43 +000031
Douglas Gregor456f82d2008-11-04 15:52:45 +000032
33<!-- Within this table: The colors we're using to color-code our level
34of support for a given section:
35
36 White (no background): not considered/tested.
37 #C11B17: Broken.
38 #F88017: Some useful examples work
39 #FDD017: Many examples work
40 #347C17: Nearly everything works
41 #00FF00 + check mark: Implementation complete!
42 -->
43
44<p>The following table is used to help track our implementation
45 progress toward implementing the complete C++03 standard. We use a
46 simple, somewhat arbitrary color-coding scheme to describe the
Sebastian Redl377fa5d2008-12-08 16:24:08 +000047 relative completeness of features by section:</p>
Chris Lattnercdbd0a02008-07-02 16:28:43 +000048
49<table width="689" border="1" cellspacing="0">
Argyrios Kyrtzidis84b7a802008-07-02 11:38:59 +000050 <tr>
Douglas Gregor456f82d2008-11-04 15:52:45 +000051 <th>Not started/not evaluated</th>
52 <th>Not Applicable</th>
53 <th>Broken</th>
54 <th>Some examples work</th>
55 <th>Many examples work</th>
56 <th>Nearly everything works</th>
57 <th>Complete!</th>
Argyrios Kyrtzidis84b7a802008-07-02 11:38:59 +000058 </tr>
59 <tr>
Douglas Gregor456f82d2008-11-04 15:52:45 +000060 <td></td>
Sebastian Redl377fa5d2008-12-08 16:24:08 +000061 <td class="na">N/A</td>
Cedric Venetd60b9272008-11-07 22:24:44 +000062 <td class="broken"></td>
63 <td class="basic"></td>
64 <td class="medium"></td>
65 <td class="advanced"></td>
66 <td class="complete" align="center">&#x2713;</td>
Argyrios Kyrtzidis84b7a802008-07-02 11:38:59 +000067 </tr>
Argyrios Kyrtzidis84b7a802008-07-02 11:38:59 +000068</table>
Douglas Gregor456f82d2008-11-04 15:52:45 +000069
70<p>A feature is "complete" when the appropriate Clang component (Parse, AST,
71Sema, CodeGen) implements the behavior described in all of the
72paragraphs in the relevant C++ standard. Note that many C++ features are
73actually described in several different sections within the standard. The major components are:</p>
74
75<dl>
76 <dt>Parse</dt>
77 <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>
78
79 <dt>AST</dt>
80 <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>
81
82 <dt>Sema</dt>
83 <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>
84
85 <dt>CodeGen</dt>
86 <dd>Clang parses, type-checks, and generates code for this feature, allowing one to compile and execute programs.</dd>
87</dl>
88
89<p>Updates to this table are welcome! Since Clang already supports
90much of C, and therefore much C++, many of the currently-white cells
91could be filled in. If you wish to do so, please compare Clang's
92implementation against the C++ standard and provide a patch that
93updates the table accordingly. Tests for the various features are also
94welcome!</p>
95
96<table width="689" border="1" cellspacing="0">
97 <tr>
98 <th>Section</th>
99 <th>Parse</th>
100 <th>AST</th>
101 <th>Sema</th>
102 <th>CodeGen</th>
103 <th>Notes</th>
104 </tr>
105<tr>
106 <td>2 [lex]</td>
Sebastian Redl377fa5d2008-12-08 16:24:08 +0000107 <td class="complete" align="center">&#x2713;</td>
Cedric Venetd60b9272008-11-07 22:24:44 +0000108 <td class="na">N/A</td>
109 <td class="na">N/A</td>
110 <td class="na">N/A</td>
Douglas Gregor456f82d2008-11-04 15:52:45 +0000111 <td></td>
112</tr>
113<tr>
114 <td>&nbsp;&nbsp;2.1 [lex.phases]</td>
Sebastian Redl377fa5d2008-12-08 16:24:08 +0000115 <td class="advanced" align="center"></td>
Cedric Venetd60b9272008-11-07 22:24:44 +0000116 <td class="na">N/A</td>
117 <td class="na">N/A</td>
118 <td class="na">N/A</td>
Sebastian Redl377fa5d2008-12-08 16:24:08 +0000119 <td>Extended characters aren't handled.</td>
Douglas Gregor456f82d2008-11-04 15:52:45 +0000120</tr>
121<tr>
122 <td>&nbsp;&nbsp;2.2 [lex.charset]</td>
Sebastian Redl8b9ad382008-12-09 14:40:01 +0000123 <td class="basic"></td>
Cedric Venetd60b9272008-11-07 22:24:44 +0000124 <td class="na">N/A</td>
125 <td class="na">N/A</td>
126 <td class="na">N/A</td>
Sebastian Redl377fa5d2008-12-08 16:24:08 +0000127 <td>No support for extended characters.</td>
Douglas Gregor456f82d2008-11-04 15:52:45 +0000128</tr>
129<tr>
130 <td>&nbsp;&nbsp;2.3 [lex.trigraph]</td>
Sebastian Redl377fa5d2008-12-08 16:24:08 +0000131 <td class="complete" align="center">&#x2713;</td>
Cedric Venetd60b9272008-11-07 22:24:44 +0000132 <td class="na">N/A</td>
133 <td class="na">N/A</td>
134 <td class="na">N/A</td>
Douglas Gregor456f82d2008-11-04 15:52:45 +0000135 <td></td>
136</tr>
137<tr>
138 <td>&nbsp;&nbsp;2.4 [lex.pptoken]</td>
Sebastian Redl377fa5d2008-12-08 16:24:08 +0000139 <td class="complete" align="center">&#x2713;</td>
Cedric Venetd60b9272008-11-07 22:24:44 +0000140 <td class="na">N/A</td>
141 <td class="na">N/A</td>
142 <td class="na">N/A</td>
Douglas Gregor456f82d2008-11-04 15:52:45 +0000143 <td></td>
144</tr>
145<tr>
146 <td>&nbsp;&nbsp;2.5 [lex.digraph]</td>
Sebastian Redl377fa5d2008-12-08 16:24:08 +0000147 <td class="complete" align="center">&#x2713;</td>
Cedric Venetd60b9272008-11-07 22:24:44 +0000148 <td class="na">N/A</td>
149 <td class="na">N/A</td>
150 <td class="na">N/A</td>
Douglas Gregor456f82d2008-11-04 15:52:45 +0000151 <td></td>
152</tr>
153<tr>
154 <td>&nbsp;&nbsp;2.6 [lex.token]</td>
Sebastian Redl377fa5d2008-12-08 16:24:08 +0000155 <td class="complete" align="center">&#x2713;</td>
Cedric Venetd60b9272008-11-07 22:24:44 +0000156 <td class="na">N/A</td>
157 <td class="na">N/A</td>
158 <td class="na">N/A</td>
Douglas Gregor456f82d2008-11-04 15:52:45 +0000159 <td></td>
160</tr>
161<tr>
162 <td>&nbsp;&nbsp;2.7 [lex.comment]</td>
Sebastian Redl377fa5d2008-12-08 16:24:08 +0000163 <td class="advanced" align="center"></td>
Douglas Gregor456f82d2008-11-04 15:52:45 +0000164 <td></td>
Cedric Venetd60b9272008-11-07 22:24:44 +0000165 <td class="na">N/A</td>
166 <td class="na">N/A</td>
Sebastian Redl377fa5d2008-12-08 16:24:08 +0000167 <td>NDR "form feed or vtab in comment" is not diagnosed. No AST representation of comments.</td>
Douglas Gregor456f82d2008-11-04 15:52:45 +0000168</tr>
169<tr>
170 <td>&nbsp;&nbsp;2.8 [lex.header]</td>
Sebastian Redl377fa5d2008-12-08 16:24:08 +0000171 <td class="complete" align="center">&#x2713;</td>
Cedric Venetd60b9272008-11-07 22:24:44 +0000172 <td class="na">N/A</td>
173 <td class="na">N/A</td>
174 <td class="na">N/A</td>
Douglas Gregor456f82d2008-11-04 15:52:45 +0000175 <td></td>
176</tr>
177<tr>
178 <td>&nbsp;&nbsp;2.9 [lex.ppnumber]</td>
Sebastian Redl377fa5d2008-12-08 16:24:08 +0000179 <td class="complete" align="center">&#x2713;</td>
Cedric Venetd60b9272008-11-07 22:24:44 +0000180 <td class="na">N/A</td>
181 <td class="na">N/A</td>
182 <td class="na">N/A</td>
Douglas Gregor456f82d2008-11-04 15:52:45 +0000183 <td></td>
184</tr>
185<tr>
186 <td>&nbsp;&nbsp;2.10 [lex.name]</td>
Sebastian Redl377fa5d2008-12-08 16:24:08 +0000187 <td class="advanced" align="center"></td>
Cedric Venetd60b9272008-11-07 22:24:44 +0000188 <td class="na">N/A</td>
189 <td class="na">N/A</td>
190 <td class="na">N/A</td>
Sebastian Redl377fa5d2008-12-08 16:24:08 +0000191 <td>No support for extended characters</td>
Douglas Gregor456f82d2008-11-04 15:52:45 +0000192</tr>
193<tr>
194 <td>&nbsp;&nbsp;2.11 [lex.key]</td>
Sebastian Redl377fa5d2008-12-08 16:24:08 +0000195 <td class="complete" align="center">&#x2713;</td>
Cedric Venetd60b9272008-11-07 22:24:44 +0000196 <td class="na">N/A</td>
197 <td class="na">N/A</td>
198 <td class="na">N/A</td>
Douglas Gregor456f82d2008-11-04 15:52:45 +0000199 <td></td>
200</tr>
201<tr>
202 <td>&nbsp;&nbsp;2.12 [lex.operators]</td>
Sebastian Redl377fa5d2008-12-08 16:24:08 +0000203 <td class="complete" align="center">&#x2713;</td>
Cedric Venetd60b9272008-11-07 22:24:44 +0000204 <td class="na">N/A</td>
205 <td class="na">N/A</td>
206 <td class="na">N/A</td>
Douglas Gregor456f82d2008-11-04 15:52:45 +0000207 <td></td>
208</tr>
209<tr>
210 <td>&nbsp;&nbsp;2.13 [lex.literal]</td>
Sebastian Redl377fa5d2008-12-08 16:24:08 +0000211 <td class="complete" align="center">&#x2713;</td>
Cedric Venetd60b9272008-11-07 22:24:44 +0000212 <td class="na">N/A</td>
213 <td class="na">N/A</td>
214 <td class="na">N/A</td>
Douglas Gregor456f82d2008-11-04 15:52:45 +0000215 <td></td>
216</tr>
217<tr>
218 <td>&nbsp;&nbsp;&nbsp;&nbsp;2.13.1 [lex.icon]</td>
Sebastian Redl377fa5d2008-12-08 16:24:08 +0000219 <td class="complete" align="center">&#x2713;</td>
Cedric Venetd60b9272008-11-07 22:24:44 +0000220 <td class="na">N/A</td>
221 <td class="na">N/A</td>
222 <td class="na">N/A</td>
Douglas Gregor456f82d2008-11-04 15:52:45 +0000223 <td></td>
224</tr>
225<tr>
226 <td>&nbsp;&nbsp;&nbsp;&nbsp;2.13.2 [lex.ccon]</td>
Sebastian Redl377fa5d2008-12-08 16:24:08 +0000227 <td class="advanced" align="center"></td>
Cedric Venetd60b9272008-11-07 22:24:44 +0000228 <td class="na">N/A</td>
229 <td class="na">N/A</td>
230 <td class="na">N/A</td>
Sebastian Redl377fa5d2008-12-08 16:24:08 +0000231 <td>Poor support for extended characters</td>
Douglas Gregor456f82d2008-11-04 15:52:45 +0000232</tr>
233<tr>
234 <td>&nbsp;&nbsp;&nbsp;&nbsp;2.13.3 [lex.fcon]</td>
Sebastian Redl377fa5d2008-12-08 16:24:08 +0000235 <td class="complete" align="center">&#x2713;</td>
Cedric Venetd60b9272008-11-07 22:24:44 +0000236 <td class="na">N/A</td>
237 <td class="na">N/A</td>
238 <td class="na">N/A</td>
Douglas Gregor456f82d2008-11-04 15:52:45 +0000239 <td></td>
240</tr>
241<tr>
242 <td>&nbsp;&nbsp;&nbsp;&nbsp;2.13.4 [lex.string]</td>
Sebastian Redl377fa5d2008-12-08 16:24:08 +0000243 <td class="advanced" align="center"></td>
244 <td class="na">N/A</td>
245 <td class="na">N/A</td>
246 <td class="na">N/A</td>
247 <td>Poor support for extended characters</td>
248</tr>
249<tr>
250 <td>&nbsp;&nbsp;&nbsp;&nbsp;2.13.5 [lex.bool]</td>
251 <td class="complete" align="center">&#x2713;</td>
Cedric Venetd60b9272008-11-07 22:24:44 +0000252 <td class="na">N/A</td>
253 <td class="na">N/A</td>
254 <td class="na">N/A</td>
Douglas Gregor456f82d2008-11-04 15:52:45 +0000255 <td></td>
256</tr>
257<tr>
Sebastian Redl377fa5d2008-12-08 16:24:08 +0000258<td>3 [basic]</td>
259 <td class="na">N/A</td>
Cedric Venetd60b9272008-11-07 22:24:44 +0000260 <td class="na">N/A</td>
261 <td class="na">N/A</td>
262 <td class="na">N/A</td>
Douglas Gregor456f82d2008-11-04 15:52:45 +0000263 <td></td>
264</tr>
Sebastian Redl377fa5d2008-12-08 16:24:08 +0000265<tr>
266 <td>&nbsp;&nbsp;3.1 [basic.def]</td>
267 <td></td>
268 <td></td>
269 <td></td>
270 <td class="na">N/A</td>
271 <td></td>
272</tr>
273<tr>
274 <td>&nbsp;&nbsp;3.2 [basic.def.odr]</td>
275 <td></td>
276 <td></td>
277 <td></td>
278 <td></td>
279 <td></td>
280</tr>
281<tr>
282 <td>&nbsp;&nbsp;3.3 [basic.scope]</td>
283 <td class="na">N/A</td>
284 <td class="na">N/A</td>
285 <td class="complete" align="center">&#x2713;</td>
286 <td class="na">N/A</td>
287 <td></td>
288</tr>
289<tr>
290 <td>&nbsp;&nbsp;&nbsp;&nbsp;3.3.1 [basic.scope.pdecl]</td>
291 <td class="na">N/A</td>
292 <td class="na">N/A</td>
293 <td class="advanced"></td>
294 <td class="na">N/A</td>
295 <td>See PR3184</td>
296</tr>
297<tr>
298 <td>&nbsp;&nbsp;&nbsp;&nbsp;3.3.2 [basic.scope.local]</td>
299 <td class="na">N/A</td>
300 <td class="na">N/A</td>
301 <td class="advanced"></td>
302 <td class="na">N/A</td>
303 <td>try-catch not implemented</td>
304</tr>
305<tr>
306 <td>&nbsp;&nbsp;&nbsp;&nbsp;3.3.3 [basic.scope.proto]</td>
307 <td class="na">N/A</td>
308 <td class="na">N/A</td>
309 <td class="complete" align="center">&#x2713;</td>
310 <td class="na">N/A</td>
311 <td></td>
312</tr>
313<tr>
314 <td>&nbsp;&nbsp;&nbsp;&nbsp;3.3.4 [basic.funscope]</td>
315 <td class="na">N/A</td>
316 <td class="na">N/A</td>
317 <td class="complete" align="center">&#x2713;</td>
318 <td class="na">N/A</td>
319 <td></td>
320</tr>
Douglas Gregor456f82d2008-11-04 15:52:45 +0000321<tr><td>&nbsp;&nbsp;&nbsp;&nbsp;3.3.5 [basic.scope.namespace]</td><td></td><td></td><td></td><td></td><td></td></tr>
322<tr><td>&nbsp;&nbsp;&nbsp;&nbsp;3.3.6 [basic.scope.class]</td><td></td><td></td><td></td><td></td><td></td></tr>
Sebastian Redl377fa5d2008-12-08 16:24:08 +0000323<tr>
324 <td>&nbsp;&nbsp;&nbsp;&nbsp;3.3.7 [basic.scope.hiding]</td>
325 <td class="na">N/A</td>
326 <td class="na">N/A</td>
327 <td class="complete" align="center">&#x2713;</td>
328 <td class="na">N/A</td>
329 <td></td>
330</tr>
331<tr>
332 <td>&nbsp;&nbsp;3.4 [basic.lookup]</td>
333 <td class="na">N/A</td>
334 <td class="na">N/A</td>
335 <td class="complete" align="center">&#x2713;</td>
336 <td class="na">N/A</td>
337 <td></td>
338</tr>
339<tr>
340 <td>&nbsp;&nbsp;&nbsp;&nbsp;3.4.1 [basic.lookup.unqual]</td>
341 <td class="na">N/A</td>
342 <td class="na">N/A</td>
343 <td class="medium"></td>
344 <td class="na">N/A</td>
345 <td>Many cases beyond simple global and function-local lookup don't work</td>
346</tr>
347<tr>
348 <td>&nbsp;&nbsp;&nbsp;&nbsp;3.4.2 [basic.lookup.argdep]</td>
349 <td class="na">N/A</td>
350 <td class="na">N/A</td>
351 <td class="broken"></td>
352 <td class="na">N/A</td>
353 <td></td>
354</tr>
355<tr>
356 <td>&nbsp;&nbsp;&nbsp;&nbsp;3.4.3 [basic.lookup.qual]</td>
357 <td class="na">N/A</td>
358 <td class="na">N/A</td>
359 <td class="advanced"></td>
360 <td class="na">N/A</td>
361 <td>What's the state of namespaces now?</td>
362</tr>
Douglas Gregor456f82d2008-11-04 15:52:45 +0000363<tr><td>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;3.4.3.1 [class.qual]</td><td></td><td></td><td></td><td></td><td></td></tr>
364<tr><td>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;3.4.3.2 [namespace.qual]</td><td></td><td></td><td></td><td></td><td></td></tr>
365<tr><td>&nbsp;&nbsp;&nbsp;&nbsp;3.4.4 [basic.lookup.elab]</td><td></td><td></td><td></td><td></td><td></td></tr>
366<tr><td>&nbsp;&nbsp;&nbsp;&nbsp;3.4.5 [basic.lookup.classref]</td><td></td><td></td><td></td><td></td><td></td></tr>
367<tr><td>&nbsp;&nbsp;&nbsp;&nbsp;3.4.6 [basic.lookup.udir]</td><td></td><td></td><td></td><td></td><td></td></tr>
368<tr><td>&nbsp;&nbsp;3.5 [basic.link]</td><td></td><td></td><td></td><td></td><td></td></tr>
369<tr><td>&nbsp;&nbsp;3.6 [basic.start]</td><td></td><td></td><td></td><td></td><td></td></tr>
370<tr><td>&nbsp;&nbsp;&nbsp;&nbsp;3.6.1 [basic.start.main]</td><td></td><td></td><td></td><td></td><td></td></tr>
371<tr><td>&nbsp;&nbsp;&nbsp;&nbsp;3.6.2 [basic.start.init]</td><td></td><td></td><td></td><td></td><td></td></tr>
372<tr><td>&nbsp;&nbsp;&nbsp;&nbsp;3.6.3 [basic.start.term]</td><td></td><td></td><td></td><td></td><td></td></tr>
373<tr><td>&nbsp;&nbsp;3.7 [basic.stc]</td><td></td><td></td><td></td><td></td><td></td></tr>
374<tr><td>&nbsp;&nbsp;&nbsp;&nbsp;3.7.1 [basic.stc.static]</td><td></td><td></td><td></td><td></td><td></td></tr>
375<tr><td>&nbsp;&nbsp;&nbsp;&nbsp;3.7.2 [basic.stc.auto]</td><td></td><td></td><td></td><td></td><td></td></tr>
376<tr><td>&nbsp;&nbsp;&nbsp;&nbsp;3.7.3 [basic.stc.dynamic]</td><td></td><td></td><td></td><td></td><td></td></tr>
377<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>
378<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>
379<tr><td>&nbsp;&nbsp;&nbsp;&nbsp;3.7.4 [basic.stc.inherit]</td><td></td><td></td><td></td><td></td><td></td></tr>
380<tr><td>&nbsp;&nbsp;3.8 [basic.life]</td><td></td><td></td><td></td><td></td><td></td></tr>
381<tr><td>&nbsp;&nbsp;3.9 [basic.types]</td><td></td><td></td><td></td><td></td><td></td></tr>
382<tr><td>&nbsp;&nbsp;&nbsp;&nbsp;3.9.1 [basic.fundamental]</td><td></td><td></td><td></td><td></td><td></td></tr>
383<tr><td>&nbsp;&nbsp;&nbsp;&nbsp;3.9.2 [basic.compound]</td><td></td><td></td><td></td><td></td><td></td></tr>
384<tr><td>&nbsp;&nbsp;&nbsp;&nbsp;3.9.3 [basic.type.qualifier]</td><td></td><td></td><td></td><td></td><td></td></tr>
385<tr><td>&nbsp;&nbsp;3.10 [basic.lval]</td><td></td><td></td><td></td><td></td><td></td></tr>
386<tr>
387 <td>4 [conv]</td>
Sebastian Redl8b9ad382008-12-09 14:40:01 +0000388 <td class="complete" align="center">&#x2713;</td>
Cedric Venetd60b9272008-11-07 22:24:44 +0000389 <td class="complete" align="center">&#x2713;</td>
390 <td class="complete" align="center">&#x2713;</td>
Douglas Gregor456f82d2008-11-04 15:52:45 +0000391 <td></td>
392 <td></td>
393</tr>
394<tr>
395 <td>&nbsp;&nbsp;4.1 [conv.lval]</td>
Sebastian Redl8b9ad382008-12-09 14:40:01 +0000396 <td class="complete" align="center">&#x2713;</td>
Cedric Venetd60b9272008-11-07 22:24:44 +0000397 <td class="complete" align="center">&#x2713;</td>
398 <td class="advanced" align="center"></td> <!-- p2: sizeof -->
Douglas Gregor456f82d2008-11-04 15:52:45 +0000399 <td></td>
400 <td></td>
401</tr>
402<tr>
403 <td>&nbsp;&nbsp;4.2 [conv.array]</td>
Sebastian Redl8b9ad382008-12-09 14:40:01 +0000404 <td class="complete" align="center">&#x2713;</td>
Cedric Venetd60b9272008-11-07 22:24:44 +0000405 <td class="complete" align="center">&#x2713;</td>
406 <td class="complete" align="center">&#x2713;</td>
Douglas Gregor456f82d2008-11-04 15:52:45 +0000407 <td></td>
408 <td></td>
409</tr>
410<tr>
411 <td>&nbsp;&nbsp;4.3 [conv.func]</td>
Sebastian Redl8b9ad382008-12-09 14:40:01 +0000412 <td class="complete" align="center">&#x2713;</td>
Cedric Venetd60b9272008-11-07 22:24:44 +0000413 <td class="complete" align="center">&#x2713;</td>
Douglas Gregor3f20a682009-01-12 23:20:38 +0000414 <td class="advanced" align="center"></td>
Douglas Gregor456f82d2008-11-04 15:52:45 +0000415 <td></td>
Douglas Gregor3f20a682009-01-12 23:20:38 +0000416 <td></td>
Douglas Gregor456f82d2008-11-04 15:52:45 +0000417</tr>
418<tr>
419 <td>&nbsp;&nbsp;4.4 [conv.qual]</td>
Sebastian Redl8b9ad382008-12-09 14:40:01 +0000420 <td class="complete" align="center">&#x2713;</td>
Cedric Venetd60b9272008-11-07 22:24:44 +0000421 <td class="complete" align="center">&#x2713;</td>
Sebastian Redl51abf6b2009-01-26 00:11:25 +0000422 <td class="complete" align="center">&#x2713;</td>
Douglas Gregor456f82d2008-11-04 15:52:45 +0000423 <td></td>
Sebastian Redl51abf6b2009-01-26 00:11:25 +0000424 <td></td>
Douglas Gregor456f82d2008-11-04 15:52:45 +0000425</tr>
426<tr>
427 <td>&nbsp;&nbsp;4.5 [conv.prom]</td>
Sebastian Redl8b9ad382008-12-09 14:40:01 +0000428 <td class="complete" align="center">&#x2713;</td>
Cedric Venetd60b9272008-11-07 22:24:44 +0000429 <td class="complete" align="center">&#x2713;</td>
430 <td class="complete" align="center">&#x2713;</td>
Douglas Gregor456f82d2008-11-04 15:52:45 +0000431 <td></td>
432 <td></td>
433</tr>
434<tr>
435 <td>&nbsp;&nbsp;4.6 [conv.fpprom]</td>
Sebastian Redl8b9ad382008-12-09 14:40:01 +0000436 <td class="complete" align="center">&#x2713;</td>
Cedric Venetd60b9272008-11-07 22:24:44 +0000437 <td class="complete" align="center">&#x2713;</td>
438 <td class="complete" align="center">&#x2713;</td>
Douglas Gregor456f82d2008-11-04 15:52:45 +0000439 <td></td>
440 <td></td>
441</tr>
442<tr>
443 <td>&nbsp;&nbsp;4.7 [conv.integral]</td>
Sebastian Redl8b9ad382008-12-09 14:40:01 +0000444 <td class="complete" align="center">&#x2713;</td>
Cedric Venetd60b9272008-11-07 22:24:44 +0000445 <td class="complete" align="center">&#x2713;</td>
446 <td class="complete" align="center">&#x2713;</td>
Douglas Gregor456f82d2008-11-04 15:52:45 +0000447 <td></td>
448 <td></td>
449</tr>
450<tr>
451 <td>&nbsp;&nbsp;4.8 [conv.double]</td>
Sebastian Redl8b9ad382008-12-09 14:40:01 +0000452 <td class="complete" align="center">&#x2713;</td>
Cedric Venetd60b9272008-11-07 22:24:44 +0000453 <td class="complete" align="center">&#x2713;</td>
454 <td class="complete" align="center">&#x2713;</td>
Douglas Gregor456f82d2008-11-04 15:52:45 +0000455 <td></td>
456 <td></td>
457</tr>
Douglas Gregor456f82d2008-11-04 15:52:45 +0000458<tr>
459 <td>&nbsp;&nbsp;4.9 [conv.fpint]</td>
Cedric Venetd60b9272008-11-07 22:24:44 +0000460 <td class="complete" align="center">&#x2713;</td>
461 <td class="complete" align="center">&#x2713;</td>
462 <td class="complete" align="center">&#x2713;</td>
Douglas Gregor456f82d2008-11-04 15:52:45 +0000463 <td></td>
464 <td></td>
465</tr>
466<tr>
467 <td>&nbsp;&nbsp;4.10 [conv.ptr]</td>
Cedric Venetd60b9272008-11-07 22:24:44 +0000468 <td class="complete" align="center">&#x2713;</td>
469 <td class="complete" align="center">&#x2713;</td>
470 <td class="complete" align="center">&#x2713;</td>
Douglas Gregor456f82d2008-11-04 15:52:45 +0000471 <td></td>
472 <td></td>
473</tr>
474<tr>
475 <td>&nbsp;&nbsp;4.11 [conv.mem]</td>
Cedric Venetd60b9272008-11-07 22:24:44 +0000476 <td class="complete" align="center">&#x2713;</td>
Sebastian Redl51abf6b2009-01-26 00:11:25 +0000477 <td class="complete" align="center">&#x2713;</td>
478 <td class="complete" align="center">&#x2713;</td>
Douglas Gregor456f82d2008-11-04 15:52:45 +0000479 <td></td>
Sebastian Redl51abf6b2009-01-26 00:11:25 +0000480 <td></td>
Douglas Gregor456f82d2008-11-04 15:52:45 +0000481</tr>
482<tr>
483 <td>&nbsp;&nbsp;4.12 [conv.bool]</td>
Cedric Venetd60b9272008-11-07 22:24:44 +0000484 <td class="complete" align="center">&#x2713;</td>
Sebastian Redl8b9ad382008-12-09 14:40:01 +0000485 <td class="complete" align="center">&#x2713;</td>
Sebastian Redl51abf6b2009-01-26 00:11:25 +0000486 <td class="complete" align="center">&#x2713;</td>
Douglas Gregor456f82d2008-11-04 15:52:45 +0000487 <td></td>
Sebastian Redl51abf6b2009-01-26 00:11:25 +0000488 <td></td>
Douglas Gregor456f82d2008-11-04 15:52:45 +0000489</tr>
Douglas Gregor456f82d2008-11-04 15:52:45 +0000490<tr>
Sebastian Redl8b9ad382008-12-09 14:40:01 +0000491 <td>5 [expr]</td>
492 <td class="na">N/A</td>
493 <td class="na">N/A</td>
494 <td class="complete" align="center">&#x2713;</td>
Douglas Gregor456f82d2008-11-04 15:52:45 +0000495 <td></td>
496 <td></td>
497</tr>
Sebastian Redl8b9ad382008-12-09 14:40:01 +0000498<tr>
499 <td>&nbsp;&nbsp;5.1 [expr.prim]</td>
500 <td class="medium" align="center"></td>
501 <td class="medium" align="center"></td>
502 <td class="medium" align="center"></td>
503 <td></td>
504 <td>template-ids are not supported, name lookup is not complete</td>
505</tr>
Douglas Gregor3f20a682009-01-12 23:20:38 +0000506<tr><td>&nbsp;&nbsp;5.2 [expr.post]</td><td></td><td></td><td></td><td></td><td></td></tr>
Douglas Gregor456f82d2008-11-04 15:52:45 +0000507<tr>
508 <td>&nbsp;&nbsp;&nbsp;&nbsp;5.2.1 [expr.sub]</td>
Sebastian Redl8b9ad382008-12-09 14:40:01 +0000509 <td class="complete" align="center">&#x2713;</td>
510 <td class="complete" align="center">&#x2713;</td>
511 <td class="complete" align="center">&#x2713;</td>
Douglas Gregor456f82d2008-11-04 15:52:45 +0000512 <td></td>
513 <td></td>
514</tr>
515<tr>
516 <td>&nbsp;&nbsp;&nbsp;&nbsp;5.2.2 [expr.call]</td>
Sebastian Redl8b9ad382008-12-09 14:40:01 +0000517 <td class="complete" align="center">&#x2713;</td>
518 <td class="complete" align="center">&#x2713;</td>
519 <td class="medium" align="center"></td>
Douglas Gregor456f82d2008-11-04 15:52:45 +0000520 <td></td>
Douglas Gregor3f20a682009-01-12 23:20:38 +0000521 <td>Argument-dependent lookup is unsupported</td>
Douglas Gregor456f82d2008-11-04 15:52:45 +0000522</tr>
523<tr>
524 <td>&nbsp;&nbsp;&nbsp;&nbsp;5.2.3 [expr.type.conv]</td>
Sebastian Redl8b9ad382008-12-09 14:40:01 +0000525 <td class="complete" align="center">&#x2713;</td>
526 <td class="complete" align="center">&#x2713;</td>
527 <td class="basic"></td>
Douglas Gregor456f82d2008-11-04 15:52:45 +0000528 <td></td>
Sebastian Redl8b9ad382008-12-09 14:40:01 +0000529 <td>Only between non-class types</td>
Douglas Gregor456f82d2008-11-04 15:52:45 +0000530</tr>
531<tr>
532 <td>&nbsp;&nbsp;&nbsp;&nbsp;5.2.4 [expr.pseudo]</td>
Sebastian Redl8b9ad382008-12-09 14:40:01 +0000533 <td class="broken"></td>
534 <td class="broken"></td>
535 <td class="broken"></td>
Douglas Gregor456f82d2008-11-04 15:52:45 +0000536 <td></td>
537 <td></td>
538</tr>
539<tr>
540 <td>&nbsp;&nbsp;&nbsp;&nbsp;5.2.5 [expr.ref]</td>
Sebastian Redl8b9ad382008-12-09 14:40:01 +0000541 <td class="complete" align="center">&#x2713;</td>
Douglas Gregor3f20a682009-01-12 23:20:38 +0000542 <td class="medium"></td>
543 <td class="medium"></td>
Douglas Gregor456f82d2008-11-04 15:52:45 +0000544 <td></td>
Douglas Gregor3f20a682009-01-12 23:20:38 +0000545 <td>Cannot look up operator names, qualified-ids, or names in base classes</td>
Douglas Gregor456f82d2008-11-04 15:52:45 +0000546</tr>
547<tr>
548 <td>&nbsp;&nbsp;&nbsp;&nbsp;5.2.6 [expr.post.incr]</td>
Sebastian Redl8b9ad382008-12-09 14:40:01 +0000549 <td class="complete" align="center">&#x2713;</td>
550 <td class="complete" align="center">&#x2713;</td>
Sebastian Redle6d5a4a2008-12-20 09:35:34 +0000551 <td class="complete" align="center">&#x2713;</td>
Douglas Gregor456f82d2008-11-04 15:52:45 +0000552 <td></td>
Sebastian Redle6d5a4a2008-12-20 09:35:34 +0000553 <td></td>
Douglas Gregor456f82d2008-11-04 15:52:45 +0000554</tr>
555<tr>
556 <td>&nbsp;&nbsp;&nbsp;&nbsp;5.2.7 [expr.dynamic.cast]</td>
Sebastian Redl8b9ad382008-12-09 14:40:01 +0000557 <td class="complete" align="center">&#x2713;</td>
558 <td class="complete" align="center">&#x2713;</td>
559 <td class="complete" align="center">&#x2713;</td>
Douglas Gregor456f82d2008-11-04 15:52:45 +0000560 <td></td>
Sebastian Redlffb5b002008-11-08 14:43:13 +0000561 <td></td>
Douglas Gregor456f82d2008-11-04 15:52:45 +0000562</tr>
563<tr>
564 <td>&nbsp;&nbsp;&nbsp;&nbsp;5.2.8 [expr.typeid]</td>
Sebastian Redl8b9ad382008-12-09 14:40:01 +0000565 <td class="complete" align="center">&#x2713;</td>
566 <td class="complete" align="center">&#x2713;</td>
567 <td class="complete" align="center">&#x2713;</td>
Douglas Gregor456f82d2008-11-04 15:52:45 +0000568 <td></td>
Douglas Gregor7ad83902008-11-05 04:29:56 +0000569 <td></td>
Douglas Gregor456f82d2008-11-04 15:52:45 +0000570</tr>
571<tr>
572 <td>&nbsp;&nbsp;&nbsp;&nbsp;5.2.9 [expr.static.cast]</td>
Sebastian Redl8b9ad382008-12-09 14:40:01 +0000573 <td class="complete" align="center">&#x2713;</td>
Sebastian Redl21593ac2009-01-28 18:33:18 +0000574 <td class="complete" align="center">&#x2713;</td>
Cedric Venetd60b9272008-11-07 22:24:44 +0000575 <td class="advanced" align="center"></td>
Douglas Gregor456f82d2008-11-04 15:52:45 +0000576 <td></td>
Sebastian Redl21593ac2009-01-28 18:33:18 +0000577 <td>Some custom conversions don't work.</td>
Douglas Gregor456f82d2008-11-04 15:52:45 +0000578</tr>
579<tr>
580 <td>&nbsp;&nbsp;&nbsp;&nbsp;5.2.10 [expr.reinterpret.cast]</td>
Sebastian Redlf20269b2009-01-26 22:19:12 +0000581 <td class="complete" align="center">&#x2713;</td>
Sebastian Redldb647282009-01-27 23:18:31 +0000582 <td class="complete" align="center">&#x2713;</td>
583 <td class="complete" align="center">&#x2713;</td>
Douglas Gregor456f82d2008-11-04 15:52:45 +0000584 <td></td>
Sebastian Redldb647282009-01-27 23:18:31 +0000585 <td></td>
Douglas Gregor456f82d2008-11-04 15:52:45 +0000586</tr>
587<tr>
588 <td>&nbsp;&nbsp;&nbsp;&nbsp;5.2.11 [expr.const.cast]</td>
Sebastian Redlf20269b2009-01-26 22:19:12 +0000589 <td class="complete" align="center">&#x2713;</td>
590 <td class="complete" align="center">&#x2713;</td>
591 <td class="complete" align="center">&#x2713;</td>
Douglas Gregor456f82d2008-11-04 15:52:45 +0000592 <td></td>
Sebastian Redlf20269b2009-01-26 22:19:12 +0000593 <td></td>
Douglas Gregor456f82d2008-11-04 15:52:45 +0000594</tr>
595<tr><td>&nbsp;&nbsp;5.3 [expr.unary]</td><td></td><td></td><td></td><td></td><td></td></tr>
596<tr><td>&nbsp;&nbsp;&nbsp;&nbsp;5.3.1 [expr.unary.op]</td><td></td><td></td><td></td><td></td><td></td></tr>
Sebastian Redl8b9ad382008-12-09 14:40:01 +0000597<tr>
598 <td>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;5.3.1p1 Unary *</td>
599 <td class="complete" align="center">&#x2713;</td>
600 <td class="complete" align="center">&#x2713;</td>
601 <td class="complete" align="center">&#x2713;</td>
602 <td></td>
603 <td></td>
604</tr>
605<tr>
606 <td>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;5.3.1p2-5 Unary &amp;</td>
607 <td class="complete" align="center">&#x2713;</td>
608 <td class="basic" align="center"></td>
609 <td class="basic" align="center"></td>
610 <td></td>
611 <td>Member pointers not supported in any way</td>
612</tr>
613<tr>
614 <td>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;5.3.1p6 Unary +</td>
615 <td class="complete" align="center">&#x2713;</td>
616 <td class="complete" align="center">&#x2713;</td>
617 <td class="complete" align="center">&#x2713;</td>
618 <td></td>
619 <td></td>
620</tr>
621<tr>
622 <td>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;5.3.1p7 Unary -</td>
623 <td class="complete" align="center">&#x2713;</td>
624 <td class="complete" align="center">&#x2713;</td>
625 <td class="complete" align="center">&#x2713;</td>
626 <td></td>
627 <td></td>
628</tr>
629<tr>
630 <td>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;5.3.1p8 Unary !</td>
631 <td class="complete" align="center">&#x2713;</td>
632 <td class="complete" align="center">&#x2713;</td>
633 <td class="complete" align="center">&#x2713;</td>
634 <td></td>
635 <td></td>
636</tr>
637<tr>
638 <td>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;5.3.1p9 Unary ~</td>
639 <td class="complete" align="center">&#x2713;</td>
640 <td class="complete" align="center">&#x2713;</td>
641 <td class="complete" align="center">&#x2713;</td>
642 <td></td>
643 <td></td>
644</tr>
645<tr>
646 <td>&nbsp;&nbsp;&nbsp;&nbsp;5.3.2 [expr.pre.incr]</td>
647 <td class="complete" align="center">&#x2713;</td>
648 <td class="complete" align="center">&#x2713;</td>
Sebastian Redle6d5a4a2008-12-20 09:35:34 +0000649 <td class="complete" align="center">&#x2713;</td>
Sebastian Redl8b9ad382008-12-09 14:40:01 +0000650 <td></td>
Sebastian Redle6d5a4a2008-12-20 09:35:34 +0000651 <td></td>
Sebastian Redl8b9ad382008-12-09 14:40:01 +0000652</tr>
653<tr>
654 <td>&nbsp;&nbsp;&nbsp;&nbsp;5.3.3 [expr.sizeof]</td>
655 <td class="complete" align="center">&#x2713;</td>
656 <td class="complete" align="center">&#x2713;</td>
657 <td class="complete" align="center">&#x2713;</td>
658 <td></td>
659 <td></td>
660</tr>
Sebastian Redlcee63fb2008-12-02 14:43:59 +0000661<tr>
662 <td>&nbsp;&nbsp;&nbsp;&nbsp;5.3.4 [expr.new]</td>
Sebastian Redl8b9ad382008-12-09 14:40:01 +0000663 <td class="complete" align="center">&#x2713;</td>
664 <td class="complete" align="center">&#x2713;</td>
665 <td class="advanced" align="center"></td>
Sebastian Redlcee63fb2008-12-02 14:43:59 +0000666 <td></td>
Sebastian Redl8b9ad382008-12-09 14:40:01 +0000667 <td>operator delete is not looked up, initialization not quite correct</td>
Sebastian Redlcee63fb2008-12-02 14:43:59 +0000668</tr>
669<tr>
670 <td>&nbsp;&nbsp;&nbsp;&nbsp;5.3.5 [expr.delete]</td>
Sebastian Redl8b9ad382008-12-09 14:40:01 +0000671 <td class="complete" align="center">&#x2713;</td>
672 <td class="complete" align="center">&#x2713;</td>
673 <td class="complete" align="center">&#x2713;</td>
Sebastian Redlcee63fb2008-12-02 14:43:59 +0000674 <td></td>
675 <td></td>
676</tr>
Sebastian Redl8b9ad382008-12-09 14:40:01 +0000677<tr>
678 <td>&nbsp;&nbsp;5.4 [expr.cast]</td>
679 <td class="complete" align="center">&#x2713;</td>
680 <td class="complete" align="center">&#x2713;</td>
681 <td class="medium"></td>
682 <td></td>
683 <td>Too lenient, and may not always have correct semantics</td>
684</tr>
685<tr>
686 <td>&nbsp;&nbsp;5.5 [expr.mptr.oper]</td>
687 <td class="broken"></td>
688 <td class="broken"></td>
689 <td class="broken"></td>
690 <td></td>
691 <td></td>
692</tr>
693<tr>
694 <td>&nbsp;&nbsp;5.6 [expr.mul]</td>
695 <td class="complete" align="center">&#x2713;</td>
696 <td class="complete" align="center">&#x2713;</td>
697 <td class="complete" align="center">&#x2713;</td>
698 <td></td>
699 <td></td>
700</tr>
701<tr>
702 <td>&nbsp;&nbsp;5.7 [expr.add]</td>
703 <td class="complete" align="center">&#x2713;</td>
704 <td class="complete" align="center">&#x2713;</td>
705 <td class="complete" align="center">&#x2713;</td>
706 <td></td>
707 <td></td>
708</tr>
709<tr>
710 <td>&nbsp;&nbsp;5.8 [expr.shift]</td>
711 <td class="complete" align="center">&#x2713;</td>
712 <td class="complete" align="center">&#x2713;</td>
713 <td class="complete" align="center">&#x2713;</td>
714 <td></td>
715 <td></td>
716</tr>
717<tr>
718 <td>&nbsp;&nbsp;5.9 [expr.rel]</td>
719 <td class="complete" align="center">&#x2713;</td>
720 <td class="complete" align="center">&#x2713;</td>
721 <td class="complete" align="center">&#x2713;</td>
722 <td></td>
723 <td></td>
724</tr>
725<tr>
726 <td>&nbsp;&nbsp;5.10 [expr.eq]</td>
727 <td class="complete" align="center">&#x2713;</td>
728 <td class="complete" align="center">&#x2713;</td>
729 <td class="complete" align="center">&#x2713;</td>
730 <td></td>
731 <td></td>
732</tr>
733<tr>
734 <td>&nbsp;&nbsp;5.11 [expr.bit.and]</td>
735 <td class="complete" align="center">&#x2713;</td>
736 <td class="complete" align="center">&#x2713;</td>
737 <td class="complete" align="center">&#x2713;</td>
738 <td></td>
739 <td></td>
740</tr>
741<tr>
742 <td>&nbsp;&nbsp;5.12 [expr.xor]</td>
743 <td class="complete" align="center">&#x2713;</td>
744 <td class="complete" align="center">&#x2713;</td>
745 <td class="complete" align="center">&#x2713;</td>
746 <td></td>
747 <td></td>
748</tr>
749<tr>
750 <td>&nbsp;&nbsp;5.13 [expr.or]</td>
751 <td class="complete" align="center">&#x2713;</td>
752 <td class="complete" align="center">&#x2713;</td>
753 <td class="complete" align="center">&#x2713;</td>
754 <td></td>
755 <td></td>
756</tr>
757<tr>
758 <td>&nbsp;&nbsp;5.14 [expr.log.and]</td>
759 <td class="complete" align="center">&#x2713;</td>
760 <td class="complete" align="center">&#x2713;</td>
761 <td class="complete" align="center">&#x2713;</td>
762 <td></td>
763 <td></td>
764</tr>
765<tr>
766 <td>&nbsp;&nbsp;5.15 [expr.log.or]</td>
767 <td class="complete" align="center">&#x2713;</td>
768 <td class="complete" align="center">&#x2713;</td>
769 <td class="complete" align="center">&#x2713;</td>
770 <td></td>
771 <td></td>
772</tr>
773<tr>
774 <td>&nbsp;&nbsp;5.16 [expr.cond]</td>
775 <td class="complete" align="center">&#x2713;</td>
776 <td class="complete" align="center">&#x2713;</td>
777 <td class="medium" align="center"></td>
778 <td></td>
779 <td>throw expressions not supported, type unification rules are based on C only</td>
780</tr>
781<tr>
782 <td>&nbsp;&nbsp;5.17 [expr.ass]</td>
783 <td class="complete" align="center">&#x2713;</td>
784 <td class="complete" align="center">&#x2713;</td>
785 <td class="complete" align="center">&#x2713;</td>
786 <td></td>
787 <td></td>
788</tr>
789<tr>
790 <td>&nbsp;&nbsp;5.18 [expr.comma]</td>
791 <td class="complete" align="center">&#x2713;</td>
792 <td class="complete" align="center">&#x2713;</td>
793 <td class="complete" align="center">&#x2713;</td>
794 <td></td>
795 <td></td>
796</tr>
797<tr>
798 <td>&nbsp;&nbsp;5.19 [expr.const]</td>
799 <td class="complete" align="center">&#x2713;</td>
800 <td class="complete" align="center">&#x2713;</td>
801 <td class="basic"></td>
802 <td></td>
803 <td>Uses C semantics</td>
804</tr>
Sebastian Redl39e98002008-12-28 17:18:13 +0000805<tr>
806 <td>6 [stmt.stmt]</td>
807 <td class="complete" align="center">&#x2713;</td>
808 <td class="complete" align="center">&#x2713;</td>
809 <td class="complete" align="center">&#x2713;</td>
810 <td></td>
811 <td></td>
812</tr>
813<tr>
814 <td>&nbsp;&nbsp;6.1 [stmt.label]</td>
815 <td class="complete" align="center">&#x2713;</td>
816 <td class="complete" align="center">&#x2713;</td>
817 <td class="complete" align="center">&#x2713;</td>
818 <td></td>
819 <td></td>
820</tr>
821<tr>
822 <td>&nbsp;&nbsp;6.2 [stmt.expr]</td>
823 <td class="complete" align="center">&#x2713;</td>
824 <td class="complete" align="center">&#x2713;</td>
825 <td class="complete" align="center">&#x2713;</td>
826 <td></td>
827 <td></td>
828</tr>
829<tr>
830 <td>&nbsp;&nbsp;6.3 [stmt.block]</td>
831 <td class="complete" align="center">&#x2713;</td>
832 <td class="complete" align="center">&#x2713;</td>
833 <td class="complete" align="center">&#x2713;</td>
834 <td></td>
835 <td></td>
836</tr>
837<tr>
838 <td>&nbsp;&nbsp;6.4 [stmt.select]</td>
839 <td class="complete" align="center">&#x2713;</td>
840 <td class="complete" align="center">&#x2713;</td>
841 <td class="advanced" align="center"></td>
842 <td></td>
843 <td>Conversion of declarations to required types not really supported.</td>
844</tr>
845<tr>
846 <td>&nbsp;&nbsp;&nbsp;&nbsp;6.4.1 [stmt.if]</td>
847 <td class="complete" align="center">&#x2713;</td>
848 <td class="complete" align="center">&#x2713;</td>
849 <td class="complete" align="center">&#x2713;</td>
850 <td></td>
851 <td></td>
852</tr>
853<tr>
854 <td>&nbsp;&nbsp;&nbsp;&nbsp;6.4.2 [stmt.switch]</td>
855 <td class="complete" align="center">&#x2713;</td>
856 <td class="complete" align="center">&#x2713;</td>
857 <td class="complete" align="center">&#x2713;</td>
858 <td></td>
859 <td></td>
860</tr>
861<tr>
862 <td>&nbsp;&nbsp;6.5 [stmt.iter]</td>
863 <td class="complete" align="center">&#x2713;</td>
864 <td class="complete" align="center">&#x2713;</td>
865 <td class="advanced" align="center"></td>
866 <td></td>
867 <td>Conversion of declarations to required types not really supported.</td>
868</tr>
869<tr>
870 <td>&nbsp;&nbsp;&nbsp;&nbsp;6.5.1 [stmt.while]</td>
871 <td class="complete" align="center">&#x2713;</td>
872 <td class="complete" align="center">&#x2713;</td>
873 <td class="complete" align="center">&#x2713;</td>
874 <td></td>
875 <td></td>
876</tr>
877<tr>
878 <td>&nbsp;&nbsp;&nbsp;&nbsp;6.5.2 [stmt.do]</td>
879 <td class="complete" align="center">&#x2713;</td>
880 <td class="complete" align="center">&#x2713;</td>
881 <td class="complete" align="center">&#x2713;</td>
882 <td></td>
883 <td></td>
884</tr>
885<tr>
886 <td>&nbsp;&nbsp;&nbsp;&nbsp;6.5.3 [stmt.for]</td>
887 <td class="complete" align="center">&#x2713;</td>
888 <td class="complete" align="center">&#x2713;</td>
889 <td class="complete" align="center">&#x2713;</td>
890 <td></td>
891 <td></td>
892</tr>
893<tr>
894 <td>&nbsp;&nbsp;6.6 [stmt.jump]</td>
895 <td class="complete" align="center">&#x2713;</td>
896 <td class="complete" align="center">&#x2713;</td>
897 <td class="complete" align="center">&#x2713;</td>
898 <td></td>
899 <td></td>
900</tr>
901<tr>
902 <td>&nbsp;&nbsp;&nbsp;&nbsp;6.6.1 [stmt.break]</td>
903 <td class="complete" align="center">&#x2713;</td>
904 <td class="complete" align="center">&#x2713;</td>
905 <td class="complete" align="center">&#x2713;</td>
906 <td></td>
907 <td></td>
908</tr>
909<tr>
910 <td>&nbsp;&nbsp;&nbsp;&nbsp;6.6.2 [stmt.cont]</td>
911 <td class="complete" align="center">&#x2713;</td>
912 <td class="complete" align="center">&#x2713;</td>
913 <td class="complete" align="center">&#x2713;</td>
914 <td></td>
915 <td></td>
916</tr>
917<tr>
918 <td>&nbsp;&nbsp;&nbsp;&nbsp;6.6.3 [stmt.return]</td>
919 <td class="complete" align="center">&#x2713;</td>
920 <td class="complete" align="center">&#x2713;</td>
921 <td class="complete" align="center">&#x2713;</td>
922 <td></td>
923 <td></td>
924</tr>
925<tr>
926 <td>&nbsp;&nbsp;&nbsp;&nbsp;6.6.4 [stmt.goto]</td>
927 <td class="complete" align="center">&#x2713;</td>
928 <td class="complete" align="center">&#x2713;</td>
929 <td class="complete" align="center">&#x2713;</td>
930 <td></td>
931 <td></td>
932</tr>
933<tr>
934 <td>&nbsp;&nbsp;6.7 [stmt.dcl]</td>
935 <td class="complete" align="center">&#x2713;</td>
936 <td class="complete" align="center">&#x2713;</td>
937 <td class="advanced" align="center"></td>
938 <td></td>
939 <td>Skipping of initialization is not flagged. Existence and accessibility of destructors is not tested for.</td>
940</tr>
941<tr>
942 <td>&nbsp;&nbsp;6.8 [stmt.ambig]</td>
943 <td class="complete" align="center">&#x2713;</td>
944 <td class="complete" align="center">&#x2713;</td>
945 <td class="complete" align="center">&#x2713;</td>
946 <td></td>
Douglas Gregor66973122009-01-28 17:15:10 +0000947 <td></td>
Sebastian Redl39e98002008-12-28 17:18:13 +0000948</tr>
Douglas Gregor456f82d2008-11-04 15:52:45 +0000949<tr><td>7 [dcl.dcl]</td><td></td><td></td><td></td><td></td><td></td></tr>
950<tr><td>&nbsp;&nbsp;7.1 [dcl.spec]</td><td></td><td></td><td></td><td></td><td></td></tr>
951<tr><td>&nbsp;&nbsp;&nbsp;&nbsp;7.1.1 [dcl.stc]</td><td></td><td></td><td></td><td></td><td></td></tr>
952<tr><td>&nbsp;&nbsp;&nbsp;&nbsp;7.1.2 [dcl.fct.spec]</td><td></td><td></td><td></td><td></td><td></td></tr>
Douglas Gregor66973122009-01-28 17:15:10 +0000953<tr>
954 <td>&nbsp;&nbsp;&nbsp;&nbsp;7.1.3 [dcl.typedef]</td>
955 <td class="complete" align="center">&#x2713;</td>
956 <td class="complete" align="center">&#x2713;</td>
957 <td class="complete" align="center">&#x2713;</td>
958 <td class="advanced"></td>
959 <td>Typedefs of anonymous tag types do not use the name of the typedef for linkage purposes.</td>
960</tr>
Douglas Gregor456f82d2008-11-04 15:52:45 +0000961<tr><td>&nbsp;&nbsp;&nbsp;&nbsp;7.1.4 [dcl.friend]</td><td></td><td></td><td></td><td></td><td></td></tr>
962<tr><td>&nbsp;&nbsp;&nbsp;&nbsp;7.1.5 [dcl.type]</td><td></td><td></td><td></td><td></td><td></td></tr>
963<tr><td>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;7.1.5.1 [dcl.type.cv]</td><td></td><td></td><td></td><td></td><td></td></tr>
964<tr><td>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;7.1.5.2 [dcl.type.simple]</td><td></td><td></td><td></td><td></td><td></td></tr>
965<tr><td>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;7.1.5.3 [dcl.type.elab]</td><td></td><td></td><td></td><td></td><td></td></tr>
966<tr><td>&nbsp;&nbsp;7.2 [dcl.enum]</td><td></td><td></td><td></td><td></td><td></td></tr>
967<tr><td>&nbsp;&nbsp;7.3 [basic.namespace]</td><td></td><td></td><td></td><td></td><td></td></tr>
968<tr><td>&nbsp;&nbsp;&nbsp;&nbsp;7.3.1 [namespace.def]</td><td></td><td></td><td></td><td></td><td></td></tr>
969<tr><td>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;7.3.1.1 [namespace.unnamed]</td><td></td><td></td><td></td><td></td><td></td></tr>
970<tr><td>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;7.3.1.2 [namespace.memdef]</td><td></td><td></td><td></td><td></td><td></td></tr>
971<tr><td>&nbsp;&nbsp;&nbsp;&nbsp;7.3.2 [namespace.alias]</td><td></td><td></td><td></td><td></td><td></td></tr>
972<tr><td>&nbsp;&nbsp;&nbsp;&nbsp;7.3.3 [namespace.udecl]</td><td></td><td></td><td></td><td></td><td></td></tr>
Douglas Gregorf780abc2008-12-30 03:27:21 +0000973<tr>
974 <td>&nbsp;&nbsp;&nbsp;&nbsp;7.3.4[namespace.udir]</td>
975 <td class="complete" align="center">&#x2713;</td>
976 <td class="broken" align="center"></td>
977 <td class="broken" align="center"></td>
978 <td class="broken" align="center"></td>
979 <td></td>
980</tr>
Douglas Gregor456f82d2008-11-04 15:52:45 +0000981<tr><td>&nbsp;&nbsp;7.4 [dcl.asm]</td><td></td><td></td><td></td><td></td><td></td></tr>
982<tr><td>&nbsp;&nbsp;7.5 [dcl.link]</td><td></td><td></td><td></td><td></td><td></td></tr>
983<tr><td>8 [dcl.decl]</td><td></td><td></td><td></td><td></td><td></td></tr>
984<tr><td>&nbsp;&nbsp;8.1 [dcl.name]</td><td></td><td></td><td></td><td></td><td></td></tr>
985<tr><td>&nbsp;&nbsp;8.2 [dcl.ambig.res]</td><td></td><td></td><td></td><td></td><td></td></tr>
986<tr><td>&nbsp;&nbsp;8.3 [dcl.meaning]</td><td></td><td></td><td></td><td></td><td></td></tr>
987<tr><td>&nbsp;&nbsp;&nbsp;&nbsp;8.3.1 [dcl.ptr]</td><td></td><td></td><td></td><td></td><td></td></tr>
988<tr><td>&nbsp;&nbsp;&nbsp;&nbsp;8.3.2 [dcl.ref]</td><td></td><td></td><td></td><td></td><td></td></tr>
989<tr><td>&nbsp;&nbsp;&nbsp;&nbsp;8.3.3 [dcl.mptr]</td><td></td><td></td><td></td><td></td><td></td></tr>
990<tr><td>&nbsp;&nbsp;&nbsp;&nbsp;8.3.4 [dcl.array]</td><td></td><td></td><td></td><td></td><td></td></tr>
991<tr><td>&nbsp;&nbsp;&nbsp;&nbsp;8.3.5 [dcl.fct]</td><td></td><td></td><td></td><td></td><td></td></tr>
992<tr>
993 <td>&nbsp;&nbsp;&nbsp;&nbsp;8.3.6 [dcl.fct.default]</td>
Cedric Venetd60b9272008-11-07 22:24:44 +0000994 <td class="advanced" align="center"></td>
995 <td class="advanced" align="center"></td>
Douglas Gregor69497c32008-12-16 00:08:34 +0000996 <td class="advanced" align="center"></td>
Douglas Gregor456f82d2008-11-04 15:52:45 +0000997 <td></td>
Douglas Gregor69497c32008-12-16 00:08:34 +0000998 <td>Missing default arguments for templates.</td>
Douglas Gregor456f82d2008-11-04 15:52:45 +0000999</tr>
1000<tr><td>&nbsp;&nbsp;8.4 [dcl.fct.def]</td><td></td><td></td><td></td><td></td><td></td></tr>
1001<tr><td>&nbsp;&nbsp;8.5 [dcl.init]</td><td></td><td></td><td></td><td></td><td></td></tr>
Douglas Gregor930d8b52009-01-30 22:09:00 +00001002<tr>
1003 <td>&nbsp;&nbsp;&nbsp;&nbsp;8.5.1[dcl.init.aggr]</td>
1004 <td class="advanced" align="center"></td>
1005 <td class="advanced" align="center"></td>
1006 <td class="medium" align="center"></td>
1007 <td class="basic" align="center"></td>
1008 <td>No CodeGen for initializing non-aggregates or dynamic initialization.</td>
1009</tr>
Douglas Gregor456f82d2008-11-04 15:52:45 +00001010<tr><td>&nbsp;&nbsp;&nbsp;&nbsp;8.5.2 [dcl.init.string]</td><td></td><td></td><td></td><td></td><td></td></tr>
Daniel Dunbardac74152008-11-04 18:44:31 +00001011<tr>
Douglas Gregor456f82d2008-11-04 15:52:45 +00001012 <td>&nbsp;&nbsp;&nbsp;&nbsp;8.5.3 [dcl.init.ref]</td>
Cedric Venetd60b9272008-11-07 22:24:44 +00001013 <td class="advanced" align="center"></td>
1014 <td class="advanced" align="center"></td>
1015 <td class="medium" align="center"></td>
1016 <td class="basic" align="center"></td>
Douglas Gregor456f82d2008-11-04 15:52:45 +00001017 <td></td>
1018</tr>
Sebastian Redlab963c62008-11-08 15:40:37 +00001019<tr>
1020 <td>9 [class]</td>
Sebastian Redl9324e582008-11-09 11:32:32 +00001021 <td class="advanced" align="center"></td>
Sebastian Redlab963c62008-11-08 15:40:37 +00001022 <td></td>
1023 <td></td>
1024 <td></td>
Sebastian Redl9324e582008-11-09 11:32:32 +00001025 <td></td>
Sebastian Redlab963c62008-11-08 15:40:37 +00001026</tr>
1027<tr>
1028 <td>&nbsp;&nbsp;9.1 [class.name]</td>
1029 <td class="complete" align="center">&#x2713;</td>
1030 <td></td>
1031 <td></td>
1032 <td></td>
1033 <td></td>
1034</tr>
1035<tr>
1036 <td>&nbsp;&nbsp;9.2 [class.mem]</td>
1037 <td class="advanced" align="center"></td>
1038 <td></td>
1039 <td></td>
1040 <td></td>
Sebastian Redl669d5d72008-11-14 23:42:31 +00001041 <td>No parser support for using declarations, or templates.</td>
Sebastian Redlab963c62008-11-08 15:40:37 +00001042</tr>
1043<tr>
1044 <td>&nbsp;&nbsp;9.3 [class.mfct]</td>
Sebastian Redl9324e582008-11-09 11:32:32 +00001045 <td class="complete" align="center">&#x2713;</td>
Sebastian Redlab963c62008-11-08 15:40:37 +00001046 <td></td>
1047 <td></td>
1048 <td></td>
Sebastian Redl9324e582008-11-09 11:32:32 +00001049 <td></td>
Sebastian Redlab963c62008-11-08 15:40:37 +00001050</tr>
1051<tr>
1052 <td>&nbsp;&nbsp;&nbsp;&nbsp;9.3.1 [class.mfct.non-static]</td>
1053 <td class="complete" align="center">&#x2713;</td>
1054 <td></td>
1055 <td></td>
1056 <td></td>
1057 <td></td>
1058</tr>
1059<tr>
1060 <td>&nbsp;&nbsp;&nbsp;&nbsp;9.3.2 [class.this]</td>
1061 <td class="complete" align="center">&#x2713;</td>
1062 <td></td>
1063 <td></td>
1064 <td></td>
1065 <td></td>
1066</tr>
1067<tr>
1068 <td>&nbsp;&nbsp;9.4 [class.static]</td>
Sebastian Redl9324e582008-11-09 11:32:32 +00001069 <td class="complete" align="center">&#x2713;</td>
Sebastian Redlab963c62008-11-08 15:40:37 +00001070 <td></td>
1071 <td></td>
1072 <td></td>
Sebastian Redl9324e582008-11-09 11:32:32 +00001073 <td></td>
Sebastian Redlab963c62008-11-08 15:40:37 +00001074</tr>
1075<tr>
1076 <td>&nbsp;&nbsp;&nbsp;&nbsp;9.4.1 [class.static.mfct]</td>
1077 <td class="complete" align="center">&#x2713;</td>
1078 <td></td>
1079 <td></td>
1080 <td></td>
1081 <td></td>
1082</tr>
1083<tr>
1084 <td>&nbsp;&nbsp;&nbsp;&nbsp;9.4.2 [class.static.data]</td>
1085 <td class="complete" align="center">&#x2713;</td>
1086 <td></td>
1087 <td></td>
1088 <td></td>
1089 <td></td>
1090</tr>
1091<tr>
1092 <td>&nbsp;&nbsp;9.5 [class.union]</td>
1093 <td class="complete" align="center">&#x2713;</td>
Douglas Gregor6b3945f2009-01-07 19:46:03 +00001094 <td class="complete" align="center">&#x2713;</td>
1095 <td class="medium"></td>
1096 <td class="medium"></td>
1097 <td>Semantic analysis does not yet check all of the requirements placed on the members of unions.</td>
Sebastian Redlab963c62008-11-08 15:40:37 +00001098</tr>
1099<tr>
1100 <td>&nbsp;&nbsp;9.6 [class.bit]</td>
1101 <td class="complete" align="center">&#x2713;</td>
1102 <td></td>
1103 <td></td>
1104 <td></td>
1105 <td></td>
1106</tr>
1107<tr>
1108 <td>&nbsp;&nbsp;9.7 [class.nest]</td>
Sebastian Redl9324e582008-11-09 11:32:32 +00001109 <td class="complete" align="center">&#x2713;</td>
Sebastian Redlab963c62008-11-08 15:40:37 +00001110 <td></td>
1111 <td></td>
1112 <td></td>
Sebastian Redl9324e582008-11-09 11:32:32 +00001113 <td></td>
Sebastian Redlab963c62008-11-08 15:40:37 +00001114</tr>
1115<tr>
1116 <td>&nbsp;&nbsp;9.8 [class.local]</td>
1117 <td class="complete" align="center">&#x2713;</td>
1118 <td></td>
1119 <td></td>
1120 <td></td>
1121 <td></td>
1122</tr>
1123<tr>
1124 <td>&nbsp;&nbsp;9.9 [class.nested.type]</td>
1125 <td class="complete" align="center">&#x2713;</td>
1126 <td></td>
1127 <td></td>
1128 <td></td>
1129 <td></td>
1130</tr>
Douglas Gregor456f82d2008-11-04 15:52:45 +00001131<tr><td>10 [class.derived]</td><td></td><td></td><td></td><td></td><td></td></tr>
1132<tr><td>&nbsp;&nbsp;10.1 [class.mi]</td><td></td><td></td><td></td><td></td><td></td></tr>
1133<tr><td>&nbsp;&nbsp;10.2 [class.member.lookup]</td><td></td><td></td><td></td><td></td><td></td></tr>
1134<tr><td>&nbsp;&nbsp;10.3 [class.virtual]</td><td></td><td></td><td></td><td></td><td></td></tr>
1135<tr><td>&nbsp;&nbsp;10.4 [class.abstract]</td><td></td><td></td><td></td><td></td><td></td></tr>
1136<tr><td>11 [class.access]</td><td></td><td></td><td></td><td></td><td></td></tr>
1137<tr><td>&nbsp;&nbsp;11.1 [class.access.spec]</td><td></td><td></td><td></td><td></td><td></td></tr>
1138<tr><td>&nbsp;&nbsp;11.2 [class.access.base]</td><td></td><td></td><td></td><td></td><td></td></tr>
1139<tr><td>&nbsp;&nbsp;11.3 [class.access.dcl]</td><td></td><td></td><td></td><td></td><td></td></tr>
1140<tr><td>&nbsp;&nbsp;11.4 [class.friend]</td><td></td><td></td><td></td><td></td><td></td></tr>
1141<tr><td>&nbsp;&nbsp;11.5 [class.protected]</td><td></td><td></td><td></td><td></td><td></td></tr>
1142<tr><td>&nbsp;&nbsp;11.6 [class.access.virt]</td><td></td><td></td><td></td><td></td><td></td></tr>
1143<tr><td>&nbsp;&nbsp;11.7 [class.paths]</td><td></td><td></td><td></td><td></td><td></td></tr>
1144<tr><td>&nbsp;&nbsp;11.8 [class.access.nest]</td><td></td><td></td><td></td><td></td><td></td></tr>
1145<tr><td>12 [special]</td><td></td><td></td><td></td><td></td><td></td></tr>
Douglas Gregor42a552f2008-11-05 20:51:48 +00001146<tr>
1147 <td>&nbsp;&nbsp;12.1 [class.ctor]</td>
Cedric Venetd60b9272008-11-07 22:24:44 +00001148 <td class="advanced" align="center"></td>
1149 <td class="medium" align="center"></td>
1150 <td class="basic" align="center"></td>
1151 <td class="broken" align="center"></td>
Douglas Gregor42a552f2008-11-05 20:51:48 +00001152 <td></td>
1153</tr>
Douglas Gregor456f82d2008-11-04 15:52:45 +00001154<tr><td>&nbsp;&nbsp;12.2 [class.temporary]</td><td></td><td></td><td></td><td></td><td></td></tr>
Douglas Gregored1eedd2008-11-07 20:16:04 +00001155<tr>
1156 <td>&nbsp;&nbsp;12.3 [class.conv]</td>
Cedric Venetd60b9272008-11-07 22:24:44 +00001157 <td class="advanced" align="center"></td>
1158 <td class="medium" align="center"></td>
1159 <td class="basic" align="center"></td>
1160 <td class="broken" align="center"></td>
Douglas Gregored1eedd2008-11-07 20:16:04 +00001161 <td></td>
1162</tr>
Douglas Gregor42a552f2008-11-05 20:51:48 +00001163<tr>
1164 <td>&nbsp;&nbsp;&nbsp;&nbsp;12.3.1 [class.conv.ctor]</td>
Cedric Venetd60b9272008-11-07 22:24:44 +00001165 <td class="advanced" align="center"></td>
1166 <td class="medium" align="center"></td>
1167 <td class="medium" align="center"></td>
1168 <td class="broken" align="center"></td>
Douglas Gregor42a552f2008-11-05 20:51:48 +00001169 <td></td>
1170</tr>
Douglas Gregored1eedd2008-11-07 20:16:04 +00001171<tr>
1172 <td>&nbsp;&nbsp;&nbsp;&nbsp;12.3.2 [class.conv.fct]</td>
Cedric Venetd60b9272008-11-07 22:24:44 +00001173 <td class="advanced" align="center"></td>
1174 <td class="medium" align="center"></td>
1175 <td class="basic" align="center"></td>
1176 <td class="broken" align="center"></td>
Douglas Gregored1eedd2008-11-07 20:16:04 +00001177 <td>Conversion functions can be declared and defined, but aren't used for anything.</td>
1178</tr>
Douglas Gregor42a552f2008-11-05 20:51:48 +00001179<tr>
1180 <td>&nbsp;&nbsp;12.4 [class.dtor]</td>
Cedric Venetd60b9272008-11-07 22:24:44 +00001181 <td class="advanced" align="center"></td>
1182 <td class="medium" align="center"></td>
1183 <td class="basic" align="center"></td>
1184 <td class="broken" align="center"></td>
Douglas Gregor42a552f2008-11-05 20:51:48 +00001185 <td>Most of the semantics of destructors are unimplemented.</td>
1186</tr>
Douglas Gregor456f82d2008-11-04 15:52:45 +00001187<tr><td>&nbsp;&nbsp;12.5 [class.free]</td><td></td><td></td><td></td><td></td><td></td></tr>
1188<tr><td>&nbsp;&nbsp;12.6 [class.init]</td><td></td><td></td><td></td><td></td><td></td></tr>
1189<tr><td>&nbsp;&nbsp;&nbsp;&nbsp;12.6.1 [class.expl.init]</td><td></td><td></td><td></td><td></td><td></td></tr>
Douglas Gregor7ad83902008-11-05 04:29:56 +00001190<tr>
1191 <td>&nbsp;&nbsp;&nbsp;&nbsp;12.6.2 [class.base.init]</td>
Cedric Venetd60b9272008-11-07 22:24:44 +00001192 <td class="advanced" align="center"></td>
1193 <td class="medium" align="center"></td>
1194 <td class="basic" align="center"></td>
1195 <td class="broken" align="center"></td>
Douglas Gregor7ad83902008-11-05 04:29:56 +00001196 <td>No actual direct initialization; implicit initialization not checked.</td>
1197</tr>
Douglas Gregor456f82d2008-11-04 15:52:45 +00001198<tr><td>&nbsp;&nbsp;12.7 [class.cdtor]</td><td></td><td></td><td></td><td></td><td></td></tr>
1199<tr><td>&nbsp;&nbsp;12.8 [class.copy]</td><td></td><td></td><td></td><td></td><td></td></tr>
1200<tr><td>13 [over]</td><td></td><td></td><td></td><td></td><td></td></tr>
1201<tr>
1202 <td>&nbsp;&nbsp;13.1 [over.load]</td>
Cedric Venetd60b9272008-11-07 22:24:44 +00001203 <td class="complete" align="center">&#x2713;</td>
1204 <td class="basic" align="center"></td>
1205 <td class="basic" align="center"></td>
1206 <td class="broken" align="center"></td>
Douglas Gregor456f82d2008-11-04 15:52:45 +00001207 <td>Missing name mangling.</td>
1208</tr>
1209<tr>
1210 <td>&nbsp;&nbsp;13.2 [over.dcl]</td>
Cedric Venetd60b9272008-11-07 22:24:44 +00001211 <td class="complete" align="center">&#x2713;</td>
1212 <td class="basic" align="center"></td>
1213 <td class="basic" align="center"></td>
1214 <td class="broken" align="center"></td>
Douglas Gregor456f82d2008-11-04 15:52:45 +00001215 <td></td>
1216</tr>
1217<tr>
1218 <td>&nbsp;&nbsp;13.3 [over.match]</td>
Cedric Venetd60b9272008-11-07 22:24:44 +00001219 <td class="complete" align="center">&#x2713;</td>
1220 <td class="basic" align="center"></td>
1221 <td class="basic" align="center"></td>
1222 <td class="broken" align="center"></td>
Douglas Gregor456f82d2008-11-04 15:52:45 +00001223 <td></td>
1224</tr>
1225<tr>
1226 <td>&nbsp;&nbsp;&nbsp;&nbsp;13.3.1 [over.match.funcs]</td>
Cedric Venetd60b9272008-11-07 22:24:44 +00001227 <td class="complete" align="center">&#x2713;</td>
1228 <td class="basic" align="center"></td>
1229 <td class="basic" align="center"></td>
1230 <td class="broken" align="center"></td>
Douglas Gregor456f82d2008-11-04 15:52:45 +00001231 <td></td>
1232</tr>
1233<tr>
1234 <td>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;13.3.1.1 [over.match.call]</td>
Cedric Venetd60b9272008-11-07 22:24:44 +00001235 <td class="complete" align="center">&#x2713;</td>
1236 <td class="basic" align="center"></td>
1237 <td class="basic" align="center"></td>
1238 <td class="broken" align="center"></td>
Douglas Gregor456f82d2008-11-04 15:52:45 +00001239 <td></td>
1240</tr>
1241<tr>
1242 <td>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;13.3.1.1.1 [over.call.func]</td>
Cedric Venetd60b9272008-11-07 22:24:44 +00001243 <td class="complete" align="center">&#x2713;</td>
1244 <td class="basic" align="center"></td>
1245 <td class="basic" align="center"></td>
1246 <td class="broken" align="center"></td>
Douglas Gregor456f82d2008-11-04 15:52:45 +00001247 <td></td>
1248</tr>
1249<tr>
1250 <td>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;13.3.1.1.2 [over.call.object]</td>
Cedric Venetd60b9272008-11-07 22:24:44 +00001251 <td class="complete" align="center">&#x2713;</td>
Douglas Gregor106c6eb2008-11-19 22:57:39 +00001252 <td class="medium" align="center"></td>
Douglas Gregorf9eb9052008-11-19 21:05:33 +00001253 <td class="advanced" align="center"></td>
Cedric Venetd60b9272008-11-07 22:24:44 +00001254 <td class="broken" align="center"></td>
Douglas Gregor106c6eb2008-11-19 22:57:39 +00001255 <td>Missing AST representation for the implicit conversion to a function reference/pointer</td>
Douglas Gregor456f82d2008-11-04 15:52:45 +00001256</tr>
1257<tr>
1258 <td>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;13.3.1.2 [over.match.oper]</td>
Cedric Venetd60b9272008-11-07 22:24:44 +00001259 <td class="complete" align="center">&#x2713;</td>
Douglas Gregor88b4bf22009-01-13 00:52:54 +00001260 <td class="advanced" align="center"></td>
1261 <td class="advanced" align="center"></td>
Cedric Venetd60b9272008-11-07 22:24:44 +00001262 <td class="broken" align="center"></td>
Douglas Gregor456f82d2008-11-04 15:52:45 +00001263 <td></td>
1264</tr>
1265<tr>
1266 <td>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;13.3.1.3 [over.match.ctor]</td>
Cedric Venetd60b9272008-11-07 22:24:44 +00001267 <td class="complete" align="center">&#x2713;</td>
1268 <td class="basic" align="center"></td>
1269 <td class="basic" align="center"></td>
1270 <td class="broken" align="center"></td>
Douglas Gregor456f82d2008-11-04 15:52:45 +00001271 <td></td>
1272</tr>
1273<tr>
1274 <td>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;13.3.1.4 [over.match.copy]</td>
Cedric Venetd60b9272008-11-07 22:24:44 +00001275 <td class="complete" align="center">&#x2713;</td>
1276 <td class="basic" align="center"></td>
1277 <td class="basic" align="center"></td>
1278 <td class="broken" align="center"></td>
Douglas Gregor456f82d2008-11-04 15:52:45 +00001279 <td></td>
1280</tr>
1281<tr>
1282 <td>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;13.3.1.5 [over.match.conv]</td>
Cedric Venetd60b9272008-11-07 22:24:44 +00001283 <td class="complete" align="center">&#x2713;</td>
1284 <td class="broken" align="center"></td>
1285 <td class="broken" align="center"></td>
1286 <td class="broken" align="center"></td>
Douglas Gregor456f82d2008-11-04 15:52:45 +00001287 <td></td>
1288</tr>
1289<tr>
1290 <td>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;13.3.1.6 [over.match.ref]</td>
Cedric Venetd60b9272008-11-07 22:24:44 +00001291 <td class="complete" align="center">&#x2713;</td>
1292 <td class="basic" align="center"></td>
1293 <td class="basic" align="center"></td>
1294 <td class="broken" align="center"></td>
Douglas Gregor456f82d2008-11-04 15:52:45 +00001295 <td></td>
1296</tr>
1297<tr>
1298 <td>&nbsp;&nbsp;&nbsp;&nbsp;13.3.2 [over.match.viable]</td>
Cedric Venetd60b9272008-11-07 22:24:44 +00001299 <td class="complete" align="center">&#x2713;</td>
1300 <td class="medium" align="center"></td>
1301 <td class="medium" align="center"></td>
1302 <td class="broken" align="center"></td>
Douglas Gregor456f82d2008-11-04 15:52:45 +00001303 <td></td>
1304</tr>
1305<tr>
1306 <td>&nbsp;&nbsp;&nbsp;&nbsp;13.3.3 [over.match.best]</td>
Cedric Venetd60b9272008-11-07 22:24:44 +00001307 <td class="complete" align="center">&#x2713;</td>
1308 <td class="basic" align="center"></td>
1309 <td class="basic" align="center"></td>
1310 <td class="broken" align="center"></td>
Douglas Gregor456f82d2008-11-04 15:52:45 +00001311 <td></td>
1312</tr>
1313<tr>
1314 <td>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;13.3.3.1 [over.best.ics]</td>
Cedric Venetd60b9272008-11-07 22:24:44 +00001315 <td class="complete" align="center">&#x2713;</td>
1316 <td class="medium" align="center"></td>
1317 <td class="medium" align="center"></td>
1318 <td class="broken" align="center"></td>
Douglas Gregor456f82d2008-11-04 15:52:45 +00001319 <td></td>
1320</tr>
1321<tr>
1322 <td>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;13.3.3.1.1 [over.ics.scs]</td>
Cedric Venetd60b9272008-11-07 22:24:44 +00001323 <td class="complete" align="center">&#x2713;</td>
1324 <td class="medium" align="center"></td>
1325 <td class="medium" align="center"></td>
1326 <td class="broken" align="center"></td>
Douglas Gregor456f82d2008-11-04 15:52:45 +00001327 <td></td>
1328</tr>
1329<tr>
1330 <td>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;13.3.3.1.2 [over.ics.user]</td>
Cedric Venetd60b9272008-11-07 22:24:44 +00001331 <td class="complete" align="center">&#x2713;</td>
1332 <td class="basic" align="center"></td>
1333 <td class="basic" align="center"></td>
1334 <td class="broken" align="center"></td>
Douglas Gregor456f82d2008-11-04 15:52:45 +00001335 <td></td>
1336</tr>
1337<tr>
1338 <td>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;13.3.3.1.3 [over.ics.ellipsis]</td>
Cedric Venetd60b9272008-11-07 22:24:44 +00001339 <td class="complete" align="center">&#x2713;</td>
1340 <td class="medium" align="center"></td>
1341 <td class="medium" align="center"></td>
1342 <td class="broken" align="center"></td>
Douglas Gregor456f82d2008-11-04 15:52:45 +00001343 <td></td>
1344</tr>
1345<tr>
1346 <td>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;13.3.3.1.4 [over.ics.ref]</td>
Cedric Venetd60b9272008-11-07 22:24:44 +00001347 <td class="complete" align="center">&#x2713;</td>
1348 <td class="medium" align="center"></td>
1349 <td class="medium" align="center"></td>
1350 <td class="broken" align="center"></td>
Douglas Gregor456f82d2008-11-04 15:52:45 +00001351 <td></td>
1352</tr>
1353<tr>
1354 <td>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;13.3.3.2 [over.ics.rank]</td>
Cedric Venetd60b9272008-11-07 22:24:44 +00001355 <td class="complete" align="center">&#x2713;</td>
1356 <td class="medium" align="center"></td>
1357 <td class="medium" align="center"></td>
1358 <td class="broken" align="center"></td>
Douglas Gregor456f82d2008-11-04 15:52:45 +00001359 <td></td>
1360</tr>
Douglas Gregor904eed32008-11-10 20:40:00 +00001361<tr>
1362 <td>&nbsp;&nbsp;13.4 [over.over]</td>
1363 <td class="advanced" align="center"></td>
1364 <td class="medium" align="center"></td>
1365 <td class="basic" align="center"></td>
1366 <td class="broken" align="center"></td>
1367 <td>Error messages need some work. Without templates or using
1368 declarations, we don't have any ambiguities, so the semantic
1369 analysis is incomplete.</td>
1370</tr>
Douglas Gregor1cd1b1e2008-11-06 22:13:31 +00001371<tr>
1372 <td>&nbsp;&nbsp;13.5 [over.oper]</td>
Cedric Venetd60b9272008-11-07 22:24:44 +00001373 <td class="advanced" align="center"></td>
1374 <td class="advanced" align="center"></td>
1375 <td class="medium" align="center"></td>
1376 <td class="broken" align="center"></td>
Douglas Gregor74253732008-11-19 15:42:04 +00001377 <td>Some overloaded operators can only be called with function syntax, e.g., <code>operator[](x)</code>.</td>
Douglas Gregor1cd1b1e2008-11-06 22:13:31 +00001378</tr>
1379<tr>
1380 <td>&nbsp;&nbsp;&nbsp;&nbsp;13.5.1 [over.unary]</td>
Douglas Gregor74253732008-11-19 15:42:04 +00001381 <td class="na" align="center">N/A</td>
Cedric Venetd60b9272008-11-07 22:24:44 +00001382 <td class="advanced" align="center"></td>
Douglas Gregor74253732008-11-19 15:42:04 +00001383 <td class="advanced" align="center"></td>
Cedric Venetd60b9272008-11-07 22:24:44 +00001384 <td class="broken" align="center"></td>
Douglas Gregor1cd1b1e2008-11-06 22:13:31 +00001385 <td></td>
1386</tr>
1387<tr>
1388 <td>&nbsp;&nbsp;&nbsp;&nbsp;13.5.2 [over.binary]</td>
Douglas Gregor74253732008-11-19 15:42:04 +00001389 <td class="na" align="center">N/A</td>
Cedric Venetd60b9272008-11-07 22:24:44 +00001390 <td class="advanced" align="center"></td>
Douglas Gregor74253732008-11-19 15:42:04 +00001391 <td class="advanced" align="center"></td>
Cedric Venetd60b9272008-11-07 22:24:44 +00001392 <td class="broken" align="center"></td>
Douglas Gregor1cd1b1e2008-11-06 22:13:31 +00001393 <td></td>
1394</tr>
1395<tr>
1396 <td>&nbsp;&nbsp;&nbsp;&nbsp;13.5.3 [over.ass]</td>
Douglas Gregor74253732008-11-19 15:42:04 +00001397 <td class="na" align="center">N/A</td>
Cedric Venetd60b9272008-11-07 22:24:44 +00001398 <td class="advanced" align="center"></td>
Douglas Gregor88b4bf22009-01-13 00:52:54 +00001399 <td class="advanced" align="center"></td>
Cedric Venetd60b9272008-11-07 22:24:44 +00001400 <td class="broken" align="center"></td>
Douglas Gregor1cd1b1e2008-11-06 22:13:31 +00001401 <td></td>
1402</tr>
1403<tr>
1404 <td>&nbsp;&nbsp;&nbsp;&nbsp;13.5.4 [over.call]</td>
Douglas Gregor74253732008-11-19 15:42:04 +00001405 <td class="na" align="center">N/A</td>
Cedric Venetd60b9272008-11-07 22:24:44 +00001406 <td class="advanced" align="center"></td>
Douglas Gregorf9eb9052008-11-19 21:05:33 +00001407 <td class="advanced" align="center"></td>
Cedric Venetd60b9272008-11-07 22:24:44 +00001408 <td class="broken" align="center"></td>
Douglas Gregor1cd1b1e2008-11-06 22:13:31 +00001409 <td></td>
1410</tr>
1411<tr>
1412 <td>&nbsp;&nbsp;&nbsp;&nbsp;13.5.5 [over.sub]</td>
Douglas Gregor74253732008-11-19 15:42:04 +00001413 <td class="na" align="center">N/A</td>
Cedric Venetd60b9272008-11-07 22:24:44 +00001414 <td class="advanced" align="center"></td>
Douglas Gregor337c6b92008-11-19 17:17:41 +00001415 <td class="advanced" align="center"></td>
Cedric Venetd60b9272008-11-07 22:24:44 +00001416 <td class="broken" align="center"></td>
Douglas Gregor1cd1b1e2008-11-06 22:13:31 +00001417 <td></td>
1418</tr>
1419<tr>
1420 <td>&nbsp;&nbsp;&nbsp;&nbsp;13.5.6 [over.ref]</td>
Douglas Gregor74253732008-11-19 15:42:04 +00001421 <td class="na" align="center">N/A</td>
Cedric Venetd60b9272008-11-07 22:24:44 +00001422 <td class="advanced" align="center"></td>
Douglas Gregor01f0fcd2008-11-20 16:46:32 +00001423 <td class="advanced" align="center"></td>
Cedric Venetd60b9272008-11-07 22:24:44 +00001424 <td class="broken" align="center"></td>
Douglas Gregor1cd1b1e2008-11-06 22:13:31 +00001425 <td></td>
1426</tr>
1427<tr>
1428 <td>&nbsp;&nbsp;&nbsp;&nbsp;13.5.7 [over.inc]</td>
Douglas Gregor74253732008-11-19 15:42:04 +00001429 <td class="na" align="center">N/A</td>
Cedric Venetd60b9272008-11-07 22:24:44 +00001430 <td class="advanced" align="center"></td>
Douglas Gregor74253732008-11-19 15:42:04 +00001431 <td class="advanced" align="center"></td>
Cedric Venetd60b9272008-11-07 22:24:44 +00001432 <td class="broken" align="center"></td>
Douglas Gregor1cd1b1e2008-11-06 22:13:31 +00001433 <td></td>
1434</tr>
Douglas Gregor74253732008-11-19 15:42:04 +00001435<tr>
1436 <td>&nbsp;&nbsp;13.6 [over.built]</td>
1437 <td class="na" align="center">N/A</td>
1438 <td class="advanced" align="center"></td>
1439 <td class="medium" align="center"></td>
1440 <td class="broken" align="center"></td>
1441 <td>Missing pointer-to-member versions (p11, p16) and support for
1442 the ternary operator (p24, p25).</td>
1443</tr>
Douglas Gregor456f82d2008-11-04 15:52:45 +00001444<tr><td>14 [temp]</td><td></td><td></td><td></td><td></td><td></td></tr>
1445<tr><td>&nbsp;&nbsp;14.1 [temp.param]</td><td></td><td></td><td></td><td></td><td></td></tr>
1446<tr><td>&nbsp;&nbsp;14.2 [temp.names]</td><td></td><td></td><td></td><td></td><td></td></tr>
1447<tr><td>&nbsp;&nbsp;14.3 [temp.arg]</td><td></td><td></td><td></td><td></td><td></td></tr>
1448<tr><td>&nbsp;&nbsp;&nbsp;&nbsp;14.3.1 [temp.arg.type]</td><td></td><td></td><td></td><td></td><td></td></tr>
1449<tr><td>&nbsp;&nbsp;&nbsp;&nbsp;14.3.2 [temp.arg.nontype]</td><td></td><td></td><td></td><td></td><td></td></tr>
1450<tr><td>&nbsp;&nbsp;&nbsp;&nbsp;14.3.3 [temp.arg.template]</td><td></td><td></td><td></td><td></td><td></td></tr>
1451<tr><td>&nbsp;&nbsp;14.4 [temp.type]</td><td></td><td></td><td></td><td></td><td></td></tr>
1452<tr><td>&nbsp;&nbsp;14.5 [temp.decls]</td><td></td><td></td><td></td><td></td><td></td></tr>
1453<tr><td>&nbsp;&nbsp;&nbsp;&nbsp;14.5.1 [temp.class]</td><td></td><td></td><td></td><td></td><td></td></tr>
1454<tr><td>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;14.5.1.1 [temp.mem.func]</td><td></td><td></td><td></td><td></td><td></td></tr>
1455<tr><td>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;14.5.1.2 [temp.mem.class]</td><td></td><td></td><td></td><td></td><td></td></tr>
1456<tr><td>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;14.5.1.3 [temp.static]</td><td></td><td></td><td></td><td></td><td></td></tr>
1457<tr><td>&nbsp;&nbsp;&nbsp;&nbsp;14.5.2 [temp.mem]</td><td></td><td></td><td></td><td></td><td></td></tr>
1458<tr><td>&nbsp;&nbsp;&nbsp;&nbsp;14.5.3 [temp.friend]</td><td></td><td></td><td></td><td></td><td></td></tr>
1459<tr><td>&nbsp;&nbsp;&nbsp;&nbsp;14.5.4 [temp.class.spec]</td><td></td><td></td><td></td><td></td><td></td></tr>
1460<tr><td>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;14.5.5.1 [temp.class.spec.match]</td><td></td><td></td><td></td><td></td><td></td></tr>
1461<tr><td>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;14.5.5.2 [temp.class.order]</td><td></td><td></td><td></td><td></td><td></td></tr>
1462<tr><td>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;14.5.5.3 [temp.class.spec.mfunc]</td><td></td><td></td><td></td><td></td><td></td></tr>
1463<tr><td>&nbsp;&nbsp;&nbsp;&nbsp;14.5.5 [temp.fct]</td><td></td><td></td><td></td><td></td><td></td></tr>
1464<tr><td>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;14.5.5.1 [temp.over.link]</td><td></td><td></td><td></td><td></td><td></td></tr>
1465<tr><td>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;14.5.5.2 [temp.func.order]</td><td></td><td></td><td></td><td></td><td></td></tr>
1466<tr><td>&nbsp;&nbsp;14.6 [temp.res]</td><td></td><td></td><td></td><td></td><td></td></tr>
1467<tr><td>&nbsp;&nbsp;&nbsp;&nbsp;14.6.1 [temp.local]</td><td></td><td></td><td></td><td></td><td></td></tr>
1468<tr><td>&nbsp;&nbsp;&nbsp;&nbsp;14.6.2 [temp.dep]</td><td></td><td></td><td></td><td></td><td></td></tr>
1469<tr><td>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;14.6.2.1 [temp.dep.type]</td><td></td><td></td><td></td><td></td><td></td></tr>
1470<tr><td>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;14.6.2.2 [temp.dep.expr]</td><td></td><td></td><td></td><td></td><td></td></tr>
1471<tr><td>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;14.6.2.3 [temp.dep.constexpr]</td><td></td><td></td><td></td><td></td><td></td></tr>
1472<tr><td>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;14.6.2.4 [temp.dep.temp]</td><td></td><td></td><td></td><td></td><td></td></tr>
1473<tr><td>&nbsp;&nbsp;&nbsp;&nbsp;14.6.3 [temp.nondep]</td><td></td><td></td><td></td><td></td><td></td></tr>
1474<tr><td>&nbsp;&nbsp;&nbsp;&nbsp;14.6.4 [temp.dep.res]</td><td></td><td></td><td></td><td></td><td></td></tr>
1475<tr><td>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;14.6.4.1 [temp.point]</td><td></td><td></td><td></td><td></td><td></td></tr>
1476<tr><td>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;14.6.4.2 [temp.dep.candidate]</td><td></td><td></td><td></td><td></td><td></td></tr>
1477<tr><td>&nbsp;&nbsp;&nbsp;&nbsp;14.6.5 [temp.inject]</td><td></td><td></td><td></td><td></td><td></td></tr>
1478<tr><td>&nbsp;&nbsp;14.7 [temp.spec]</td><td></td><td></td><td></td><td></td><td></td></tr>
1479<tr><td>&nbsp;&nbsp;&nbsp;&nbsp;14.7.1 [temp.inst]</td><td></td><td></td><td></td><td></td><td></td></tr>
1480<tr><td>&nbsp;&nbsp;&nbsp;&nbsp;14.7.2 [temp.explicit]</td><td></td><td></td><td></td><td></td><td></td></tr>
1481<tr><td>&nbsp;&nbsp;&nbsp;&nbsp;14.7.3 [temp.expl.spec]</td><td></td><td></td><td></td><td></td><td></td></tr>
1482<tr><td>&nbsp;&nbsp;14.8 [temp.fct.spec]</td><td></td><td></td><td></td><td></td><td></td></tr>
1483<tr><td>&nbsp;&nbsp;&nbsp;&nbsp;14.8.1 [temp.arg.explicit]</td><td></td><td></td><td></td><td></td><td></td></tr>
1484<tr><td>&nbsp;&nbsp;&nbsp;&nbsp;14.8.2 [temp.deduct]</td><td></td><td></td><td></td><td></td><td></td></tr>
1485<tr><td>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;14.8.2.1 [temp.deduct.call]</td><td></td><td></td><td></td><td></td><td></td></tr>
1486<tr><td>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;14.8.2.2 [temp.deduct.funcaddr]</td><td></td><td></td><td></td><td></td><td></td></tr>
1487<tr><td>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;14.8.2.3 [temp.deduct.conv]</td><td></td><td></td><td></td><td></td><td></td></tr>
1488<tr><td>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;14.8.2.4 [temp.deduct.type]</td><td></td><td></td><td></td><td></td><td></td></tr>
1489<tr><td>&nbsp;&nbsp;&nbsp;&nbsp;14.8.3 [temp.over]</td><td></td><td></td><td></td><td></td><td></td></tr>
1490<tr><td>15 [except]</td><td></td><td></td><td></td><td></td><td></td></tr>
1491<tr><td>&nbsp;&nbsp;15.1 [except.throw]</td><td></td><td></td><td></td><td></td><td></td></tr>
1492<tr><td>&nbsp;&nbsp;15.2 [except.ctor]</td><td></td><td></td><td></td><td></td><td></td></tr>
1493<tr><td>&nbsp;&nbsp;15.3 [except.handle]</td><td></td><td></td><td></td><td></td><td></td></tr>
1494<tr><td>&nbsp;&nbsp;15.4 [except.spec]</td><td></td><td></td><td></td><td></td><td></td></tr>
1495<tr><td>&nbsp;&nbsp;15.5 [except.special]</td><td></td><td></td><td></td><td></td><td></td></tr>
1496<tr><td>&nbsp;&nbsp;&nbsp;&nbsp;15.5.1 [except.terminate]</td><td></td><td></td><td></td><td></td><td></td></tr>
1497<tr><td>&nbsp;&nbsp;&nbsp;&nbsp;15.5.2 [except.unexpected]</td><td></td><td></td><td></td><td></td><td></td></tr>
1498<tr><td>&nbsp;&nbsp;&nbsp;&nbsp;15.5.3 [except.uncaught]</td><td></td><td></td><td></td><td></td><td></td></tr>
1499<tr><td>&nbsp;&nbsp;15.6 [except.access]</td><td></td><td></td><td></td><td></td><td></td></tr>
1500<tr><td>16 [cpp]</td><td></td><td></td><td></td><td></td><td></td></tr>
1501<tr><td>&nbsp;&nbsp;16.1 [cpp.cond]</td><td></td><td></td><td></td><td></td><td></td></tr>
1502<tr><td>&nbsp;&nbsp;16.2 [cpp.include]</td><td></td><td></td><td></td><td></td><td></td></tr>
1503<tr><td>&nbsp;&nbsp;16.3 [cpp.replace]</td><td></td><td></td><td></td><td></td><td></td></tr>
1504<tr><td>&nbsp;&nbsp;&nbsp;&nbsp;16.3.1 [cpp.subst]</td><td></td><td></td><td></td><td></td><td></td></tr>
1505<tr><td>&nbsp;&nbsp;&nbsp;&nbsp;16.3.2 [cpp.stringize]</td><td></td><td></td><td></td><td></td><td></td></tr>
1506<tr><td>&nbsp;&nbsp;&nbsp;&nbsp;16.3.3 [cpp.concat]</td><td></td><td></td><td></td><td></td><td></td></tr>
1507<tr><td>&nbsp;&nbsp;&nbsp;&nbsp;16.3.4 [cpp.rescan]</td><td></td><td></td><td></td><td></td><td></td></tr>
1508<tr><td>&nbsp;&nbsp;&nbsp;&nbsp;16.3.5 [cpp.scope]</td><td></td><td></td><td></td><td></td><td></td></tr>
1509<tr><td>&nbsp;&nbsp;16.4 [cpp.line]</td><td></td><td></td><td></td><td></td><td></td></tr>
1510<tr><td>&nbsp;&nbsp;16.5 [cpp.error]</td><td></td><td></td><td></td><td></td><td></td></tr>
1511<tr><td>&nbsp;&nbsp;16.6 [cpp.pragma]</td><td></td><td></td><td></td><td></td><td></td></tr>
1512<tr><td>&nbsp;&nbsp;16.7 [cpp.null]</td><td></td><td></td><td></td><td></td><td></td></tr>
1513<tr><td>&nbsp;&nbsp;16.8 [cpp.predefined]</td><td></td><td></td><td></td><td></td><td></td></tr>
1514<tr><td>A [gram]</td><td></td><td></td><td></td><td></td><td></td></tr>
1515<tr><td>&nbsp;&nbsp;A.1 [gram.key]</td><td></td><td></td><td></td><td></td><td></td></tr>
1516<tr><td>&nbsp;&nbsp;A.2 [gram.lex]</td><td></td><td></td><td></td><td></td><td></td></tr>
1517<tr><td>&nbsp;&nbsp;A.3 [gram.basic]</td><td></td><td></td><td></td><td></td><td></td></tr>
1518<tr><td>&nbsp;&nbsp;A.4 [gram.expr]</td><td></td><td></td><td></td><td></td><td></td></tr>
1519<tr><td>&nbsp;&nbsp;A.5 [gram.stmt]</td><td></td><td></td><td></td><td></td><td></td></tr>
1520<tr><td>&nbsp;&nbsp;A.6 [gram.dcl]</td><td></td><td></td><td></td><td></td><td></td></tr>
1521<tr><td>&nbsp;&nbsp;A.7 [gram.decl]</td><td></td><td></td><td></td><td></td><td></td></tr>
1522<tr><td>&nbsp;&nbsp;A.8 [gram.class]</td><td></td><td></td><td></td><td></td><td></td></tr>
1523<tr><td>&nbsp;&nbsp;A.9 [gram.derived]</td><td></td><td></td><td></td><td></td><td></td></tr>
1524<tr><td>&nbsp;&nbsp;A.10 [gram.special]</td><td></td><td></td><td></td><td></td><td></td></tr>
1525<tr><td>&nbsp;&nbsp;A.11 [gram.over]</td><td></td><td></td><td></td><td></td><td></td></tr>
1526<tr><td>&nbsp;&nbsp;A.12 [gram.temp]</td><td></td><td></td><td></td><td></td><td></td></tr>
1527<tr><td>&nbsp;&nbsp;A.13 [gram.except]</td><td></td><td></td><td></td><td></td><td></td></tr>
1528<tr><td>&nbsp;&nbsp;A.14 [gram.cpp]</td><td></td><td></td><td></td><td></td><td></td></tr>
1529<tr><td>B [implimits]</td><td></td><td></td><td></td><td></td><td></td></tr>
1530<tr><td>C [diff]</td><td></td><td></td><td></td><td></td><td></td></tr>
1531<tr><td>&nbsp;&nbsp;C.1 [diff.iso]</td><td></td><td></td><td></td><td></td><td></td></tr>
1532<tr><td>&nbsp;&nbsp;&nbsp;&nbsp;C.1.1 [diff.lex]</td><td></td><td></td><td></td><td></td><td></td></tr>
1533<tr><td>&nbsp;&nbsp;&nbsp;&nbsp;C.1.2 [diff.basic]</td><td></td><td></td><td></td><td></td><td></td></tr>
1534<tr><td>&nbsp;&nbsp;&nbsp;&nbsp;C.1.3 [diff.expr]</td><td></td><td></td><td></td><td></td><td></td></tr>
1535<tr><td>&nbsp;&nbsp;&nbsp;&nbsp;C.1.4 [diff.stat]</td><td></td><td></td><td></td><td></td><td></td></tr>
1536<tr><td>&nbsp;&nbsp;&nbsp;&nbsp;C.1.5 [diff.dcl]</td><td></td><td></td><td></td><td></td><td></td></tr>
1537<tr><td>&nbsp;&nbsp;&nbsp;&nbsp;C.1.6 [diff.decl]</td><td></td><td></td><td></td><td></td><td></td></tr>
1538<tr><td>&nbsp;&nbsp;&nbsp;&nbsp;C.1.7 [diff.class]</td><td></td><td></td><td></td><td></td><td></td></tr>
1539<tr><td>&nbsp;&nbsp;&nbsp;&nbsp;C.1.8 [diff.special]</td><td></td><td></td><td></td><td></td><td></td></tr>
1540<tr><td>&nbsp;&nbsp;&nbsp;&nbsp;C.1.9 [diff.cpp]</td><td></td><td></td><td></td><td></td><td></td></tr>
1541<tr><td>&nbsp;&nbsp;C.2 [diff.library]</td><td></td><td></td><td></td><td></td><td></td></tr>
1542<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>
1543<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>
1544<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>
1545<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>
1546<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>
1547<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>
1548<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>
1549<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>
1550<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>
1551<tr><td>D [depr]</td><td></td><td></td><td></td><td></td><td></td></tr>
1552<tr><td>&nbsp;&nbsp;D.1 [depr.incr.bool]</td><td></td><td></td><td></td><td></td><td></td></tr>
1553<tr><td>&nbsp;&nbsp;D.2 [depr.static]</td><td></td><td></td><td></td><td></td><td></td></tr>
1554<tr><td>&nbsp;&nbsp;D.3 [depr.access.dcl]</td><td></td><td></td><td></td><td></td><td></td></tr>
1555<tr><td>&nbsp;&nbsp;D.4 [depr.string]</td><td></td><td></td><td></td><td></td><td></td></tr>
1556<tr><td>&nbsp;&nbsp;D.5 [depr.c.headers]</td><td></td><td></td><td></td><td></td><td></td></tr>
1557<tr><td>E [extendid]</td><td></td><td></td><td></td><td></td><td></td></tr>
Douglas Gregor09f41cf2009-01-14 15:45:31 +00001558<tr>
1559 <td colspan="6" align="center" bgcolor="#ffffcc">C++0x Features</td>
1560 <tr>
1561 <td>Explicit conversion operators (<a href="http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2007/n2437.pdf">N2437</a>)</td>
1562 <td class="complete" align="center">&#x2713;</td>
1563 <td class="medium" align="center"></td>
1564 <td class="advanced" align="center"></td>
1565 <td class="broken"></td>
1566 <td>No name mangling; ASTs don't contain calls to conversion operators</td>
1567</tr>
1568
Douglas Gregor456f82d2008-11-04 15:52:45 +00001569</table>
1570
Argyrios Kyrtzidis84b7a802008-07-02 11:38:59 +00001571</div>
1572</body>
1573</html>