gpt4 book ai didi

c++ - 内联失败 : function body can be overwritten at link time

转载 作者:IT老高 更新时间:2023-10-28 23:15:42 25 4
gpt4 key购买 nike

我今天从我认为具有 g++-4.6 的 Ubuntu 12.04 升级到具有 g++-4.7.2 的 Ubuntu 12.10。在我的代码中,我有几个函数标记为 __attribute__((always_inline))。原因很简单,分析向我展示了它显着提高了代码的性能。它在 g++ 4.6 上运行良好,但现在在 g++ 4.7 上我收到错误消息:

error: inlining failed in call to always_inline 'void func_name(args)': function body can be overwritten at link time

我无法分享我的实际代码,我试图缩小范围,但是当我更改太多时,错误就会消失,所以这没有帮助。我对此错误消息的根本原因感兴趣。

最佳答案

我本不想自己回答这个问题,但我在发帖几分钟后无意中找到了答案。

这个(神秘的)错误消息的原因是函数没有被标记为inline,只有__attribute((always_inline))

关于c++ - 内联失败 : function body can be overwritten at link time,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13472341/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com