rjmccall added a comment.
Thanks.
It's good to have a lambda test, but that one isn't actually testing the lambda
path — the place the diagnostic will trigger is just the normal
function-prototype path, just originally within a lambda. You can do something
like this:
template <class T> int foo(T &&t);
void bar(int x = foo(
[](int x = foo(
[](int x = foo(
[](int x = foo(
...
It looks like you'll have to bump `-fbracket-level` to get a crash, but since
that's configurable and this limit isn't, we should still be testing that.
Also I think the same problem can happen with the "blocks" extension — could
you test that, too? That would be something like (with `-fblocks`):
void bar(int x = foo(
^(int x = foo(
^(int x = foo(
^(int x = foo(
...
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D63975/new/
https://reviews.llvm.org/D63975
_______________________________________________
cfe-commits mailing list
[email protected]
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits