1 // RUN: cp %s %t
2 // RUN: %clang_cc1 -pedantic -fixit -x c++ %t
3 // RUN: %clang_cc1 -fsyntax-only -pedantic -Werror -x c++ %t
4 // XFAIL: *
5 
6 /* This is a test of the various code modification hints that are
7    provided as part of warning or extension diagnostics. All of the
8    warnings will be fixed by -fixit, and the resulting file should
9    compile cleanly with -Werror -pedantic. */
10 
11 struct  S {
12 	int i;
13 };
14 
foo(int S::* ps,S s,S * p)15 int foo(int S::* ps, S s, S* p)
16 {
17   p.*ps = 1;
18   return s->*ps;
19 }
20 
foo1(int (S::* ps)(),S s,S * p)21 void foo1(int (S::*ps)(), S s, S* p)
22 {
23   (p.*ps)();
24   (s->*ps)();
25 }
26 
27