Implement ObjC built-in types in MinimalAction.

This fixes the recent regression with selector-1.m and -parse-noop.

llvm-svn: 43575
diff --git a/clang/Parse/MinimalAction.cpp b/clang/Parse/MinimalAction.cpp
index bc7c41b..92d997f 100644
--- a/clang/Parse/MinimalAction.cpp
+++ b/clang/Parse/MinimalAction.cpp
@@ -30,7 +30,19 @@
 
 void MinimalAction:: ActOnTranslationUnitScope(SourceLocation Loc, Scope *S) {
   TUScope = S;
-  // FIXME: add id/SEL/Class. We need to get our paws on the identifier table.
+  IdentifierInfo *II;
+  TypeNameInfo *TI;
+  
+  // recognize the ObjC built-in type identifiers.
+  II = &Idents.get("id");
+  TI = new TypeNameInfo(1, II->getFETokenInfo<TypeNameInfo>());
+  II->setFETokenInfo(TI);
+  II = &Idents.get("SEL");
+  TI = new TypeNameInfo(1, II->getFETokenInfo<TypeNameInfo>());
+  II->setFETokenInfo(TI);
+  II = &Idents.get("Class");
+  TI = new TypeNameInfo(1, II->getFETokenInfo<TypeNameInfo>());
+  II->setFETokenInfo(TI);
 }
 
 /// isTypeName - This looks at the IdentifierInfo::FETokenInfo field to