不推荐使用的struct members C ++

时间:2016-05-25 10:37:59

标签: c++ gcc

GCC 6.1.1给出了一个关于C ++代码的弃用声明警告

struct foo
{
   __attribute__ ((deprecated)) static const int a = 1;
};


dep.cpp:1:8: warning: ‘foo::a’ is deprecated [-Wdeprecated-declarations]
   struct foo
          ^~~
dep.cpp:3:50: note: declared here
   __attribute__ ((deprecated)) static const int a = 1;

documentation表示"如果在源文件中的任何位置使用变量,则不推荐使用的属性会产生警告。"。

由于警告指向第一行(struct foo),这是否意味着引发了警告,因为结构是"使用"已弃用的会员? 有没有办法将deprecated属性用于静态const结构成员?

GCC 4.9.3似乎没有发出此警告。

1 个答案:

答案 0 :(得分:1)

这似乎是GCC> = 5.0(https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71274)的错误。