Declaring Attributes of Functions

copy from gcc manual

In GNU C, you declare certain things about functions called in your program which help
the compiler optimize function calls and check your code more carefully.

The keyword __attribute__ allows you to specify special attributes when making a
declaration. This keyword is followed by an attribute specification inside double parentheses.
The following attributes are currently defined for functions on all targets: aligned, alloc_
size, noreturn, returns_twice, noinline, noclone, always_inline, flatten, pure
,

const, nothrow, sentinel, format, format_arg, no_instrument_function, no_split_
stack, section, constructor, destructor, used, unused, deprecated, weak, malloc,
alias, ifunc, warn_unused_result, nonnull, gnu_inline, externally_visible, hot,
cold, artificial, error and warning.
Several other attributes are defined for functions on
particular target systems. Other attributes, including section are supported for variables
declarations (see Section 6.36 [Variable Attributes], page 341) and for types (see Section 6.37
[Type Attributes], page 350).
GCC plugins may provide their own attributes.
You may also specify attributes with ‘__’ preceding and following each keyword. This
allows you to use them in header files without being concerned about a possible macro of
the same name. For example, you may use __noreturn__ instead of noreturn.
See Section 6.31 [Attribute Syntax], page 337, for details of the exact syntax for using
attributes.

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值