Create a new TypeNameType class, which represents typedefs as types.  This
allows us to handle stuff like:

typedef int G;
 ..
  X = sizeof(G);

llvm-svn: 39189
diff --git a/clang/Parse/Parser.cpp b/clang/Parse/Parser.cpp
index 2f7f4b0..28eea36 100644
--- a/clang/Parse/Parser.cpp
+++ b/clang/Parse/Parser.cpp
@@ -237,7 +237,7 @@
     DS.StorageClassSpec = DeclSpec::SCS_typedef;
     
     // TODO: add a 'TST_builtin' type?
-    DS.TypeSpecType = DeclSpec::TST_typedef;
+    DS.TypeSpecType = DeclSpec::TST_int;
     
     Declarator D(DS, Declarator::FileContext);
     D.SetIdentifier(PP.getIdentifierInfo("__builtin_va_list"),SourceLocation());