1//===----------------------------------------------------------------------===//
2//
3//                     The LLVM Compiler Infrastructure
4//
5// This file is dual licensed under the MIT and the University of Illinois Open
6// Source Licenses. See LICENSE.TXT for details.
7//
8//===----------------------------------------------------------------------===//
9//
10// UNSUPPORTED: libcpp-has-no-threads
11
12// <atomic>
13
14// struct atomic_flag
15
16// atomic_flag() = ATOMIC_FLAG_INIT;
17
18#include <atomic>
19#include <cassert>
20
21int main()
22{
23    std::atomic_flag f = ATOMIC_FLAG_INIT;
24    assert(f.test_and_set() == 0);
25}
26