1/* 2 * Copyright (c) 2023 Huawei Device Co., Ltd. 3 * Licensed under the Apache License, Version 2.0 (the "License"); 4 * you may not use this file except in compliance with the License. 5 * You may obtain a copy of the License at 6 * 7 * http://www.apache.org/licenses/LICENSE-2.0 8 * 9 * Unless required by applicable law or agreed to in writing, software 10 * distributed under the License is distributed on an "AS IS" BASIS, 11 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 * See the License for the specific language governing permissions and 13 * limitations under the License. 14 */ 15 16/* all possible attribute names from typeattrs.def, funcattrs.def and fieldattrs.def */ 17 ATTR(const) 18 ATTR(final) 19 ATTR(generic) 20 ATTR(implicit) 21 ATTR(private) 22 ATTR(protected) 23 ATTR(public) 24 ATTR(static) 25 ATTR(synthetic) 26 ATTR(used) 27 ATTR(hiddenapiblack) 28 ATTR(hiddenapigrey) 29#ifdef FUNC_ATTR 30 ATTR(bridge) 31 ATTR(constructor) 32 ATTR(critical_native) 33 ATTR(declared_synchronized) 34 ATTR(default) 35 ATTR(destructor) 36 ATTR(delete) 37 ATTR(fast_native) 38 ATTR(inline) 39 ATTR(always_inline) 40 ATTR(noinline) 41 ATTR(native) 42 ATTR(strict) 43 ATTR(varargs) 44 ATTR(virtual) 45 ATTR(nosideeffect) 46 ATTR(pure) 47 ATTR(noexcept) 48 ATTR(nodefargeffect) 49 ATTR(nodefeffect) 50 ATTR(noretglobal) 51 ATTR(nothrow_exception) 52 ATTR(noretarg) 53 ATTR(noprivate_defeffect) 54 ATTR(ipaseen) 55 ATTR(rclocalunowned) 56 ATTR(callersensitive) 57 ATTR(weakref) 58 ATTR(safed) 59 ATTR(unsafed) 60 ATTR(noreturn) 61#endif 62#if defined(FUNC_ATTR) || defined(TYPE_ATTR) 63 ATTR(abstract) 64 ATTR(extern) 65 ATTR(interface) 66 ATTR(local) 67 ATTR(optimized) 68 ATTR(synchronized) 69 ATTR(weak) 70#endif 71#if defined(TYPE_ATTR) || defined(FIELD_ATTR) 72#include "memory_order_attrs.def" 73 ATTR(enum) 74 ATTR(restrict) 75 ATTR(transient) 76 ATTR(volatile) 77 ATTR(rcunowned) 78 ATTR(rcweak) 79 ATTR(final_boundary_size) 80 ATTR(tls_static) 81 ATTR(tls_dynamic) 82#endif 83#ifdef TYPE_ATTR 84 ATTR(annotation) 85 ATTR(readonly) 86 ATTR(verified) 87 ATTR(localrefvar) 88 ATTR(rcunownedthis) 89 ATTR(incomplete_array) 90 ATTR(may_alias) 91 ATTR(static_init_zero) 92#endif 93#ifdef FUNC_ATTR 94 ATTR(firstarg_return) 95 ATTR(called_once) 96#endif 97#ifdef STMT_ATTR 98 ATTR(insaferegion) 99#endif 100 ATTR(oneelem_simd) 101 ATTR(nonnull) 102 ATTR(section) 103 ATTR(asmattr) 104#if defined(FUNC_ATTR) && !defined(NOCONTENT_ATTR) 105 ATTR(alias) 106 ATTR(constructor_priority) 107 ATTR(destructor_priority) 108#endif 109#if (defined(TYPE_ATTR) || defined(FIELD_ATTR)) && !defined(NOCONTENT_ATTR) 110 ATTR(pack) 111#endif 112#ifdef FUNC_ATTR 113 ATTR(initialization) 114 ATTR(termination) 115#endif 116#if (defined(FUNC_ATTR) || defined(STMT_ATTR)) 117 ATTR(ccall) 118 ATTR(webkitjscall) 119 ATTR(ghcall) 120#endif 121#if defined(FUNC_ATTR) && !defined(NOCONTENT_ATTR) 122 ATTR(frame_pointer) 123 ATTR(frame_reserved_slots) 124#endif