1*a8cf78c7SLouis Dionne //===----------------------------------------------------------------------===// 2*a8cf78c7SLouis Dionne // 3*a8cf78c7SLouis Dionne // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. 4*a8cf78c7SLouis Dionne // See https://llvm.org/LICENSE.txt for license information. 5*a8cf78c7SLouis Dionne // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception 6*a8cf78c7SLouis Dionne // 7*a8cf78c7SLouis Dionne //===----------------------------------------------------------------------===// 8*a8cf78c7SLouis Dionne // UNSUPPORTED: c++03, c++11, c++14, c++17 9*a8cf78c7SLouis Dionne 10*a8cf78c7SLouis Dionne // <span> 11*a8cf78c7SLouis Dionne 12*a8cf78c7SLouis Dionne // constexpr span() noexcept; 13*a8cf78c7SLouis Dionne // 14*a8cf78c7SLouis Dionne // Remarks: This constructor shall not participate in overload resolution 15*a8cf78c7SLouis Dionne // unless Extent == 0 || Extent == dynamic_extent is true. 16*a8cf78c7SLouis Dionne 17*a8cf78c7SLouis Dionne 18*a8cf78c7SLouis Dionne #include <span> 19*a8cf78c7SLouis Dionne #include <cassert> 20*a8cf78c7SLouis Dionne #include <string> 21*a8cf78c7SLouis Dionne 22*a8cf78c7SLouis Dionne #include "test_macros.h" 23*a8cf78c7SLouis Dionne main(int,char **)24*a8cf78c7SLouis Dionneint main(int, char**) 25*a8cf78c7SLouis Dionne { 26*a8cf78c7SLouis Dionne std::span<int, 2> s; // expected-error {{no matching constructor for initialization of 'std::span<int, 2>'}} 27*a8cf78c7SLouis Dionne 28*a8cf78c7SLouis Dionne return 0; 29*a8cf78c7SLouis Dionne } 30