1 // RUN: %clang_cc1 -verify -Wunused -Wused-but-marked-unused -fsyntax-only %s
3 namespace ns_unused
{ typedef int Int_unused
__attribute__((unused
)); }
4 namespace ns_not_unused
{ typedef int Int_not_unused
; }
6 template <typename T
> class C
;
7 template <> class __attribute__((unused
)) C
<int> {};
10 ns_not_unused::Int_not_unused i1
; // expected-warning {{unused variable}}
11 ns_unused::Int_unused i0
; // expected-warning {{'Int_unused' was marked unused but was used}}
13 union __attribute__((unused
)) { // expected-warning {{was marked unused but was used}}
18 C
<int>(); // expected-warning {{'C<int>' was marked unused but was used}}