[cfe-commits] r60763 - /cfe/trunk/www/cxx_status.html

Sebastian Redl sebastian.redl at getdesigned.at
Tue Dec 9 06:40:06 PST 2008


Author: cornedbee
Date: Tue Dec  9 08:40:01 2008
New Revision: 60763

URL: http://llvm.org/viewvc/llvm-project?rev=60763&view=rev
Log:
Fill in C++ status table for expressions.

Modified:
    cfe/trunk/www/cxx_status.html

Modified: cfe/trunk/www/cxx_status.html
URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/www/cxx_status.html?rev=60763&r1=60762&r2=60763&view=diff

==============================================================================
--- cfe/trunk/www/cxx_status.html (original)
+++ cfe/trunk/www/cxx_status.html Tue Dec  9 08:40:01 2008
@@ -120,7 +120,7 @@
 </tr>
 <tr>
   <td>  2.2 [lex.charset]</td>
-    <td class="basic"></td>
+  <td class="basic"></td>
   <td class="na">N/A</td>
   <td class="na">N/A</td>
   <td class="na">N/A</td>
@@ -385,7 +385,7 @@
 <tr><td>  3.10 [basic.lval]</td><td></td><td></td><td></td><td></td><td></td></tr>
 <tr>
   <td>4 [conv]</td>
-  <td class="complete" align="center">&#x2713;</td>  
+  <td class="complete" align="center">&#x2713;</td>
   <td class="complete" align="center">&#x2713;</td>
   <td class="complete" align="center">&#x2713;</td>
   <td></td>
@@ -393,7 +393,7 @@
 </tr>
 <tr>
   <td>  4.1 [conv.lval]</td>
-  <td class="complete" align="center">&#x2713;</td>  
+  <td class="complete" align="center">&#x2713;</td>
   <td class="complete" align="center">&#x2713;</td>
   <td class="advanced" align="center"></td> <!-- p2: sizeof -->
   <td></td>
@@ -401,7 +401,7 @@
 </tr>
 <tr>
   <td>  4.2 [conv.array]</td>
-  <td class="complete" align="center">&#x2713;</td>  
+  <td class="complete" align="center">&#x2713;</td>
   <td class="complete" align="center">&#x2713;</td>
   <td class="complete" align="center">&#x2713;</td>
   <td></td>
@@ -409,7 +409,7 @@
 </tr>
 <tr>
   <td>  4.3 [conv.func]</td>
-  <td class="complete" align="center">&#x2713;</td>  
+  <td class="complete" align="center">&#x2713;</td>
   <td class="complete" align="center">&#x2713;</td>
   <td class="medium" align="center"></td>
   <td></td>
@@ -417,7 +417,7 @@
 </tr>
 <tr>
   <td>  4.4 [conv.qual]</td>
-  <td class="complete" align="center">&#x2713;</td>  
+  <td class="complete" align="center">&#x2713;</td>
   <td class="complete" align="center">&#x2713;</td>
   <td class="medium" align="center"></td> <!-- pointer-to-member -->
   <td></td>
@@ -425,7 +425,7 @@
 </tr>
 <tr>
   <td>  4.5 [conv.prom]</td>
-  <td class="complete" align="center">&#x2713;</td>  
+  <td class="complete" align="center">&#x2713;</td>
   <td class="complete" align="center">&#x2713;</td>
   <td class="complete" align="center">&#x2713;</td>
   <td></td>
@@ -433,7 +433,7 @@
 </tr>
 <tr>
   <td>  4.6 [conv.fpprom]</td>
-  <td class="complete" align="center">&#x2713;</td>  
+  <td class="complete" align="center">&#x2713;</td>
   <td class="complete" align="center">&#x2713;</td>
   <td class="complete" align="center">&#x2713;</td>
   <td></td>
@@ -441,7 +441,7 @@
 </tr>
 <tr>
   <td>  4.7 [conv.integral]</td>
-  <td class="complete" align="center">&#x2713;</td>  
+  <td class="complete" align="center">&#x2713;</td>
   <td class="complete" align="center">&#x2713;</td>
   <td class="complete" align="center">&#x2713;</td>
   <td></td>
