1 /* Verify that #pragma GCC diagnostic works for -Wmismatched-tags.
2    { dg-do "compile" }
3    { dg-options "-Wmismatched-tags" } */
4 
5 #pragma GCC diagnostic push
6 #pragma GCC diagnostic error "-Wmismatched-tags"
7 class A;            // { dg-message "first declared"
8 struct A;           // { dg-error "\\\[-Werror=mismatched-tags" }
9 
10 #pragma GCC diagnostic ignored "-Wmismatched-tags"
11 class B;            // { dg-bogus "first declared" }
12 struct B;
13 
14 #pragma GCC diagnostic warning "-Wmismatched-tags"
15 class C;            // { dg-message "first declared"
16 struct C;           // { dg-warning "\\\[-Wmismatched-tags" }
17 #pragma GCC diagnostic pop
18 
19 class D;            // { dg-message "first declared"
20 struct D;           // { dg-warning "\\\[-Wmismatched-tags" }
21 
22 // { dg-prune-output "some warnings being treated as errors" }
23