1 //===----------------------------------------------------------------------===//
3 // The LLVM Compiler Infrastructure
5 // This file is dual licensed under the MIT and the University of Illinois Open
6 // Source Licenses. See LICENSE.TXT for details.
8 //===----------------------------------------------------------------------===//
10 // UNSUPPORTED: c++98, c++03
14 // template<CopyConstructible Fn, CopyConstructible... Types>
15 // unspecified bind(Fn, Types...);
16 // template<Returnable R, CopyConstructible Fn, CopyConstructible... Types>
17 // unspecified bind(Fn, Types...);
19 // https://bugs.llvm.org/show_bug.cgi?id=16343
31 return static_cast<T>(std::pow(a, b));
47 using std::placeholders::_1;
49 auto g = std::bind(power(), 2, _1);
51 assert(std::bind(plus_one(), g)(5) == 33);