From: Stephen Kelly Date: Wed, 30 Jan 2019 20:06:52 +0000 (+0000) Subject: [ASTDump] Make method definition order matches declaration order X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=5257f1ab6e667cf688368055b05a9f4e22c7cbcd;p=clang [ASTDump] Make method definition order matches declaration order This will make follow-up changes easier to review. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@352663 91177308-0d34-0410-b5e6-96231b3b80d8 --- diff --git a/lib/AST/ASTDumper.cpp b/lib/AST/ASTDumper.cpp index e8585b2749..a098fc83fb 100644 --- a/lib/AST/ASTDumper.cpp +++ b/lib/AST/ASTDumper.cpp @@ -96,12 +96,6 @@ namespace { const Decl *From = nullptr, const char *Label = nullptr); void dumpTemplateArgumentList(const TemplateArgumentList &TAL); - template - void dumpTemplateDeclSpecialization(const SpecializationDecl *D, - bool DumpExplicitInst, - bool DumpRefOnly); - template - void dumpTemplateDecl(const TemplateDecl *D, bool DumpExplicitInst); // Objective-C utilities. void dumpObjCTypeParamList(const ObjCTypeParamList *typeParams); @@ -215,6 +209,13 @@ namespace { void VisitOMPDeclareReductionDecl(const OMPDeclareReductionDecl *D); void VisitOMPCapturedExprDecl(const OMPCapturedExprDecl *D); + template + void dumpTemplateDeclSpecialization(const SpecializationDecl *D, + bool DumpExplicitInst, + bool DumpRefOnly); + template + void dumpTemplateDecl(const TemplateDecl *D, bool DumpExplicitInst); + // C++ Decls void VisitTypeAliasDecl(const TypeAliasDecl *D); void VisitTypeAliasTemplateDecl(const TypeAliasTemplateDecl *D); @@ -227,8 +228,8 @@ namespace { const ClassTemplatePartialSpecializationDecl *D); void VisitClassScopeFunctionSpecializationDecl( const ClassScopeFunctionSpecializationDecl *D); - void VisitBuiltinTemplateDecl(const BuiltinTemplateDecl *D); void VisitVarTemplateDecl(const VarTemplateDecl *D); + void VisitBuiltinTemplateDecl(const BuiltinTemplateDecl *D); void VisitVarTemplateSpecializationDecl( const VarTemplateSpecializationDecl *D); void VisitVarTemplatePartialSpecializationDecl( @@ -605,20 +606,6 @@ void ASTDumper::VisitOMPCapturedExprDecl(const OMPCapturedExprDecl *D) { // C++ Declarations //===----------------------------------------------------------------------===// -void ASTDumper::VisitTypeAliasDecl(const TypeAliasDecl *D) { - Visit(D->getUnderlyingType()); -} - -void ASTDumper::VisitTypeAliasTemplateDecl(const TypeAliasTemplateDecl *D) { - dumpTemplateParameters(D->getTemplateParameters()); - Visit(D->getTemplatedDecl()); -} - -void ASTDumper::VisitStaticAssertDecl(const StaticAssertDecl *D) { - Visit(D->getAssertExpr()); - Visit(D->getMessage()); -} - template void ASTDumper::dumpTemplateDeclSpecialization(const SpecializationDecl *D, bool DumpExplicitInst, @@ -672,6 +659,20 @@ void ASTDumper::dumpTemplateDecl(const TemplateDecl *D, bool DumpExplicitInst) { !D->isCanonicalDecl()); } +void ASTDumper::VisitTypeAliasDecl(const TypeAliasDecl *D) { + Visit(D->getUnderlyingType()); +} + +void ASTDumper::VisitTypeAliasTemplateDecl(const TypeAliasTemplateDecl *D) { + dumpTemplateParameters(D->getTemplateParameters()); + Visit(D->getTemplatedDecl()); +} + +void ASTDumper::VisitStaticAssertDecl(const StaticAssertDecl *D) { + Visit(D->getAssertExpr()); + Visit(D->getMessage()); +} + void ASTDumper::VisitFunctionTemplateDecl(const FunctionTemplateDecl *D) { // FIXME: We don't add a declaration of a function template specialization // to its context when it's explicitly instantiated, so dump explicit