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// <queue>
11
12// void swap(priority_queue& c)
13//     noexcept(__is_nothrow_swappable<container_type>::value &&
14//              __is_nothrow_swappable<Compare>::value);
15
16// This tests a conforming extension
17
18#include <queue>
19#include <cassert>
20
21#include "../../../MoveOnly.h"
22
23int main()
24{
25#if __has_feature(cxx_noexcept)
26    {
27        typedef std::priority_queue<MoveOnly> C;
28        C c1, c2;
29        static_assert(noexcept(swap(c1, c2)), "");
30    }
31#endif
32}
33