bcraig added a subscriber: bcraig. bcraig added a comment. I like the rationale here, but can we avoid pulling in headers at all? You could test _ _STDC_NO_ATOMICS_ _. You could also have some code like this... _Atomic int x; int main() { x += 1; return x; } https://reviews.llvm.org/D23719