diff options
| author | Eli Friedman <eli.friedman@gmail.com> | 2009-05-30 01:45:29 +0000 |
|---|---|---|
| committer | Eli Friedman <eli.friedman@gmail.com> | 2009-05-30 01:45:29 +0000 |
| commit | 258ffef5b54cf680474080b3b4d86c9a9053c42c (patch) | |
| tree | a83cf0990fe5193a8eea8895aec79ea320eb76c3 | |
| parent | 09f17a8479de39a60faeacee399195ce20da9251 (diff) | |
| download | bcm5719-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.cpp | 5 | ||||
| -rw-r--r-- | clang/lib/AST/Type.cpp | 10 |
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; |

