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