Back to home page

EIC code displayed by LXR

 
 

    


File indexing completed on 2026-05-10 08:37:10

0001 //===--- CommandLineArgs.h ------------------------------------------------===//
0002 //
0003 // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
0004 // See https://llvm.org/LICENSE.txt for license information.
0005 // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
0006 //
0007 //===----------------------------------------------------------------------===//
0008 //
0009 //  This file defines language options for Clang unittests.
0010 //
0011 //===----------------------------------------------------------------------===//
0012 
0013 #ifndef LLVM_CLANG_TESTING_COMMANDLINEARGS_H
0014 #define LLVM_CLANG_TESTING_COMMANDLINEARGS_H
0015 
0016 #include "clang/Basic/LLVM.h"
0017 #include "llvm/ADT/StringRef.h"
0018 #include <string>
0019 #include <vector>
0020 
0021 namespace clang {
0022 
0023 enum TestLanguage {
0024 #define TESTLANGUAGE(lang, version, std_flag, version_index)                   \
0025   Lang_##lang##version,
0026 #include "clang/Testing/TestLanguage.def"
0027 
0028   Lang_OpenCL,
0029   Lang_OBJC,
0030   Lang_OBJCXX,
0031 };
0032 
0033 std::vector<TestLanguage> getCOrLater(int MinimumStd);
0034 std::vector<TestLanguage> getCXXOrLater(int MinimumStd);
0035 
0036 std::vector<std::string> getCommandLineArgsForTesting(TestLanguage Lang);
0037 std::vector<std::string> getCC1ArgsForTesting(TestLanguage Lang);
0038 
0039 StringRef getFilenameForTesting(TestLanguage Lang);
0040 
0041 /// Find a target name such that looking for it in TargetRegistry by that name
0042 /// returns the same target. We expect that there is at least one target
0043 /// configured with this property.
0044 std::string getAnyTargetForTesting();
0045 
0046 } // end namespace clang
0047 
0048 #endif