1 // { dg-do assemble  }
2 // Test for overloaded operators in "C" linkage
3 
4 extern "C" {
5 typedef struct b
6 {
7   int a;
8 } c;
9 
10 extern const c z;
11 
12 inline bool operator!=(const c& x, const c& y)
13 {
14   return x.a != y.a;
15 }
16 }
17 
18 void foo();
19 
bar(c x)20 void bar(c x)
21 {
22   if (x != z)
23     foo();
24 }
25