<html>
<head>
<meta content="text/html; charset=UTF-8" http-equiv="Content-Type">
</head>
<body text="#000000" bgcolor="#FFFFFF">
<br>
<div class="moz-cite-prefix">On 12/12/2013 21:40, Dmitri Gribenko
wrote:<br>
</div>
<blockquote
cite="mid:CA+Y5xYfOopP1X-BqJWVt0VB4E85aCQit_CML4NgUM7GXzvA5JQ@mail.gmail.com"
type="cite">
<pre wrap="">On Thu, Dec 12, 2013 at 1:23 PM, Alp Toker <a class="moz-txt-link-rfc2396E" href="mailto:alp@nuanti.com"><alp@nuanti.com></a> wrote:
</pre>
<blockquote type="cite">
<pre wrap="">Modified: cfe/trunk/include/clang/Basic/DiagnosticParseKinds.td
URL: <a class="moz-txt-link-freetext" href="http://llvm.org/viewvc/llvm-project/cfe/trunk/include/clang/Basic/DiagnosticParseKinds.td?rev=197179&r1=197178&r2=197179&view=diff">http://llvm.org/viewvc/llvm-project/cfe/trunk/include/clang/Basic/DiagnosticParseKinds.td?rev=197179&r1=197178&r2=197179&view=diff</a>
==============================================================================
--- cfe/trunk/include/clang/Basic/DiagnosticParseKinds.td (original)
+++ cfe/trunk/include/clang/Basic/DiagnosticParseKinds.td Thu Dec 12 15:23:03 2013
@@ -777,6 +777,11 @@ def warn_availability_and_unavailable :
def err_type_safety_unknown_flag : Error<
"invalid comparison flag %0; use 'layout_compatible' or 'must_be_null'">;
+// Type traits
+def err_type_trait_arity : Error<
+ "type trait requires %0%select{| or more}1 argument%select{|s}2; have "
+ "%3 argument%s3">;
</pre>
</blockquote>
<pre wrap="">
Clang diagnostics support %plural, see
<a class="moz-txt-link-freetext" href="http://clang.llvm.org/docs/InternalsManual.html">http://clang.llvm.org/docs/InternalsManual.html</a>.</pre>
</blockquote>
<br>
Thanks for the observation.<br>
<br>
In this case the message was just moved verbatim from Sema to Parse.<br>
<br>
The bigger problem with this diag is that it has a different wording
to other argument length messages:<br>
<br>
<code>traits.cpp:18:51: error: type trait requires 1 argument; have
2 arguments</code><code><br>
</code><code><br>
</code><code>traits.cpp:23:40: error: too few template arguments for
class template 'is_nothrow_constructible'</code><code><br>
</code><code><br>
</code><code>traits.cpp:13:6: note: candidate function not viable:
requires 1 argument, but 2 were provided</code><br>
<br>
Instead of keeping these inconsistencies I'd like to pick one style
and make the others consistent during the 3.5 iteration.<br>
<br>
Alp.<br>
<br>
<br>
<br>
<br>
<blockquote
cite="mid:CA+Y5xYfOopP1X-BqJWVt0VB4E85aCQit_CML4NgUM7GXzvA5JQ@mail.gmail.com"
type="cite">
<pre wrap="">
Dmitri
</pre>
</blockquote>
<br>
<pre class="moz-signature" cols="72">--
<a class="moz-txt-link-freetext" href="http://www.nuanti.com">http://www.nuanti.com</a>
the browser experts
</pre>
</body>
</html>