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// <memory>
11
12// unique_ptr
13
14// Test unique_ptr(pointer) ctor
15
16#include <memory>
17
18// unique_ptr(pointer) ctor should require default Deleter ctor
19class Deleter
20{
21
22    Deleter() {}
23
24public:
25
26    Deleter(Deleter&) {}
27    Deleter& operator=(Deleter&) {}
28
29    void operator()(void*) const {}
30};
31
32int main()
33{
34    std::unique_ptr<int, Deleter> p(new int);
35}
36