//===----------------------------------------------------------------------===//
//
// The LLVM Compiler Infrastructure
//
// This file is distributed under the University of Illinois Open Source
// License. See LICENSE.TXT for details.
//
//===----------------------------------------------------------------------===//
// <memory>
// unique_ptr
// Test unique_ptr default ctor
// default unique_ptr ctor should only require default Deleter ctor
#include<memory>#include<cassert>classDeleter{intstate_;Deleter(Deleter&);Deleter&operator=(Deleter&);public:Deleter():state_(5){}intstate()const{returnstate_;}voidoperator()(void*){}};intmain(){{std::unique_ptr<int[]>p;assert(p.get()==0);}{std::unique_ptr<int[],Deleter>p;assert(p.get()==0);assert(p.get_deleter().state()==5);}}