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 */ 17ATTR(const) 18ATTR(final) 19ATTR(generic) 20ATTR(implicit) 21ATTR(private) 22ATTR(protected) 23ATTR(public) 24ATTR(static) 25ATTR(synthetic) 26ATTR(used) 27ATTR(hiddenapiblack) 28ATTR(hiddenapigrey) 29#ifdef FUNC_ATTR 30ATTR(bridge) 31ATTR(constructor) 32ATTR(critical_native) 33ATTR(declared_synchronized) 34ATTR(default) 35ATTR(destructor) 36ATTR(delete) 37ATTR(fast_native) 38ATTR(inline) 39ATTR(always_inline) 40ATTR(noinline) 41ATTR(native) 42ATTR(strict) 43ATTR(varargs) 44ATTR(virtual) 45ATTR(nosideeffect) 46ATTR(pure) 47ATTR(noexcept) 48ATTR(nodefargeffect) 49ATTR(nodefeffect) 50ATTR(noretglobal) 51ATTR(nothrow_exception) 52ATTR(noretarg) 53ATTR(noprivate_defeffect) 54ATTR(ipaseen) 55ATTR(rclocalunowned) 56ATTR(callersensitive) 57ATTR(weakref) 58ATTR(safed) 59ATTR(unsafed) 60ATTR(noreturn) 61#endif 62#if defined(FUNC_ATTR) || defined(TYPE_ATTR) 63ATTR(abstract) 64ATTR(extern) 65ATTR(interface) 66ATTR(local) 67ATTR(optimized) 68ATTR(synchronized) 69ATTR(weak) 70#endif 71#if defined(TYPE_ATTR) || defined(FIELD_ATTR) 72#include "memory_order_attrs.def" 73ATTR(enum) 74ATTR(restrict) 75ATTR(transient) 76ATTR(volatile) 77ATTR(rcunowned) 78ATTR(rcweak) 79ATTR(final_boundary_size) 80ATTR(tls_static) 81ATTR(tls_dynamic) 82#endif 83#ifdef TYPE_ATTR 84ATTR(annotation) 85ATTR(readonly) 86ATTR(verified) 87ATTR(localrefvar) 88ATTR(rcunownedthis) 89ATTR(incomplete_array) 90ATTR(may_alias) 91ATTR(static_init_zero) 92ATTR(typedef) 93#endif 94#ifdef FUNC_ATTR 95ATTR(firstarg_return) 96ATTR(called_once) 97#endif 98#ifdef STMT_ATTR 99ATTR(insaferegion) 100ATTR(mayTailcall) 101#endif 102ATTR(oneelem_simd) 103ATTR(nonnull) 104ATTR(section) 105ATTR(asmattr) 106#if defined(FUNC_ATTR) && !defined(NOCONTENT_ATTR) 107ATTR(alias) 108ATTR(constructor_priority) 109ATTR(destructor_priority) 110#endif 111#if (defined(TYPE_ATTR) || defined(FIELD_ATTR)) && !defined(NOCONTENT_ATTR) 112ATTR(pack) 113ATTR(aligned) 114#endif 115#ifdef FUNC_ATTR 116ATTR(initialization) 117ATTR(termination) 118#endif 119#if (defined(FUNC_ATTR) || defined(STMT_ATTR)) 120ATTR(ccall) 121ATTR(webkitjscall) 122ATTR(ghcall) 123#endif 124#if defined(FUNC_ATTR) && !defined(NOCONTENT_ATTR) 125ATTR(frame_pointer) 126ATTR(frame_reserved_slots) 127#endif