ZHCUAV8W january 1998 – march 2023 66AK2E05 , 66AK2H06 , 66AK2H12 , 66AK2H14 , AM1705 , AM1707 , AM1802 , AM1806 , AM1808 , AM1810 , AM5K2E04 , OMAP-L132 , OMAP-L137 , OMAP-L138 , SM470R1B1M-HT , TMS470R1A288 , TMS470R1A384 , TMS470R1A64 , TMS470R1B1M , TMS470R1B512 , TMS470R1B768
编译器识别其定义仅包含对另一个函数的调用的函数。如果这两个函数具有相同的签名(相同的返回值以及相同数量、相同类型且顺序相同的参数),则编译器可以使调用函数成为被调用函数的别名。
例如,考虑以下情况:
int bbb(int arg1, char *arg2);
int aaa(int n, char *str)
{
return bbb(n, str);
}
在本示例中,编译器使 aaa 成为 bbb 的别名,因此在链接时,对函数aaa 的所有调用都应重定向到 bbb。如果链接器可以成功地将所有引用重定向到aaa,则可以删除函数 aaa 的主体,并将符号 aaa 定义在与 bbb 相同的地址处。
有关使用 GCC 函数属性语法来声明函数别名的信息,请参阅节 5.17.2。