【发布时间】:2010-09-25 00:33:10
【问题描述】:
我们在static initialization order fiasco 上遇到了一些问题,我正在寻找方法来梳理大量代码以找出可能出现的情况。有关如何有效地做到这一点的任何建议?
编辑:关于如何解决静态初始化顺序问题,我得到了一些很好的答案,但这不是我的问题。我想知道如何查找受此问题影响的对象。在这方面,埃文的回答似乎是迄今为止最好的;我不认为我们可以使用 valgrind,但我们可能有可以执行类似功能的内存分析工具。这只会在给定构建的初始化顺序错误的情况下发现问题,并且顺序可以随着每次构建而改变。也许有一个静态分析工具可以捕捉到这一点。我们的平台是在 AIX 上运行的 IBM XLC/C++ 编译器。
【问题讨论】:
-
Plus One 用于查找它们。几年前我向 GCC 提交了一个功能请求,但没有任何结果。
标签: c++ initialization static-order-fiasco