1 // RUN: %clang_cc1 -E %s -o - | FileCheck %s 2 3 #if __has_feature(has_nothrow_assign) 4 int has_nothrow_assign(); 5 #endif 6 // CHECK: int has_nothrow_assign(); 7 8 #if __has_feature(has_nothrow_copy) 9 int has_nothrow_copy(); 10 #endif 11 // CHECK: int has_nothrow_copy(); 12 13 #if __has_feature(has_nothrow_constructor) 14 int has_nothrow_constructor(); 15 #endif 16 // CHECK: int has_nothrow_constructor(); 17 18 #if __has_feature(has_trivial_assign) 19 int has_trivial_assign(); 20 #endif 21 // CHECK: int has_trivial_assign(); 22 23 #if __has_feature(has_trivial_copy) 24 int has_trivial_copy(); 25 #endif 26 // CHECK: int has_trivial_copy(); 27 28 #if __has_feature(has_trivial_constructor) 29 int has_trivial_constructor(); 30 #endif 31 // CHECK: int has_trivial_constructor(); 32 33 #if __has_feature(has_trivial_destructor) 34 int has_trivial_destructor(); 35 #endif 36 // CHECK: int has_trivial_destructor(); 37 38 #if __has_feature(has_virtual_destructor) 39 int has_virtual_destructor(); 40 #endif 41 // CHECK: int has_virtual_destructor(); 42 43 #if __has_feature(is_abstract) 44 int is_abstract(); 45 #endif 46 // CHECK: int is_abstract(); 47 48 #if __has_feature(is_base_of) 49 int is_base_of(); 50 #endif 51 // CHECK: int is_base_of(); 52 53 #if __has_feature(is_class) 54 int is_class(); 55 #endif 56 // CHECK: int is_class(); 57 58 #if __has_feature(is_convertible_to) 59 int is_convertible_to(); 60 #endif 61 // CHECK: int is_convertible_to(); 62 63 #if __has_feature(is_empty) 64 int is_empty(); 65 #endif 66 // CHECK: int is_empty(); 67 68 #if __has_feature(is_enum) 69 int is_enum(); 70 #endif 71 // CHECK: int is_enum(); 72 73 #if __has_feature(is_final) 74 int is_final(); 75 #endif 76 // CHECK: int is_final(); 77 78 #if __has_feature(is_pod) 79 int is_pod(); 80 #endif 81 // CHECK: int is_pod(); 82 83 #if __has_feature(is_polymorphic) 84 int is_polymorphic(); 85 #endif 86 // CHECK: int is_polymorphic(); 87 88 #if __has_feature(is_union) 89 int is_union(); 90 #endif 91 // CHECK: int is_union(); 92 93 #if __has_feature(is_literal) 94 int is_literal(); 95 #endif 96 // CHECK: int is_literal(); 97 98 #if __has_feature(is_standard_layout) 99 int is_standard_layout(); 100 #endif 101 // CHECK: int is_standard_layout(); 102 103 #if __has_feature(is_trivially_copyable) 104 int is_trivially_copyable(); 105 #endif 106 // CHECK: int is_trivially_copyable(); 107 108 #if __has_feature(underlying_type) 109 int underlying_type(); 110 #endif 111 // CHECK: int underlying_type(); 112