From: Argyrios Kyrtzidis Date: Fri, 1 Aug 2008 10:35:27 +0000 (+0000) Subject: Wherever a type is used/returned from the Action module, use TypeTy instead of DeclTy... X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=39caa088097dbd2c805041bfd964b3fb9026d0be;p=clang Wherever a type is used/returned from the Action module, use TypeTy instead of DeclTy or void. No functionality change. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@54265 91177308-0d34-0410-b5e6-96231b3b80d8 --- diff --git a/include/clang/Parse/Action.h b/include/clang/Parse/Action.h index b97aac1145..b329306518 100644 --- a/include/clang/Parse/Action.h +++ b/include/clang/Parse/Action.h @@ -96,7 +96,7 @@ public: /// isTypeName - Return non-null if the specified identifier is a typedef name /// in the current scope. - virtual DeclTy *isTypeName(const IdentifierInfo &II, Scope *S) = 0; + virtual TypeTy *isTypeName(const IdentifierInfo &II, Scope *S) = 0; /// ActOnDeclarator - This callback is invoked when a declarator is parsed and /// 'Init' specifies the initializer if any. This is for things like: @@ -583,7 +583,7 @@ public: /// ActOnBaseSpecifier - Parsed a base specifier virtual void ActOnBaseSpecifier(DeclTy *classdecl, SourceRange SpecifierRange, bool Virtual, AccessSpecifier Access, - DeclTy *basetype, SourceLocation BaseLoc) { + TypeTy *basetype, SourceLocation BaseLoc) { } /// ActOnStartCXXClassDef - This is called at the start of a class/struct/union @@ -829,7 +829,7 @@ public: /// isTypeName - This looks at the IdentifierInfo::FETokenInfo field to /// determine whether the name is a typedef or not in this scope. - virtual DeclTy *isTypeName(const IdentifierInfo &II, Scope *S); + virtual TypeTy *isTypeName(const IdentifierInfo &II, Scope *S); /// ActOnDeclarator - If this is a typedef declarator, we modify the /// IdentifierInfo::FETokenInfo field to keep track of this fact, until S is diff --git a/include/clang/Parse/DeclSpec.h b/include/clang/Parse/DeclSpec.h index d45f6011ec..68509145b9 100644 --- a/include/clang/Parse/DeclSpec.h +++ b/include/clang/Parse/DeclSpec.h @@ -118,7 +118,7 @@ private: /// TypeRep - This contains action-specific information about a specific TST. /// For example, for a typedef or struct, it might contain the declaration for /// these. - void *TypeRep; + Action::TypeTy *TypeRep; // attributes. AttributeList *AttrList; @@ -242,7 +242,7 @@ public: bool SetTypeSpecComplex(TSC C, SourceLocation Loc, const char *&PrevSpec); bool SetTypeSpecSign(TSS S, SourceLocation Loc, const char *&PrevSpec); bool SetTypeSpecType(TST T, SourceLocation Loc, const char *&PrevSpec, - void *TypeRep = 0); + Action::TypeTy *TypeRep = 0); bool SetTypeQual(TQ T, SourceLocation Loc, const char *&PrevSpec, const LangOptions &Lang); diff --git a/lib/Parse/DeclSpec.cpp b/lib/Parse/DeclSpec.cpp index 887839eb61..8e6dacb761 100644 --- a/lib/Parse/DeclSpec.cpp +++ b/lib/Parse/DeclSpec.cpp @@ -173,7 +173,7 @@ bool DeclSpec::SetTypeSpecSign(TSS S, SourceLocation Loc, } bool DeclSpec::SetTypeSpecType(TST T, SourceLocation Loc, - const char *&PrevSpec, void *Rep) { + const char *&PrevSpec, Action::TypeTy *Rep) { if (TypeSpecType != TST_unspecified) return BadSpecifier( (TST)TypeSpecType, PrevSpec); TypeSpecType = T; diff --git a/lib/Parse/MinimalAction.cpp b/lib/Parse/MinimalAction.cpp index aa886ab458..d895ccf22a 100644 --- a/lib/Parse/MinimalAction.cpp +++ b/lib/Parse/MinimalAction.cpp @@ -51,7 +51,7 @@ void MinimalAction:: ActOnTranslationUnitScope(SourceLocation Loc, Scope *S) { /// isTypeName - This looks at the IdentifierInfo::FETokenInfo field to /// determine whether the name is a type name (objc class name or typedef) or /// not in this scope. -Action::DeclTy * +Action::TypeTy * MinimalAction::isTypeName(const IdentifierInfo &II, Scope *S) { if (TypeNameInfo *TI = II.getFETokenInfo()) if (TI->isTypeName) diff --git a/lib/Parse/ParseDecl.cpp b/lib/Parse/ParseDecl.cpp index f66bb99962..81cb0ce627 100644 --- a/lib/Parse/ParseDecl.cpp +++ b/lib/Parse/ParseDecl.cpp @@ -411,7 +411,7 @@ void Parser::ParseDeclarationSpecifiers(DeclSpec &DS) { goto DoneWithDeclSpec; // It has to be available as a typedef too! - void *TypeRep = Actions.isTypeName(*Tok.getIdentifierInfo(), CurScope); + TypeTy *TypeRep = Actions.isTypeName(*Tok.getIdentifierInfo(), CurScope); if (TypeRep == 0) goto DoneWithDeclSpec; diff --git a/lib/Parse/ParseDeclCXX.cpp b/lib/Parse/ParseDeclCXX.cpp index 87dcdfcb64..2d885ce701 100644 --- a/lib/Parse/ParseDeclCXX.cpp +++ b/lib/Parse/ParseDeclCXX.cpp @@ -322,7 +322,7 @@ bool Parser::ParseBaseSpecifier(DeclTy *ClassDecl) } // We have an identifier; check whether it is actually a type. - DeclTy *BaseType = Actions.isTypeName(*Tok.getIdentifierInfo(), CurScope); + TypeTy *BaseType = Actions.isTypeName(*Tok.getIdentifierInfo(), CurScope); if (!BaseType) { Diag(Tok.getLocation(), diag::err_expected_class_name); return true; diff --git a/lib/Sema/Sema.h b/lib/Sema/Sema.h index 09d8d793cb..0fda782fcb 100644 --- a/lib/Sema/Sema.h +++ b/lib/Sema/Sema.h @@ -210,7 +210,7 @@ private: //===--------------------------------------------------------------------===// // Symbol table / Decl tracking callbacks: SemaDecl.cpp. // - virtual DeclTy *isTypeName(const IdentifierInfo &II, Scope *S); + virtual TypeTy *isTypeName(const IdentifierInfo &II, Scope *S); virtual DeclTy *ActOnDeclarator(Scope *S, Declarator &D, DeclTy *LastInGroup); virtual DeclTy *ActOnParamDeclarator(Scope *S, Declarator &D); virtual void ActOnParamDefaultArgument(DeclTy *param, @@ -587,7 +587,7 @@ public: /// ActOnBaseSpecifier - Parsed a base specifier virtual void ActOnBaseSpecifier(DeclTy *classdecl, SourceRange SpecifierRange, bool Virtual, AccessSpecifier Access, - DeclTy *basetype, SourceLocation BaseLoc); + TypeTy *basetype, SourceLocation BaseLoc); virtual void ActOnStartCXXClassDef(Scope *S, DeclTy *TagDecl, SourceLocation LBrace); diff --git a/lib/Sema/SemaDecl.cpp b/lib/Sema/SemaDecl.cpp index e046ee9a66..f8835ffa8c 100644 --- a/lib/Sema/SemaDecl.cpp +++ b/lib/Sema/SemaDecl.cpp @@ -35,7 +35,7 @@ #include "llvm/ADT/DenseSet.h" using namespace clang; -Sema::DeclTy *Sema::isTypeName(const IdentifierInfo &II, Scope *S) { +Sema::TypeTy *Sema::isTypeName(const IdentifierInfo &II, Scope *S) { Decl *IIDecl = LookupDecl(&II, Decl::IDNS_Ordinary, S, false); if (IIDecl && (isa(IIDecl) || diff --git a/lib/Sema/SemaDeclCXX.cpp b/lib/Sema/SemaDeclCXX.cpp index b9a061b011..9dc62dcc4a 100644 --- a/lib/Sema/SemaDeclCXX.cpp +++ b/lib/Sema/SemaDeclCXX.cpp @@ -264,7 +264,7 @@ void Sema::CheckCXXDefaultArguments(FunctionDecl *FD) { /// 'public bar' and 'virtual private baz' are each base-specifiers. void Sema::ActOnBaseSpecifier(DeclTy *classdecl, SourceRange SpecifierRange, bool Virtual, AccessSpecifier Access, - DeclTy *basetype, SourceLocation BaseLoc) { + TypeTy *basetype, SourceLocation BaseLoc) { RecordDecl *Decl = (RecordDecl*)classdecl; QualType BaseType = Context.getTypeDeclType((TypeDecl*)basetype);