rjmccall added inline comments.
================
Comment at: test/FixIt/fixit-cxx0x.cpp:57
(void)[&, &i, &i]{}; // expected-error 2{{'&' cannot precede a capture when
the capture default is '&'}}
- (void)[=, this]{ this->g(5); }; // expected-error{{'this' cannot be
explicitly captured}}
(void)[i, i]{ }; // expected-error{{'i' can appear only once in a capture
list}}
----------------
hamzasood wrote:
> rjmccall wrote:
> > hamzasood wrote:
> > > rjmccall wrote:
> > > > hamzasood wrote:
> > > > > rjmccall wrote:
> > > > > > Shouldn't you only be accepting this in C++2a mode?
> > > > > I'm not sure what the system is with allowing future language
> > > > > features as extensions, but I noticed that [*this] capture is allowed
> > > > > as an extension pre-C++17 so I figured it would make sense for [=,
> > > > > this] to also be allowed as an extension (since the proposal mentions
> > > > > how it's meant to increase code clarify in the presence of [*this]).
> > > > Surely there should at least be an on-by-default extension warning?
> > > > The behavior we're using sounds a lot more like we're treating this as
> > > > a bug-fix in the standard than a new feature. Richard, can you weigh
> > > > in here?
> > > The extension warning for this (ext_equals_this_lambda_capture_cxx2a) is
> > > on by default.
> > Why did the diagnostic disappear from this file, then?
> That file is for FixIt hints, which I don't think make much sense for an
> extension warning (and I couldn't find any other extension warnings that
> offer FixIt hints)
Sure, it's reasonable for this specific test to not test the warning. However,
since I don't see anything in this test that actually turns off the warning,
and since you have not in fact added any tests that verify that the warning is
ever turned on, I suspect that it is actually not being emitted.
https://reviews.llvm.org/D36572
_______________________________________________
cfe-commits mailing list
[email protected]
http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits