diff options
| author | Daniel Dunbar <daniel@zuster.org> | 2009-03-13 23:46:19 +0000 | 
|---|---|---|
| committer | Daniel Dunbar <daniel@zuster.org> | 2009-03-13 23:46:19 +0000 | 
| commit | 1bb3b2ccf3ea6d8e2e8fd634824ff840991173f3 (patch) | |
| tree | 07158dbb1b7e3ab1169637c77aa4a4ec3bfee98b /clang/lib | |
| parent | 313c29126908bc9154f23e371b43ceea2924d653 (diff) | |
| download | bcm5719-llvm-1bb3b2ccf3ea6d8e2e8fd634824ff840991173f3.tar.gz bcm5719-llvm-1bb3b2ccf3ea6d8e2e8fd634824ff840991173f3.zip  | |
Driver: Add types::{isAcceptedByClang,isCXX} predicates.
llvm-svn: 66986
Diffstat (limited to 'clang/lib')
| -rw-r--r-- | clang/lib/Driver/Types.cpp | 31 | 
1 files changed, 31 insertions, 0 deletions
diff --git a/clang/lib/Driver/Types.cpp b/clang/lib/Driver/Types.cpp index cef5c811b7b..e89e973f3f5 100644 --- a/clang/lib/Driver/Types.cpp +++ b/clang/lib/Driver/Types.cpp @@ -69,6 +69,37 @@ bool types::canLipoType(ID Id) {            Id == TY_Object);   } +bool types::isAcceptedByClang(ID Id) { +  switch (Id) { +  default: +    return false; + +  case TY_Asm: +  case TY_C: case TY_PP_C: +  case TY_ObjC: case TY_PP_ObjC: +  case TY_CXX: case TY_PP_CXX: +  case TY_ObjCXX: case TY_PP_ObjCXX: +  case TY_CHeader: case TY_PP_CHeader: +  case TY_ObjCHeader: case TY_PP_ObjCHeader: +  case TY_CXXHeader: case TY_PP_CXXHeader: +  case TY_ObjCXXHeader: case TY_PP_ObjCXXHeader: +    return true; +  } +} + +bool types::isCXX(ID Id) { +  switch (Id) { +  default: +    return false; + +  case TY_CXX: case TY_PP_CXX: +  case TY_ObjCXX: case TY_PP_ObjCXX: +  case TY_CXXHeader: case TY_PP_CXXHeader: +  case TY_ObjCXXHeader: case TY_PP_ObjCXXHeader: +    return true; +  } +} +  types::ID types::lookupTypeForExtension(const char *Ext) {    unsigned N = strlen(Ext);  | 

