<p>The following table is used to help track our implementation\r
progress toward implementing the complete C++03 standard. We use a\r
simple, somewhat arbitrary color-coding scheme to describe the\r
- relatively completeness of features by section:</p>\r
+ relative completeness of features by section:</p>\r
\r
<table width="689" border="1" cellspacing="0">\r
<tr>\r
</tr>\r
<tr>\r
<td></td>\r
- <td class="na">N/A</td> \r
+ <td class="na">N/A</td>\r
<td class="broken"></td>\r
<td class="basic"></td>\r
<td class="medium"></td>\r
</tr>\r
<tr>\r
<td>2 [lex]</td>\r
- <td></td>\r
+ <td class="complete" align="center">✓</td>\r
<td class="na">N/A</td>\r
<td class="na">N/A</td>\r
<td class="na">N/A</td>\r
</tr>\r
<tr>\r
<td> 2.1 [lex.phases]</td>\r
- <td></td>\r
+ <td class="advanced" align="center"></td>\r
<td class="na">N/A</td>\r
<td class="na">N/A</td>\r
<td class="na">N/A</td>\r
- <td></td>\r
+ <td>Extended characters aren't handled.</td>\r
</tr>\r
<tr>\r
<td> 2.2 [lex.charset]</td>\r
- <td></td>\r
+ <td class="basic"></td>\r
<td class="na">N/A</td>\r
<td class="na">N/A</td>\r
<td class="na">N/A</td>\r
- <td></td>\r
+ <td>No support for extended characters.</td>\r
</tr>\r
<tr>\r
<td> 2.3 [lex.trigraph]</td>\r
- <td></td>\r
+ <td class="complete" align="center">✓</td>\r
<td class="na">N/A</td>\r
<td class="na">N/A</td>\r
<td class="na">N/A</td>\r
</tr>\r
<tr>\r
<td> 2.4 [lex.pptoken]</td>\r
- <td></td>\r
+ <td class="complete" align="center">✓</td>\r
<td class="na">N/A</td>\r
<td class="na">N/A</td>\r
<td class="na">N/A</td>\r
</tr>\r
<tr>\r
<td> 2.5 [lex.digraph]</td>\r
- <td></td>\r
+ <td class="complete" align="center">✓</td>\r
<td class="na">N/A</td>\r
<td class="na">N/A</td>\r
<td class="na">N/A</td>\r
</tr>\r
<tr>\r
<td> 2.6 [lex.token]</td>\r
- <td></td>\r
+ <td class="complete" align="center">✓</td>\r
<td class="na">N/A</td>\r
<td class="na">N/A</td>\r
<td class="na">N/A</td>\r
</tr>\r
<tr>\r
<td> 2.7 [lex.comment]</td>\r
- <td></td>\r
+ <td class="advanced" align="center"></td>\r
<td></td>\r
<td class="na">N/A</td>\r
<td class="na">N/A</td>\r
- <td></td>\r
+ <td>NDR "form feed or vtab in comment" is not diagnosed. No AST representation of comments.</td>\r
</tr>\r
<tr>\r
<td> 2.8 [lex.header]</td>\r
- <td></td>\r
+ <td class="complete" align="center">✓</td>\r
<td class="na">N/A</td>\r
<td class="na">N/A</td>\r
<td class="na">N/A</td>\r
</tr>\r
<tr>\r
<td> 2.9 [lex.ppnumber]</td>\r
- <td></td>\r
+ <td class="complete" align="center">✓</td>\r
<td class="na">N/A</td>\r
<td class="na">N/A</td>\r
<td class="na">N/A</td>\r
</tr>\r
<tr>\r
<td> 2.10 [lex.name]</td>\r
- <td></td>\r
+ <td class="advanced" align="center"></td>\r
<td class="na">N/A</td>\r
<td class="na">N/A</td>\r
<td class="na">N/A</td>\r
- <td></td>\r
+ <td>No support for extended characters</td>\r
</tr>\r
<tr>\r
<td> 2.11 [lex.key]</td>\r
- <td></td>\r
+ <td class="complete" align="center">✓</td>\r
<td class="na">N/A</td>\r
<td class="na">N/A</td>\r
<td class="na">N/A</td>\r
</tr>\r
<tr>\r
<td> 2.12 [lex.operators]</td>\r
- <td></td>\r
+ <td class="complete" align="center">✓</td>\r
<td class="na">N/A</td>\r
<td class="na">N/A</td>\r
<td class="na">N/A</td>\r
</tr>\r
<tr>\r
<td> 2.13 [lex.literal]</td>\r
- <td></td>\r
+ <td class="complete" align="center">✓</td>\r
<td class="na">N/A</td>\r
<td class="na">N/A</td>\r
<td class="na">N/A</td>\r
</tr>\r
<tr>\r
<td> 2.13.1 [lex.icon]</td>\r
- <td></td>\r
+ <td class="complete" align="center">✓</td>\r
<td class="na">N/A</td>\r
<td class="na">N/A</td>\r
<td class="na">N/A</td>\r
</tr>\r
<tr>\r
<td> 2.13.2 [lex.ccon]</td>\r
- <td></td>\r
+ <td class="advanced" align="center"></td>\r
<td class="na">N/A</td>\r
<td class="na">N/A</td>\r
<td class="na">N/A</td>\r
- <td></td>\r
+ <td>Poor support for extended characters</td>\r
</tr>\r
<tr>\r
<td> 2.13.3 [lex.fcon]</td>\r
- <td></td>\r
+ <td class="complete" align="center">✓</td>\r
<td class="na">N/A</td>\r
<td class="na">N/A</td>\r
<td class="na">N/A</td>\r
</tr>\r
<tr>\r
<td> 2.13.4 [lex.string]</td>\r
+ <td class="advanced" align="center"></td>\r
+ <td class="na">N/A</td>\r
+ <td class="na">N/A</td>\r
+ <td class="na">N/A</td>\r
+ <td>Poor support for extended characters</td>\r
+</tr>\r
+<tr>\r
+ <td> 2.13.5 [lex.bool]</td>\r
+ <td class="complete" align="center">✓</td>\r
+ <td class="na">N/A</td>\r
+ <td class="na">N/A</td>\r
+ <td class="na">N/A</td>\r
<td></td>\r
+</tr>\r
+<tr>\r
+<td>3 [basic]</td>\r
+ <td class="na">N/A</td>\r
<td class="na">N/A</td>\r
<td class="na">N/A</td>\r
<td class="na">N/A</td>\r
<td></td>\r
</tr>\r
<tr>\r
- <td> 2.13.5 [lex.bool]</td>\r
+ <td> 3.1 [basic.def]</td>\r
+ <td></td>\r
+ <td></td>\r
<td></td>\r
<td class="na">N/A</td>\r
+ <td></td>\r
+</tr>\r
+<tr>\r
+ <td> 3.2 [basic.def.odr]</td>\r
+ <td></td>\r
+ <td></td>\r
+ <td></td>\r
+ <td></td>\r
+ <td></td>\r
+</tr>\r
+<tr>\r
+ <td> 3.3 [basic.scope]</td>\r
<td class="na">N/A</td>\r
<td class="na">N/A</td>\r
+ <td class="complete" align="center">✓</td>\r
+ <td class="na">N/A</td>\r
+ <td></td>\r
+</tr>\r
+<tr>\r
+ <td> 3.3.1 [basic.scope.pdecl]</td>\r
+ <td class="na">N/A</td>\r
+ <td class="na">N/A</td>\r
+ <td class="advanced"></td>\r
+ <td class="na">N/A</td>\r
+ <td>See PR3184</td>\r
+</tr>\r
+<tr>\r
+ <td> 3.3.2 [basic.scope.local]</td>\r
+ <td class="na">N/A</td>\r
+ <td class="na">N/A</td>\r
+ <td class="advanced"></td>\r
+ <td class="na">N/A</td>\r
+ <td>try-catch not implemented</td>\r
+</tr>\r
+<tr>\r
+ <td> 3.3.3 [basic.scope.proto]</td>\r
+ <td class="na">N/A</td>\r
+ <td class="na">N/A</td>\r
+ <td class="complete" align="center">✓</td>\r
+ <td class="na">N/A</td>\r
+ <td></td>\r
+</tr>\r
+<tr>\r
+ <td> 3.3.4 [basic.funscope]</td>\r
+ <td class="na">N/A</td>\r
+ <td class="na">N/A</td>\r
+ <td class="complete" align="center">✓</td>\r
+ <td class="na">N/A</td>\r
<td></td>\r
</tr>\r
-<tr><td>3 [basic]</td><td></td><td></td><td></td><td></td><td></td></tr>\r
-<tr><td> 3.1 [basic.def]</td><td></td><td></td><td></td><td></td><td></td></tr>\r
-<tr><td> 3.2 [basic.def.odr]</td><td></td><td></td><td></td><td></td><td></td></tr>\r
-<tr><td> 3.3 [basic.scope]</td><td></td><td></td><td></td><td></td><td></td></tr>\r
-<tr><td> 3.3.1 [basic.scope.pdecl]</td><td></td><td></td><td></td><td></td><td></td></tr>\r
-<tr><td> 3.3.2 [basic.scope.local]</td><td></td><td></td><td></td><td></td><td></td></tr>\r
-<tr><td> 3.3.3 [basic.scope.proto]</td><td></td><td></td><td></td><td></td><td></td></tr>\r
-<tr><td> 3.3.4 [basic.funscope]</td><td></td><td></td><td></td><td></td><td></td></tr>\r
<tr><td> 3.3.5 [basic.scope.namespace]</td><td></td><td></td><td></td><td></td><td></td></tr>\r
<tr><td> 3.3.6 [basic.scope.class]</td><td></td><td></td><td></td><td></td><td></td></tr>\r
-<tr><td> 3.3.7 [basic.scope.enum]</td><td></td><td></td><td></td><td></td><td></td></tr>\r
-<tr><td> 3.3.8 [basic.scope.hiding]</td><td></td><td></td><td></td><td></td><td></td></tr>\r
-<tr><td> 3.4 [basic.lookup]</td><td></td><td></td><td></td><td></td><td></td></tr>\r
-<tr><td> 3.4.1 [basic.lookup.unqual]</td><td></td><td></td><td></td><td></td><td></td></tr>\r
-<tr><td> 3.4.2 [basic.lookup.argdep]</td><td></td><td></td><td></td><td></td><td></td></tr>\r
-<tr><td> 3.4.3 [basic.lookup.qual]</td><td></td><td></td><td></td><td></td><td></td></tr>\r
+<tr>\r
+ <td> 3.3.7 [basic.scope.hiding]</td>\r
+ <td class="na">N/A</td>\r
+ <td class="na">N/A</td>\r
+ <td class="complete" align="center">✓</td>\r
+ <td class="na">N/A</td>\r
+ <td></td>\r
+</tr>\r
+<tr>\r
+ <td> 3.4 [basic.lookup]</td>\r
+ <td class="na">N/A</td>\r
+ <td class="na">N/A</td>\r
+ <td class="complete" align="center">✓</td>\r
+ <td class="na">N/A</td>\r
+ <td></td>\r
+</tr>\r
+<tr>\r
+ <td> 3.4.1 [basic.lookup.unqual]</td>\r
+ <td class="na">N/A</td>\r
+ <td class="na">N/A</td>\r
+ <td class="medium"></td>\r
+ <td class="na">N/A</td>\r
+ <td>Many cases beyond simple global and function-local lookup don't work</td>\r
+</tr>\r
+<tr>\r
+ <td> 3.4.2 [basic.lookup.argdep]</td>\r
+ <td class="na">N/A</td>\r
+ <td class="na">N/A</td>\r
+ <td class="broken"></td>\r
+ <td class="na">N/A</td>\r
+ <td></td>\r
+</tr>\r
+<tr>\r
+ <td> 3.4.3 [basic.lookup.qual]</td>\r
+ <td class="na">N/A</td>\r
+ <td class="na">N/A</td>\r
+ <td class="advanced"></td>\r
+ <td class="na">N/A</td>\r
+ <td>What's the state of namespaces now?</td>\r
+</tr>\r
<tr><td> 3.4.3.1 [class.qual]</td><td></td><td></td><td></td><td></td><td></td></tr>\r
<tr><td> 3.4.3.2 [namespace.qual]</td><td></td><td></td><td></td><td></td><td></td></tr>\r
<tr><td> 3.4.4 [basic.lookup.elab]</td><td></td><td></td><td></td><td></td><td></td></tr>\r
<td></td>\r
<td></td>\r
</tr>\r
-\r
<tr>\r
<td> 4.9 [conv.fpint]</td>\r
<td class="complete" align="center">✓</td>\r