@@ -449,7 +449,7 @@
 </tr>
 <tr>
   <td>  4.8 [conv.double]</td>
-  <td class="complete" align="center">&#x2713;</td>  
+  <td class="complete" align="center">&#x2713;</td>
   <td class="complete" align="center">&#x2713;</td>
   <td class="complete" align="center">&#x2713;</td>
   <td></td>
@@ -481,89 +481,96 @@
 </tr>
 <tr>
   <td>  4.12 [conv.bool]</td>
-  <td class="complete" align="center">&#x2713;</td>  
   <td class="complete" align="center">&#x2713;</td>
-  <td class="medium" align="center"></td> <!-- pointer-to-member --> 
+  <td class="complete" align="center">&#x2713;</td>
+  <td class="medium" align="center"></td> <!-- pointer-to-member -->
   <td></td>
   <td>Missing pointer-to-member conversions.</td>
 </tr>
-<tr><td>5 [expr]</td><td></td><td></td><td></td><td></td><td></td></tr>
 <tr>
-  <td>  5.1 [expr.prim]</td>
-  <td></td>
-  <td></td>
+  <td>5 [expr]</td>
+  <td class="na">N/A</td>
+  <td class="na">N/A</td>
+  <td class="complete" align="center">&#x2713;</td>
   <td></td>
   <td></td>
+</tr>
+<tr>
+  <td>  5.1 [expr.prim]</td>
+  <td class="medium" align="center"></td>
+  <td class="medium" align="center"></td>
+  <td class="medium" align="center"></td>
   <td></td>
+  <td>template-ids are not supported, name lookup is not complete</td>
 </tr>
-<tr><td>  5.2 [expr.post]</td><td></td><td></td><td></td><td></td><td></td></tr>
+<tr><td>  5.2 [expr.post]</td><td></td><td></td><td></td><td></td><td>Note that overloading is not considered in this section</td></tr>
 <tr>
   <td>    5.2.1 [expr.sub]</td>
-  <td></td>
-  <td></td>
-  <td></td>
+  <td class="complete" align="center">&#x2713;</td>
+  <td class="complete" align="center">&#x2713;</td>
+  <td class="complete" align="center">&#x2713;</td>
   <td></td>
   <td></td>
 </tr>
 <tr>
   <td>    5.2.2 [expr.call]</td>
+  <td class="complete" align="center">&#x2713;</td>
+  <td class="complete" align="center">&#x2713;</td>
+  <td class="medium" align="center"></td>
   <td></td>
-  <td></td>
-  <td></td>
-  <td></td>
-  <td></td>
+  <td>Member calls don't work</td>
 </tr>
 <tr>
   <td>    5.2.3 [expr.type.conv]</td>
+  <td class="complete" align="center">&#x2713;</td>
+  <td class="complete" align="center">&#x2713;</td>
+  <td class="basic"></td>
   <td></td>
-  <td></td>
-  <td></td>
-  <td></td>
-  <td></td>
+  <td>Only between non-class types</td>
 </tr>
 <tr>
   <td>    5.2.4 [expr.pseudo]</td>
-  <td></td>
-  <td></td>
-  <td></td>
+  <td class="broken"></td>
+  <td class="broken"></td>
+  <td class="broken"></td>
   <td></td>
   <td></td>
 </tr>
 <tr>
   <td>    5.2.5 [expr.ref]</td>
+  <td class="complete" align="center">&#x2713;</td>
+  <td class="basic"></td>
+  <td class="basic"></td>
   <td></td>
-  <td></td>
-  <td></td>
-  <td></td>
-  <td></td>
+  <td>Only fields can be accessed</td>
 </tr>
 <tr>
   <td>    5.2.6 [expr.post.incr]</td>
+  <td class="complete" align="center">&#x2713;</td>
+  <td class="complete" align="center">&#x2713;</td>
+  <td class="advanced"></td>
   <td></td>
-  <td></td>
-  <td></td>
-  <td></td>
-  <td></td>
+  <td>Decrement of bool is accepted, increment not warned about</td>
 </tr>
 <tr>
   <td>    5.2.7 [expr.dynamic.cast]</td>
