Warning, /include/clang/Testing/TestLanguage.def is written in an unsupported language. File is not indexed.
0001
0002 //===-- TestLanguage.def - Language Versions for Testing --------*- C++ -*-===//
0003 //
0004 // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
0005 // See https://llvm.org/LICENSE.txt for license information.
0006 // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
0007 //
0008 //===----------------------------------------------------------------------===//
0009
0010 // The TESTLANGUAGE(-C/-CXX) macros have four parameters:
0011 // the language, the standard version, the corresponding compile-flag,
0012 // and an index of the language version for each language.
0013 // The standard version is used to compare a standard version numerically,
0014 // and the index is used to impose ordering for the language versions
0015 // with respect to each language.
0016
0017 #ifndef TESTLANGUAGE
0018 # define TESTLANGUAGE(...)
0019 #endif
0020
0021 #ifndef TESTLANGUAGE_C
0022 # define TESTLANGUAGE_C(...) TESTLANGUAGE(__VA_ARGS__)
0023 #endif
0024
0025 #ifndef TESTLANGUAGE_CXX
0026 # define TESTLANGUAGE_CXX(...) TESTLANGUAGE(__VA_ARGS__)
0027 #endif
0028
0029 TESTLANGUAGE_C(C, 89, c89, 0)
0030 TESTLANGUAGE_C(C, 99, c99, 1)
0031 TESTLANGUAGE_C(C, 11, c11, 2)
0032 TESTLANGUAGE_C(C, 17, c17, 3)
0033 TESTLANGUAGE_C(C, 23, c23, 4)
0034 TESTLANGUAGE_C(C, 26, c2y, 5)
0035
0036 // TESTLANGUAGE_CXX(CXX, 98, c++98, 0)
0037 TESTLANGUAGE_CXX(CXX, 03, c++03, 1)
0038 TESTLANGUAGE_CXX(CXX, 11, c++11, 2)
0039 TESTLANGUAGE_CXX(CXX, 14, c++14, 3)
0040 TESTLANGUAGE_CXX(CXX, 17, c++17, 4)
0041 TESTLANGUAGE_CXX(CXX, 20, c++20, 5)
0042 TESTLANGUAGE_CXX(CXX, 23, c++23, 6)
0043 TESTLANGUAGE_CXX(CXX, 26, c++26, 7)
0044
0045 #undef TESTLANGUAGE_CXX
0046 #undef TESTLANGUAGE_C
0047 #undef TESTLANGUAGE