1
2 //===----------------------------------------------------------------------===//
3 //
4 // The LLVM Compiler Infrastructure
5 //
6 // This file is dual licensed under the MIT and the University of Illinois Open
7 // Source Licenses. See LICENSE.TXT for details.
8 //
9 //===----------------------------------------------------------------------===//
10 //
11 // <functional> feature macros
12
13 /* Constant Value
14 __cpp_lib_boyer_moore_searcher 201603L
15 __cpp_lib_invoke 201411L
16 __cpp_lib_not_fn 201603L
17 __cpp_lib_result_of_sfinae 201210L
18 __cpp_lib_transparent_operators 201510L
19
20 */
21
22 #include <functional>
23 #include <cassert>
24 #include "test_macros.h"
25
main()26 int main()
27 {
28 // ensure that the macros that are supposed to be defined in <functional> are defined.
29
30 #if TEST_STD_VER > 14
31 # if !defined(__cpp_lib_invoke)
32 # error "__cpp_lib_invoke is not defined"
33 # elif __cpp_lib_invoke < 201411L
34 # error "__cpp_lib_invoke has an invalid value"
35 # endif
36 #endif
37
38 /*
39 #if !defined(__cpp_lib_fooby)
40 # error "__cpp_lib_fooby is not defined"
41 #elif __cpp_lib_fooby < 201606L
42 # error "__cpp_lib_fooby has an invalid value"
43 #endif
44 */
45 }
46