<div dir="ltr">Per C11 7.1.4/1, providing an invalid value for a library function argument results in undefined behavior, and it's generally accepted that we can only reject a program that has undefined behavior if the undefined behavior is guaranteed to occur (either because it occurs during translation or because it occurs on every execution of the program). So an error is not allowed here, but a warning is fine.<div>
<br><div class="gmail_extra"><br><div class="gmail_quote">On Tue, Mar 11, 2014 at 12:38 PM, JF Bastien <span dir="ltr"><<a href="mailto:jfb@google.com" target="_blank">jfb@google.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<div dir="ltr">Isn't that the case with any errors that can crop up in control-flow sensitive manners, through template magic or tautological compares and such? I assume David has a better informed opinion on this than I do.</div>
<div class="HOEnZb"><div class="h5">
<div class="gmail_extra"><br><br><div class="gmail_quote">On Tue, Mar 11, 2014 at 12:21 PM, Tim Northover <span dir="ltr"><<a href="mailto:t.p.northover@gmail.com" target="_blank">t.p.northover@gmail.com</a>></span> wrote:<br>

<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Hi JF,<br>
<br>
Thanks for taking a look.<br>
<div><br>
On 11 March 2014 04:59, JF Bastien <<a href="mailto:jfb@google.com" target="_blank">jfb@google.com</a>> wrote:<br>
> lgtm after adding tests of missing __c11_atomic_* to test/Sema/atomic-ops.c,<br>
> especially load_n/store_n.<br>
<br>
</div>I committed it with a full set of tests (r203561), and then changed it<br>
to a warning (r203564) when I realised valid programs could contain<br>
statements like:<br>
<br>
if (0) {<br>
  __c11_atomic_load(ptr, memory_order_release);<br>
}<br>
<br>
or possibly even some sane equivalent via templates or other weirdness.<br>
<br>
Cheers.<br>
<span><font color="#888888"><br>
Tim.<br>
</font></span></blockquote></div><br></div>
</div></div><br>_______________________________________________<br>
cfe-commits mailing list<br>
<a href="mailto:cfe-commits@cs.uiuc.edu">cfe-commits@cs.uiuc.edu</a><br>
<a href="http://lists.cs.uiuc.edu/mailman/listinfo/cfe-commits" target="_blank">http://lists.cs.uiuc.edu/mailman/listinfo/cfe-commits</a><br>
<br></blockquote></div><br></div></div></div>