This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

[参考译文] AM6421:R5F 内核中有一个 GCC 属性不起作用。

Guru**** 2422620 points


请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/processors-group/processors/f/processors-forum/1536610/am6421-there-is-a-gcc-attribute-not-working-in-r5f-core

器件型号:AM6421


工具/软件:

您好!

感谢您的明确回答。

我有兴趣了解 R5F 内核中的析构函数属性。

当程序从 main() 函数退出时、析构函数属性不执行。

但是、在输入 main() 函数时、构造函数属性起作用。

请提供使用析构函数属性的正确方法。

BR

Jaxon

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好 Jaxon、

    是否使用 GCC 编译器?

    谢谢

    Ki

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、Ki、

    我的项目类型和工具链 如下所示。

    关于这一问题、你是否有任何关于如何解决这一问题的建议?

    BR

    Jaxon

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    感谢您的澄清。 我将提请编译器专家注意此主题以供进一步评论。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    感谢您将此问题通知我们。  我能够重现同样的行为。  我提交了条目 EXT_EP-12714 以对此进行调查。

    提供使用析构函数属性的正确方法。

    作为权变措施、请使用标准 RTS 函数 atexit 、在中声明 。  例如:

        atexit(function_name_here);

    谢谢。此致、

    -乔治

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、George、

    感谢您的解决方案。 我很高兴看到 TI 解决了这个问题。

    目前、似乎只有不受支持的__attribute__(析构函数)已使用权变措施进行寻址、

    而__attribute__(析构函数 (x)) 保持不受支持。

    您是否有更好的方法来解决此问题?

    此致、
    Jaxon

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    __attribute__((析构函数 (x))) 仍然不受支持

    正确。

    您是否有更好的方法来解决此问题?

    以一种有限的方式。  注册的函数 atexit  以与注册相反的顺序调用、即最后注册的函数将首先执行。

    谢谢。此致、

    -乔治