Toolchain
This module defines a toolchain abstraction layer through macros.
Summary
Usage:
typedef OT_TOOL_PACKED_BEGIN struct { char mField1; union { char mField2; long mField3; } OT_TOOL_PACKED_FIELD; } OT_TOOL_PACKED_END packed_struct_t;
Macros
OT_APPLE_IGNORE_GNU_FOLDING_CONSTANT
OT_APPLE_IGNORE_GNU_FOLDING_CONSTANT __VA_ARGS__
OT_FALL_THROUGH
OT_FALL_THROUGH do \ { \ } while (false) /* fallthrough */
Suppress fall through warning in specific compiler.
OT_MUST_USE_RESULT
OT_MUST_USE_RESULT
Compiler-specific indication that a class or enum must be used when it is the return value of a function.
OT_TOOL_PACKED_BEGIN
OT_TOOL_PACKED_BEGIN
Compiler-specific indication that a class or struct must be byte packed.
OT_TOOL_PACKED_FIELD
OT_TOOL_PACKED_FIELD
Indicate to the compiler a nested struct or union to be packed within byte packed class or struct.
OT_TOOL_WEAK
OT_TOOL_WEAK
Compiler-specific weak symbol modifier.
OT_UNREACHABLE_CODE
OT_UNREACHABLE_CODE CODE
Suppress Unreachable code warning in specific toolchains.
OT_UNUSED_VARIABLE
OT_UNUSED_VARIABLE do \ { \ (void)(VARIABLE); \ } while (false)
Suppress unused variable warning in specific toolchains.