-  <td class="complete" align="center">&#x2713;</td>  
-  <td class="complete" align="center">&#x2713;</td>  
-  <td class="complete" align="center">&#x2713;</td>  
+  <td class="complete" align="center">&#x2713;</td>
+  <td class="complete" align="center">&#x2713;</td>
+  <td class="complete" align="center">&#x2713;</td>
   <td></td>
   <td></td>
 </tr>
 <tr>
   <td>    5.2.8 [expr.typeid]</td>
-  <td class="complete" align="center">&#x2713;</td>  
-  <td class="complete" align="center">&#x2713;</td>  
-  <td class="complete" align="center">&#x2713;</td>  
+  <td class="complete" align="center">&#x2713;</td>
+  <td class="complete" align="center">&#x2713;</td>
+  <td class="complete" align="center">&#x2713;</td>
   <td></td>
   <td></td>
 </tr>
 <tr>
   <td>    5.2.9 [expr.static.cast]</td>
-  <td class="complete" align="center">&#x2713;</td>  
+  <td class="complete" align="center">&#x2713;</td>
   <td class="advanced" align="center"></td>
   <td class="medium" align="center"></td>
   <td></td>
@@ -587,40 +594,214 @@
 </tr>
 <tr><td>  5.3 [expr.unary]</td><td></td><td></td><td></td><td></td><td></td></tr>
 <tr><td>    5.3.1 [expr.unary.op]</td><td></td><td></td><td></td><td></td><td></td></tr>
-<tr><td>    5.3.2 [expr.pre.incr]</td><td></td><td></td><td></td><td></td><td></td></tr>
-<tr><td>    5.3.3 [expr.sizeof]</td><td></td><td></td><td></td><td></td><td></td></tr>
+<tr>
+  <td>      5.3.1p1 Unary *</td>
+  <td class="complete" align="center">&#x2713;</td>
+  <td class="complete" align="center">&#x2713;</td>
+  <td class="complete" align="center">&#x2713;</td>
+  <td></td>
+  <td></td>
+</tr>
+<tr>
+  <td>      5.3.1p2-5 Unary &</td>
+  <td class="complete" align="center">&#x2713;</td>
+  <td class="basic" align="center"></td>
+  <td class="basic" align="center"></td>
+  <td></td>
+  <td>Member pointers not supported in any way</td>
+</tr>
+<tr>
+  <td>      5.3.1p6 Unary +</td>
+  <td class="complete" align="center">&#x2713;</td>
+  <td class="complete" align="center">&#x2713;</td>
+  <td class="complete" align="center">&#x2713;</td>
+  <td></td>
+  <td></td>
+</tr>
+<tr>
+  <td>      5.3.1p7 Unary -</td>
+  <td class="complete" align="center">&#x2713;</td>
+  <td class="complete" align="center">&#x2713;</td>
+  <td class="complete" align="center">&#x2713;</td>
+  <td></td>
+  <td></td>
+</tr>
+<tr>
+  <td>      5.3.1p8 Unary !</td>
+  <td class="complete" align="center">&#x2713;</td>
+  <td class="complete" align="center">&#x2713;</td>
+  <td class="complete" align="center">&#x2713;</td>
+  <td></td>
+  <td></td>
+</tr>
+<tr>
+  <td>      5.3.1p9 Unary ~</td>
+  <td class="complete" align="center">&#x2713;</td>
+  <td class="complete" align="center">&#x2713;</td>
+  <td class="complete" align="center">&#x2713;</td>
+  <td></td>
+  <td></td>
+</tr>
+<tr>
+  <td>    5.3.2 [expr.pre.incr]</td>
+  <td class="complete" align="center">&#x2713;</td>
+  <td class="complete" align="center">&#x2713;</td>
+  <td class="advanced"></td>
+  <td></td>
+  <td>Decrement of bool is accepted, increment not warned about</td>
+</tr>
+<tr>
+  <td>    5.3.3 [expr.sizeof]</td>
+  <td class="complete" align="center">&#x2713;</td>
+  <td class="complete" align="center">&#x2713;</td>
+  <td class="complete" align="center">&#x2713;</td>
+  <td></td>
+  <td></td>
+</tr>
 <tr>
   <td>    5.3.4 [expr.new]</td>
