This proposed patch adds crude handling of atomics to the static analyzer.
Rather than ignore AtomicExprs, as we now do, this patch causes the analyzer
to escape the arguments. This is imprecise -- and we should model the
expressions fully in the future -- but it is less wrong than ignoring their
effects altogether.
Richard: Would you mind reviewing the changes I made to AtomicExpr in the AST? I had
to add a const accessor for the subexpressions.
Anna: Would you review the static analyzer portion?
This is rdar://problem/25353187