1*e53c461bSKonstantin Varlamov //===----------------------------------------------------------------------===// 2*e53c461bSKonstantin Varlamov // 3*e53c461bSKonstantin Varlamov // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. 4*e53c461bSKonstantin Varlamov // See https://llvm.org/LICENSE.txt for license information. 5*e53c461bSKonstantin Varlamov // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception 6*e53c461bSKonstantin Varlamov // 7*e53c461bSKonstantin Varlamov //===----------------------------------------------------------------------===// 8*e53c461bSKonstantin Varlamov 9*e53c461bSKonstantin Varlamov // UNSUPPORTED: c++03, c++11, c++14, c++17 10*e53c461bSKonstantin Varlamov 11*e53c461bSKonstantin Varlamov // std::ranges::lazy_split_view::outer-iterator::outer-iterator() 12*e53c461bSKonstantin Varlamov 13*e53c461bSKonstantin Varlamov #include <ranges> 14*e53c461bSKonstantin Varlamov 15*e53c461bSKonstantin Varlamov #include "../types.h" 16*e53c461bSKonstantin Varlamov test()17*e53c461bSKonstantin Varlamovconstexpr bool test() { 18*e53c461bSKonstantin Varlamov // `View` is a forward range. 19*e53c461bSKonstantin Varlamov { 20*e53c461bSKonstantin Varlamov [[maybe_unused]] OuterIterForward i; 21*e53c461bSKonstantin Varlamov } 22*e53c461bSKonstantin Varlamov 23*e53c461bSKonstantin Varlamov { 24*e53c461bSKonstantin Varlamov [[maybe_unused]] OuterIterForward i = {}; 25*e53c461bSKonstantin Varlamov } 26*e53c461bSKonstantin Varlamov 27*e53c461bSKonstantin Varlamov // `View` is an input range. 28*e53c461bSKonstantin Varlamov { 29*e53c461bSKonstantin Varlamov [[maybe_unused]] OuterIterInput i; 30*e53c461bSKonstantin Varlamov } 31*e53c461bSKonstantin Varlamov 32*e53c461bSKonstantin Varlamov { 33*e53c461bSKonstantin Varlamov [[maybe_unused]] OuterIterInput i = {}; 34*e53c461bSKonstantin Varlamov } 35*e53c461bSKonstantin Varlamov 36*e53c461bSKonstantin Varlamov return true; 37*e53c461bSKonstantin Varlamov } 38*e53c461bSKonstantin Varlamov main(int,char **)39*e53c461bSKonstantin Varlamovint main(int, char**) { 40*e53c461bSKonstantin Varlamov test(); 41*e53c461bSKonstantin Varlamov static_assert(test()); 42*e53c461bSKonstantin Varlamov 43*e53c461bSKonstantin Varlamov return 0; 44*e53c461bSKonstantin Varlamov } 45