-  <td class="complete" align="center">&#x2713;</td>  
-  <td class="medium" align="center"></td>
+  <td class="complete" align="center">&#x2713;</td>
+  <td class="complete" align="center">&#x2713;</td>
+  <td class="advanced" align="center"></td>
+  <td></td>
+  <td>operator delete is not looked up, initialization not quite correct</td>
+</tr>
+<tr>
+  <td>    5.3.5 [expr.delete]</td>
+  <td class="complete" align="center">&#x2713;</td>
+  <td class="complete" align="center">&#x2713;</td>
+  <td class="complete" align="center">&#x2713;</td>
+  <td></td>
+  <td></td>
+</tr>
+<tr>
+  <td>  5.4 [expr.cast]</td>
+  <td class="complete" align="center">&#x2713;</td>
+  <td class="complete" align="center">&#x2713;</td>
+  <td class="medium"></td>
+  <td></td>
+  <td>Too lenient, and may not always have correct semantics</td>
+</tr>
+<tr>
+  <td>  5.5 [expr.mptr.oper]</td>
+  <td class="broken"></td>
+  <td class="broken"></td>
+  <td class="broken"></td>
+  <td></td>
+  <td></td>
+</tr>
+<tr>
+  <td>  5.6 [expr.mul]</td>
+  <td class="complete" align="center">&#x2713;</td>
+  <td class="complete" align="center">&#x2713;</td>
+  <td class="complete" align="center">&#x2713;</td>
+  <td></td>
+  <td></td>
+</tr>
+<tr>
+  <td>  5.7 [expr.add]</td>
+  <td class="complete" align="center">&#x2713;</td>
+  <td class="complete" align="center">&#x2713;</td>
+  <td class="complete" align="center">&#x2713;</td>
+  <td></td>
+  <td></td>
+</tr>
+<tr>
+  <td>  5.8 [expr.shift]</td>
+  <td class="complete" align="center">&#x2713;</td>
+  <td class="complete" align="center">&#x2713;</td>
+  <td class="complete" align="center">&#x2713;</td>
+  <td></td>
+  <td></td>
+</tr>
+<tr>
+  <td>  5.9 [expr.rel]</td>
+  <td class="complete" align="center">&#x2713;</td>
+  <td class="complete" align="center">&#x2713;</td>
+  <td class="complete" align="center">&#x2713;</td>
+  <td></td>
+  <td></td>
+</tr>
+<tr>
+  <td>  5.10 [expr.eq]</td>
+  <td class="complete" align="center">&#x2713;</td>
+  <td class="complete" align="center">&#x2713;</td>
+  <td class="complete" align="center">&#x2713;</td>
+  <td></td>
+  <td></td>
+</tr>
+<tr>
+  <td>  5.11 [expr.bit.and]</td>
+  <td class="complete" align="center">&#x2713;</td>
+  <td class="complete" align="center">&#x2713;</td>
+  <td class="complete" align="center">&#x2713;</td>
+  <td></td>
+  <td></td>
+</tr>
+<tr>
+  <td>  5.12 [expr.xor]</td>
+  <td class="complete" align="center">&#x2713;</td>
+  <td class="complete" align="center">&#x2713;</td>
+  <td class="complete" align="center">&#x2713;</td>
+  <td></td>
+  <td></td>
+</tr>
+<tr>
+  <td>  5.13 [expr.or]</td>
+  <td class="complete" align="center">&#x2713;</td>
+  <td class="complete" align="center">&#x2713;</td>
+  <td class="complete" align="center">&#x2713;</td>
+  <td></td>
+  <td></td>
+</tr>
+<tr>
+  <td>  5.14 [expr.log.and]</td>
+  <td class="complete" align="center">&#x2713;</td>
+  <td class="complete" align="center">&#x2713;</td>
+  <td class="complete" align="center">&#x2713;</td>
+  <td></td>
+  <td></td>
+</tr>
+<tr>
+  <td>  5.15 [expr.log.or]</td>
+  <td class="complete" align="center">&#x2713;</td>
+  <td class="complete" align="center">&#x2713;</td>
+  <td class="complete" align="center">&#x2713;</td>
+  <td></td>
+  <td></td>
+</tr>
+<tr>
+  <td>  5.16 [expr.cond]</td>
+  <td class="complete" align="center">&#x2713;</td>
+  <td class="complete" align="center">&#x2713;</td>
   <td class="medium" align="center"></td>
   <td></td>
