void fn() = delete; // expected-note {{function has been explicitly marked deleted here}}
operator int() = delete;
void operator +(int) = delete;
+
+ int i = delete; // expected-error {{only functions can have deleted definitions}}
};
void test() {
<td class="advanced" align="center"></td>
<td class="broken"></td>
<td>No name mangling; ASTs don't contain calls to conversion operators</td>
- </tr><tr>
+ </tr>
+ <tr>
<td>Static assertions (<a href="http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2004/n1720.pdf">N1720</a>)</td>
<td class="complete" align="center">✓</td>
<td class="complete" align="center">✓</td>
<td class="na">N/A</td>
<td></td>
</tr>
+ <tr>
+ <td>Deleted functions (<a href="http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2007/n2346.htm">N2346</a>)</td>
+ <td class="complete" align="center">✓</td>
+ <td class="complete" align="center">✓</td>
+ <td class="complete" align="center">✓</td>
+ <td class="na">N/A</td>
+ <td></td>
+ </tr>
+ <tr>
+ <td>Rvalue references (<a href="http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2006/n2118.html">N2118</a> + <a href="http://www.open-std.org/JTC1/SC22/WG21/docs/papers/2009/n2831.html">N2831</a>)</td>
+ <td class="complete" align="center">✓</td>
+ <td class="complete" align="center">✓</td>
+ <td class="complete" align="center">✓</td>
+ <td class="broken"></td>
+ <td></td>
+ </tr>
</tr>
</table>