This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug c/31367] Should not warn about use of deprecated type in deprecated struct
- From: "spark at gcc dot gnu dot org" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: 26 Mar 2007 23:56:57 -0000
- Subject: [Bug c/31367] Should not warn about use of deprecated type in deprecated struct
- References: <bug-31367-1313@http.gcc.gnu.org/bugzilla/>
- Reply-to: gcc-bugzilla at gcc dot gnu dot org
------- Comment #3 from spark at gcc dot gnu dot org 2007-03-27 00:56 -------
# cat -n t.c
1 typedef __attribute__((deprecated)) int foo;
2 typedef
3 struct
4 __attribute__((deprecated))
5 bar1
6 {
7 foo baz;
8 }
9 bop1;
10
11 typedef
12 __attribute__((deprecated))
13 struct
14 bar2
15 {
16 foo baz;
17 } bop2;
18
19 typedef
20 struct
21 bar3
22 {
23 foo baz;
24 }
25 __attribute__((deprecated))
26 bop3;
27
28 typedef
29 struct
30 bar4
31 {
32 foo baz;
33 }
34 bop4
35 __attribute__((deprecated));
# ~/local/pkg/4.1/bin/gcc -c t.c
t.c:7: warning: 'foo' is deprecated
t.c:9: warning: 'bar1' is deprecated (declared at t.c:6)
t.c:16: warning: 'foo' is deprecated
t.c:23: warning: 'foo' is deprecated
t.c:26: warning: 'bar3' is deprecated (declared at t.c:22)
t.c:32: warning: 'foo' is deprecated
#
I'm not sure what to make of this,
but there seems to be some subtleties regarding
which declaration the attribute applies to.
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=31367