//===----------------------------------------------------------------------===// // // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. // See https://llvm.org/LICENSE.txt for license information. // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception // //===----------------------------------------------------------------------===// // // class match_results // explicit match_results(const Allocator& a = Allocator()); // before C++20 // match_results() : match_results(Allocator()) {} // C++20 // explicit match_results(const Allocator& a); // C++20 #include #include #include "test_macros.h" #if TEST_STD_VER >= 11 #include "test_convertible.h" template void test_implicit() { static_assert(test_convertible(), ""); static_assert(!test_convertible(), ""); } #endif template void test() { typedef std::match_results M; typedef std::allocator > Alloc; M m; assert(m.size() == 0); assert(!m.ready()); assert(m.get_allocator() == Alloc()); #if TEST_STD_VER >= 11 test_implicit(); #endif } int main(int, char**) { test(); #ifndef TEST_HAS_NO_WIDE_CHARACTERS test(); #endif return 0; }