gpt4 book ai didi

c++ - Boost - 构建时关于取消引用指针的警告

转载 作者:塔克拉玛干 更新时间:2023-11-03 07:33:54 25 4
gpt4 key购买 nike

我正在关注“入门”tutorial来自 Boost 网站。我正在尝试使用以下命令构建单独编译的库:

./bootstrap.sh

然后

./b2

在构建过程中,我收到了很多(比如数百个)这样的警告:

./boost/...whatever.hpp:linenumber: warning: dereferencing pointer ‘...’ does break strict-aliasing rules

我想知道这是否是我这边的问题,我是否可以做些什么来消除这些警告?

谢谢。

(Boost 1.48,Ubuntu 10.04.3 LTS)

最佳答案

Cellperformance声明严格别名是:

[...] an assumption, made by the C (or C++) compiler, that dereferencing pointers to objects of different types will never refer to the same memory location (i.e. alias eachother.)

此警告在启用 -fno-strict-aliasing 和优化(-O2 或更高)时出现,因为编译器在访问 (可能)别名内存。这导致优化较少 - 编译器不能,例如确实要确保元素不重叠(请参阅上面发布的文章中的示例)。

这不是您应该担心的警告 - Boost 开发人员可能已经意识到这一点,并且有充分的理由说明这是可以接受的。

关于c++ - Boost - 构建时关于取消引用指针的警告,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8265408/

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