1*9ff04684SNikolas Klauser //===----------------------------------------------------------------------===//
2*9ff04684SNikolas Klauser //
3*9ff04684SNikolas Klauser // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
4*9ff04684SNikolas Klauser // See https://llvm.org/LICENSE.txt for license information.
5*9ff04684SNikolas Klauser // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
6*9ff04684SNikolas Klauser //
7*9ff04684SNikolas Klauser //===----------------------------------------------------------------------===//
8*9ff04684SNikolas Klauser 
9*9ff04684SNikolas Klauser // UNSUPPORTED: c++03, c++11, c++14
10*9ff04684SNikolas Klauser 
11*9ff04684SNikolas Klauser // <mutex>
12*9ff04684SNikolas Klauser 
13*9ff04684SNikolas Klauser // unique_lock
14*9ff04684SNikolas Klauser 
15*9ff04684SNikolas Klauser // Make sure that the implicitly-generated CTAD works.
16*9ff04684SNikolas Klauser 
17*9ff04684SNikolas Klauser #include <mutex>
18*9ff04684SNikolas Klauser 
19*9ff04684SNikolas Klauser #include "checking_mutex.h"
20*9ff04684SNikolas Klauser 
21*9ff04684SNikolas Klauser checking_mutex mux;
22*9ff04684SNikolas Klauser static_assert(std::is_same_v<std::unique_lock<checking_mutex>, decltype(std::unique_lock{mux})>);
23