blob: b69eadf15a052975df0f510893a862f3329ac60d [file] [log] [blame]
Nick Lewyckyba5f6ec2010-04-24 01:30:46 +00001// RUN: cp %s %t
2// RUN: %clang_cc1 -pedantic -fixit -x c++ %t
3// RUN: %clang_cc1 -fsyntax-only -pedantic -Werror -x c++ %t
Nick Lewyckyd4a97a12010-04-15 06:46:58 +00004// XFAIL: *
Fariborz Jahanianef78ac62009-10-26 20:45:27 +00005
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
11struct S {
12 int i;
13};
14
15int foo(int S::* ps, S s, S* p)
16{
17 p.*ps = 1;
18 return s->*ps;
19}
20
21void foo1(int (S::*ps)(), S s, S* p)
22{
23 (p.*ps)();
24 (s->*ps)();
25}
26