109b80854SEric Fiselier //===----------------------------------------------------------------------===// 209b80854SEric Fiselier // 357b08b09SChandler Carruth // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. 457b08b09SChandler Carruth // See https://llvm.org/LICENSE.txt for license information. 557b08b09SChandler Carruth // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception 609b80854SEric Fiselier // 709b80854SEric Fiselier //===----------------------------------------------------------------------===// 809b80854SEric Fiselier 931cbe0f2SLouis Dionne // UNSUPPORTED: c++03 10b6a9afa8SEric Fiselier 11*14324fa4SNikolas Klauser // ADDITIONAL_COMPILE_FLAGS: -D _LIBCPP_USE_IS_CONVERTIBLE_FALLBACK 12*14324fa4SNikolas Klauser 1309b80854SEric Fiselier // type_traits 1409b80854SEric Fiselier 1509b80854SEric Fiselier // is_convertible 1609b80854SEric Fiselier 1709b80854SEric Fiselier // Test the fallback implementation. 1809b80854SEric Fiselier 19d49455efSEric Fiselier // libc++ provides a fallback implementation of the compiler trait 20d49455efSEric Fiselier // `__is_convertible` with the same name when clang doesn't. 21d49455efSEric Fiselier // Because this test forces the use of the fallback even when clang provides 22d49455efSEric Fiselier // it causing a keyword incompatibility. 2309b80854SEric Fiselier 247fc6a556SMarshall Clow #include "test_macros.h" 25*14324fa4SNikolas Klauser TEST_CLANG_DIAGNOSTIC_IGNORED("-Wkeyword-compat") 26*14324fa4SNikolas Klauser 27*14324fa4SNikolas Klauser #include "is_convertible.pass.cpp" 28