// RUN: cp %s %t | |
// RUN: %clang_cc1 -pedantic -fixit -x c++ %t | |
// RUN: %clang_cc1 -fsyntax-only -pedantic -Werror -x c++ %t | |
// XFAIL: * | |
/* This is a test of the various code modification hints that are | |
provided as part of warning or extension diagnostics. All of the | |
warnings will be fixed by -fixit, and the resulting file should | |
compile cleanly with -Werror -pedantic. */ | |
struct S { | |
int i; | |
}; | |
int foo(int S::* ps, S s, S* p) | |
{ | |
p.*ps = 1; | |
return s->*ps; | |
} | |
void foo1(int (S::*ps)(), S s, S* p) | |
{ | |
(p.*ps)(); | |
(s->*ps)(); | |
} | |