在clang中支持init_priority

时间:2019-02-11 03:02:53

标签: c++ gcc clang++

init_priorityGCC's attribute doc中有很好的定义,因此代码可以使用该属性来控制glocal / static变量的初始化顺序。

在Clang中,我也看到了类似的测试代码,例如https://github.com/llvm-mirror/clang/blob/master/test/SemaCXX/init-priority-attr.cpp的代码类似

Two foo __attribute__((init_priority(101))) ( 5, 6 );

但是我在clang's attribute documentation中找不到任何init_priority

所以问题是:

  1. 用{语正式支持init_priority吗?
  2. 如果是,这是否意味着文档缺少init_priority东西?

1 个答案:

答案 0 :(得分:0)

  

使用clang正式支持init_priority吗?

是的,clang编译器支持此属性。

  

如果是,这是否意味着文档缺少init_priority内容?

这也是正确的。他们错过了记录此财产的记录。 (参考:https://github.com/llvm-mirror/clang/blob/802485f170af8d8965817bf0dc3f1336625f3adb/include/clang/Basic/Attr.td#L1922-L1927