1b82dcb62SLouis Dionne //===----------------------------------------------------------------------===// 2b82dcb62SLouis Dionne // 3b82dcb62SLouis Dionne // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. 4b82dcb62SLouis Dionne // See https://llvm.org/LICENSE.txt for license information. 5b82dcb62SLouis Dionne // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception 6b82dcb62SLouis Dionne // 7b82dcb62SLouis Dionne //===----------------------------------------------------------------------===// 8b82dcb62SLouis Dionne 9*ac8c9f1eSLouis Dionne // UNSUPPORTED: c++03, c++11, c++14 10b82dcb62SLouis Dionne // UNSUPPORTED: availability-filesystem-missing 11b82dcb62SLouis Dionne 12b82dcb62SLouis Dionne // <filesystem> 13b82dcb62SLouis Dionne 14*ac8c9f1eSLouis Dionne #include <filesystem> 15*ac8c9f1eSLouis Dionne namespace fs = std::filesystem; 16b82dcb62SLouis Dionne using namespace fs; 17b82dcb62SLouis Dionne 18b82dcb62SLouis Dionne struct ConvToPath { operator fs::pathConvToPath19b82dcb62SLouis Dionne operator fs::path() const { 20b82dcb62SLouis Dionne return ""; 21b82dcb62SLouis Dionne } 22b82dcb62SLouis Dionne }; 23b82dcb62SLouis Dionne main(int,char **)24b82dcb62SLouis Dionneint main(int, char**) { 25b82dcb62SLouis Dionne ConvToPath LHS, RHS; 26b82dcb62SLouis Dionne (void)(LHS / RHS); // expected-error {{invalid operands to binary expression}} 27b82dcb62SLouis Dionne 28b82dcb62SLouis Dionne return 0; 29b82dcb62SLouis Dionne } 30