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),这是否意味着警告是因为结构使用已弃用的成员引起的?
有没有办法使用静态const struct成员的deprecated属性?
GCC 4.9.3似乎没有给出警告.
解决方法
看来这是GCC> = 5.0(
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71274)的错误.
原文地址:https://www.jb51.cc/c/112851.html
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。