diff options
| author | Sam McCall <sam.mccall@gmail.com> | 2019-07-30 20:38:11 +0000 |
|---|---|---|
| committer | Sam McCall <sam.mccall@gmail.com> | 2019-07-30 20:38:11 +0000 |
| commit | 71d4544961a6243bcb8c21ac6e127f7f041a7f57 (patch) | |
| tree | e24a9e83553ab6f7fc7171c8e347d29340dfdb80 /clang/lib/Driver | |
| parent | 4bc625cae08a82b8a49f2d044c75a4fcf9788cb7 (diff) | |
| download | bcm5719-llvm-71d4544961a6243bcb8c21ac6e127f7f041a7f57.tar.gz bcm5719-llvm-71d4544961a6243bcb8c21ac6e127f7f041a7f57.zip | |
Revert "[NFC][clang] Refactor getCompilationPhases()+Types.def step 3."
This reverts commit d2254dbf21a3243233b75294ef901086199df1b9.
This (unintentionally?) changed behavior, disallowing e.g. -x objective-c++-header
llvm-svn: 367353
Diffstat (limited to 'clang/lib/Driver')
| -rw-r--r-- | clang/lib/Driver/Types.cpp | 15 |
1 files changed, 4 insertions, 11 deletions
diff --git a/clang/lib/Driver/Types.cpp b/clang/lib/Driver/Types.cpp index ada1e9d6707..acfc19d0a52 100644 --- a/clang/lib/Driver/Types.cpp +++ b/clang/lib/Driver/Types.cpp @@ -18,14 +18,15 @@ using namespace clang::driver::types; struct TypeInfo { const char *Name; + const char *Flags; const char *TempSuffix; ID PreprocessedType; const llvm::SmallVector<phases::ID, phases::MaxNumberOfPhases> Phases; }; static const TypeInfo TypeInfos[] = { -#define TYPE(NAME, ID, PP_TYPE, TEMP_SUFFIX, ...) \ - { NAME, TEMP_SUFFIX, TY_##PP_TYPE, { __VA_ARGS__ }, }, +#define TYPE(NAME, ID, PP_TYPE, TEMP_SUFFIX, FLAGS, ...) \ + { NAME, FLAGS, TEMP_SUFFIX, TY_##PP_TYPE, { __VA_ARGS__ }, }, #include "clang/Driver/Types.def" #undef TYPE }; @@ -89,15 +90,7 @@ bool types::onlyPrecompileType(ID Id) { } bool types::canTypeBeUserSpecified(ID Id) { - static const clang::driver::types::ID kStaticLangageTypes[] = { - TY_CUDA_DEVICE, TY_HIP_DEVICE, TY_PP_CHeader, - TY_PP_ObjCHeader, TY_PP_CXXHeader, TY_ObjCXXHeader, - TY_PP_CXXModule, TY_LTO_IR, TY_LTO_BC, - TY_Plist, TY_RewrittenObjC, TY_RewrittenLegacyObjC, - TY_Remap, TY_PCH, TY_Object, - TY_Image, TY_dSYM, TY_Dependencies, - TY_CUDA_FATBIN, TY_HIP_FATBIN}; - return !llvm::is_contained(kStaticLangageTypes, Id); + return strchr(getInfo(Id).Flags, 'u'); } bool types::appendSuffixForType(ID Id) { |

