1*79a2b4baSKonstantin Varlamov //===----------------------------------------------------------------------===// 2*79a2b4baSKonstantin Varlamov // 3*79a2b4baSKonstantin Varlamov // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. 4*79a2b4baSKonstantin Varlamov // See https://llvm.org/LICENSE.txt for license information. 5*79a2b4baSKonstantin Varlamov // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception 6*79a2b4baSKonstantin Varlamov // 7*79a2b4baSKonstantin Varlamov //===----------------------------------------------------------------------===// 8*79a2b4baSKonstantin Varlamov 9*79a2b4baSKonstantin Varlamov // UNSUPPORTED: c++03, c++11, c++14, c++17 10*79a2b4baSKonstantin Varlamov 11*79a2b4baSKonstantin Varlamov // std::ranges::size 12*79a2b4baSKonstantin Varlamov 13*79a2b4baSKonstantin Varlamov #include <ranges> 14*79a2b4baSKonstantin Varlamov 15*79a2b4baSKonstantin Varlamov extern int arr[]; 16*79a2b4baSKonstantin Varlamov 17*79a2b4baSKonstantin Varlamov // Verify that for an array of unknown bound `ranges::ssize` is ill-formed. test()18*79a2b4baSKonstantin Varlamovvoid test() { 19*79a2b4baSKonstantin Varlamov std::ranges::ssize(arr); 20*79a2b4baSKonstantin Varlamov // expected-error-re@-1 {{{{no matching function for call to object of type 'const (std::ranges::)?__ssize::__fn'}}}} 21*79a2b4baSKonstantin Varlamov } 22