summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorEli Friedman <eli.friedman@gmail.com>2009-05-30 01:45:29 +0000
committerEli Friedman <eli.friedman@gmail.com>2009-05-30 01:45:29 +0000
commit258ffef5b54cf680474080b3b4d86c9a9053c42c (patch)
treea83cf0990fe5193a8eea8895aec79ea320eb76c3
parent09f17a8479de39a60faeacee399195ce20da9251 (diff)
downloadbcm5719-llvm-258ffef5b54cf680474080b3b4d86c9a9053c42c.tar.gz
bcm5719-llvm-258ffef5b54cf680474080b3b4d86c9a9053c42c.zip
Fix some test failures involving -ast-print.
llvm-svn: 72605
-rw-r--r--clang/lib/AST/StmtPrinter.cpp5
-rw-r--r--clang/lib/AST/Type.cpp10
2 files changed, 15 insertions, 0 deletions
diff --git a/clang/lib/AST/StmtPrinter.cpp b/clang/lib/AST/StmtPrinter.cpp
index a4271474729..113cbb48dde 100644
--- a/clang/lib/AST/StmtPrinter.cpp
+++ b/clang/lib/AST/StmtPrinter.cpp
@@ -255,6 +255,11 @@ void StmtPrinter::PrintRawDeclStmt(DeclStmt *S) {
if (TD)
++Begin;
+ if (Begin == End) {
+ PrintRawDecl(TD);
+ return;
+ }
+
if (isa<TypedefDecl>(*Begin))
OS << "typedef ";
else if (VarDecl *V = dyn_cast<VarDecl>(*Begin)) {
diff --git a/clang/lib/AST/Type.cpp b/clang/lib/AST/Type.cpp
index e63e12b3d66..f7eb41c28b3 100644
--- a/clang/lib/AST/Type.cpp
+++ b/clang/lib/AST/Type.cpp
@@ -903,6 +903,16 @@ bool Type::isSpecifierType() const {
case Record:
case Enum:
case Typedef:
+ case Complex:
+ case TypeOfExpr:
+ case TypeOf:
+ case TemplateTypeParm:
+ case TemplateSpecialization:
+ case QualifiedName:
+ case Typename:
+ case ObjCInterface:
+ case ObjCQualifiedInterface:
+ case ObjCQualifiedId:
return true;
default:
return false;
OpenPOWER on IntegriCloud