<div dir="ltr">lgtm after adding tests of missing __c11_atomic_* to <span style="color:rgb(0,0,0);white-space:pre-wrap">test/Sema/atomic-ops.c, especially </span>load_n/store_n.</div><div class="gmail_extra"><br><br><div class="gmail_quote">
On Mon, Mar 10, 2014 at 8:48 AM, 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 all,<br>
<br>
The builtin atomic operations (up to now) have been a little unfriendly in simply not emitting anything if an invalid memory ordering is requested (e.g. "__c11_atomic_load(p, memory_order_release)").<br>
<br>
This patch adds some Sema checking (to an error) if the operand is an integer-constant-expression and not permitted. It'll obviously still miss cases (since we apparently support non-constant arguments there), but hopefully it's an improvement to the current situation.<br>

<br>
Does it look reasonable? My Clang is rather rusty.<br>
<br>
Cheers.<br>
<br>
Tim<br>
<br>
<a href="http://llvm-reviews.chandlerc.com/D3027" target="_blank">http://llvm-reviews.chandlerc.com/D3027</a><br>
<br>
Files:<br>
  include/clang/AST/Expr.h<br>
  include/clang/Basic/DiagnosticSemaKinds.td<br>
  lib/CodeGen/CGAtomic.cpp<br>
  lib/Sema/SemaChecking.cpp<br>
  test/CodeGen/atomic-ops.c<br>
  test/CodeGen/big-atomic-ops.c<br>
  test/Sema/atomic-ops.c<br>
<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>