| // RUN: %clang_cc1 -std=c++23 -fms-extensions -fsyntax-only -verify %s | |
| // expected-no-diagnostics | |
| struct Wrapper { | |
| template <typename F> Wrapper(F) {} | |
| }; | |
| void omitted_parameter_list() { | |
| Wrapper a([] mutable {}); | |
| Wrapper b([] constexpr {}); | |
| Wrapper c([] consteval {}); | |
| Wrapper d([] static {}); | |
| Wrapper e([] mutable constexpr noexcept -> int { return 1; }); | |
| Wrapper f([] mutable [[]] {}); | |
| } | |
| void named_capture() { | |
| int x = 0; | |
| Wrapper a([x] mutable { return x; }); | |
| } | |
| void microsoft_attribute_controls() { | |
| Wrapper helpstring([helpstring("h")] int); | |
| Wrapper adjacent_lists([library_block][idl_quote("x")] int); | |
| } |