p8.cpp revision 93962e5360a43200faa70939571afc4fb9326cf7
141ab14b725c8f2bb3e54553d0d7d96ff184786b1Benjamin Kramer// RUN: %clang_cc1 -std=c++11 %s -verify
241ab14b725c8f2bb3e54553d0d7d96ff184786b1Benjamin Kramer
341ab14b725c8f2bb3e54553d0d7d96ff184786b1Benjamin Kramerclass X0 {
441ab14b725c8f2bb3e54553d0d7d96ff184786b1Benjamin Kramer  void explicit_capture() {
541ab14b725c8f2bb3e54553d0d7d96ff184786b1Benjamin Kramer    int foo;
641ab14b725c8f2bb3e54553d0d7d96ff184786b1Benjamin Kramer
741ab14b725c8f2bb3e54553d0d7d96ff184786b1Benjamin Kramer    [foo, foo] () {}; // expected-error {{'foo' can appear only once}} expected-error {{not supported yet}}
841ab14b725c8f2bb3e54553d0d7d96ff184786b1Benjamin Kramer    [this, this] () {}; // expected-error {{'this' can appear only once}} expected-error {{not supported yet}}
941ab14b725c8f2bb3e54553d0d7d96ff184786b1Benjamin Kramer    [=, foo] () {}; // expected-error {{'&' must precede a capture when}} expected-error {{not supported yet}}
1041ab14b725c8f2bb3e54553d0d7d96ff184786b1Benjamin Kramer    [=, &foo] () {}; // expected-error {{not supported yet}}
1141ab14b725c8f2bb3e54553d0d7d96ff184786b1Benjamin Kramer    [=, this] () {}; // expected-error {{'this' cannot appear}} expected-error {{not supported yet}}
1241ab14b725c8f2bb3e54553d0d7d96ff184786b1Benjamin Kramer    [&, foo] () {}; // expected-error {{not supported yet}}
13ef99356dfebb96f6f90efb912c2877214bad060eAhmed Bougacha    [&, &foo] () {}; // expected-error {{'&' cannot precede a capture when}} expected-error {{not supported yet}}
14ef99356dfebb96f6f90efb912c2877214bad060eAhmed Bougacha    [&, this] () {}; // expected-error {{not supported yet}}
15a182be9b6cab86b3d52371efea1681161820cf1cBenjamin Kramer  }
16a182be9b6cab86b3d52371efea1681161820cf1cBenjamin Kramer};
17ef99356dfebb96f6f90efb912c2877214bad060eAhmed Bougacha