+  <td>throw expressions not supported, type unification rules are based on C only</td>
+</tr>
+<tr>
+  <td>  5.17 [expr.ass]</td>
+  <td class="complete" align="center">&#x2713;</td>
+  <td class="complete" align="center">&#x2713;</td>
+  <td class="complete" align="center">&#x2713;</td>
+  <td></td>
   <td></td>
 </tr>
 <tr>
-  <td>    5.3.5 [expr.delete]</td>
-  <td class="complete" align="center">&#x2713;</td>  
-  <td class="complete" align="center">&#x2713;</td>  
-  <td class="complete" align="center">&#x2713;</td>  
+  <td>  5.18 [expr.comma]</td>
+  <td class="complete" align="center">&#x2713;</td>
+  <td class="complete" align="center">&#x2713;</td>
+  <td class="complete" align="center">&#x2713;</td>
+  <td></td>
   <td></td>
+</tr>
+<tr>
+  <td>  5.19 [expr.const]</td>
+  <td class="complete" align="center">&#x2713;</td>
+  <td class="complete" align="center">&#x2713;</td>
+  <td class="basic"></td>
   <td></td>
+  <td>Uses C semantics</td>
 </tr>
-<tr><td>  5.4 [expr.cast]</td><td></td><td></td><td></td><td></td><td></td></tr>
-<tr><td>  5.5 [expr.mptr.oper]</td><td></td><td></td><td></td><td></td><td></td></tr>
-<tr><td>  5.6 [expr.mul]</td><td></td><td></td><td></td><td></td><td></td></tr>
-<tr><td>  5.7 [expr.add]</td><td></td><td></td><td></td><td></td><td></td></tr>
-<tr><td>  5.8 [expr.shift]</td><td></td><td></td><td></td><td></td><td></td></tr>
-<tr><td>  5.9 [expr.rel]</td><td></td><td></td><td></td><td></td><td></td></tr>
-<tr><td>  5.10 [expr.eq]</td><td></td><td></td><td></td><td></td><td></td></tr>
-<tr><td>  5.11 [expr.bit.and]</td><td></td><td></td><td></td><td></td><td></td></tr>
-<tr><td>  5.12 [expr.xor]</td><td></td><td></td><td></td><td></td><td></td></tr>
-<tr><td>  5.13 [expr.or]</td><td></td><td></td><td></td><td></td><td></td></tr>
-<tr><td>  5.14 [expr.log.and]</td><td></td><td></td><td></td><td></td><td></td></tr>
-<tr><td>  5.15 [expr.log.or]</td><td></td><td></td><td></td><td></td><td></td></tr>
-<tr><td>  5.16 [expr.cond]</td><td></td><td></td><td></td><td></td><td></td></tr>
-<tr><td>  5.17 [expr.ass]</td><td></td><td></td><td></td><td></td><td></td></tr>
-<tr><td>  5.18 [expr.comma]</td><td></td><td></td><td></td><td></td><td></td></tr>
-<tr><td>  5.19 [expr.const]</td><td></td><td></td><td></td><td></td><td></td></tr>
 <tr><td>6 [stmt.stmt]</td><td></td><td></td><td></td><td></td><td></td></tr>
 <tr><td>  6.1 [stmt.label]</td><td></td><td></td><td></td><td></td><td></td></tr>
 <tr><td>  6.2 [stmt.expr]</td><td></td><td></td><td></td><td></td><td></td></tr>





More information about the cfe-commits mailing list