1234567891011121314151617181920212223242526272829303132333435363738394041 |
- //===----------------------------------------------------------------------===//
- //
- // The LLVM Compiler Infrastructure
- //
- // This file is distributed under the University of Illinois Open Source
- // License. See LICENSE.TXT for details.
- //
- //===----------------------------------------------------------------------===//
- // <functional>
- // class function<R(ArgTypes...)>
- // template <MoveConstructible R, MoveConstructible ... ArgTypes>
- // bool operator==(const function<R(ArgTypes...)>&, nullptr_t);
- //
- // template <MoveConstructible R, MoveConstructible ... ArgTypes>
- // bool operator==(nullptr_t, const function<R(ArgTypes...)>&);
- //
- // template <MoveConstructible R, MoveConstructible ... ArgTypes>
- // bool operator!=(const function<R(ArgTypes...)>&, nullptr_t);
- //
- // template <MoveConstructible R, MoveConstructible ... ArgTypes>
- // bool operator!=(nullptr_t, const function<R(ArgTypes...)>&);
- #include <functional>
- #include <cassert>
- int g(int) {return 0;}
- int main()
- {
- {
- std::function<int(int)> f;
- assert(f == nullptr);
- assert(nullptr == f);
- f = g;
- assert(f != nullptr);
- assert(nullptr != f);
- }
- }
|