operator_bool.pass.cpp revision b64f8b07c104c6cc986570ac8ee0ed16a9f23976
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// <functional> 11 12// class function<R(ArgTypes...)> 13 14// explicit operator bool() const 15 16#include <functional> 17#include <cassert> 18 19int g(int) {return 0;} 20 21int main() 22{ 23 { 24 std::function<int(int)> f; 25 assert(!f); 26 f = g; 27 assert(f); 28 } 29} 30