Home | History | Annotate | Download | only in Sema

Lines Matching refs:PrevDecl

448 /// that the template parameter 'PrevDecl' is being shadowed by a new
451 void Sema::DiagnoseTemplateParameterShadow(SourceLocation Loc, Decl *PrevDecl) {
452 assert(PrevDecl->isTemplateParameter() && "Not a template parameter");
462 << cast<NamedDecl>(PrevDecl)->getDeclName();
463 Diag(PrevDecl->getLocation(), diag::note_template_param_here);
555 NamedDecl *PrevDecl = LookupSingleName(S, ParamName, ParamNameLoc,
558 if (PrevDecl && PrevDecl->isTemplateParameter()) {
559 DiagnoseTemplateParameterShadow(ParamNameLoc, PrevDecl);
560 PrevDecl = 0;
684 NamedDecl *PrevDecl = LookupSingleName(S, ParamName, D.getIdentifierLoc(),
687 if (PrevDecl && PrevDecl->isTemplateParameter()) {
688 DiagnoseTemplateParameterShadow(D.getIdentifierLoc(), PrevDecl);
689 PrevDecl = 0;
906 NamedDecl *PrevDecl = 0;
908 PrevDecl = (*Previous.begin())->getUnderlyingDecl();
913 = dyn_cast_or_null<ClassTemplateDecl>(PrevDecl);
918 if (!PrevClassTemplate && PrevDecl && isa<CXXRecordDecl>(PrevDecl) &&
919 cast<CXXRecordDecl>(PrevDecl)->isInjectedClassName()) {
920 PrevDecl = cast<CXXRecordDecl>(PrevDecl->getDeclContext());
922 = cast<CXXRecordDecl>(PrevDecl)->getDescribedClassTemplate();
923 if (!PrevClassTemplate && isa<ClassTemplateSpecializationDecl>(PrevDecl)) {
925 = cast<ClassTemplateSpecializationDecl>(PrevDecl)
941 if (PrevDecl &&
942 (OutermostContext->Equals(PrevDecl->getDeclContext()) ||
943 OutermostContext->Encloses(PrevDecl->getDeclContext()))) {
944 SemanticContext = PrevDecl->getDeclContext();
949 PrevDecl = PrevClassTemplate = 0;
959 PrevDecl = PrevClassTemplate = 0;
961 } else if (PrevDecl && !isDeclInScope(PrevDecl, SemanticContext, S))
962 PrevDecl = PrevClassTemplate = 0;
997 } else if (PrevDecl && PrevDecl->isTemplateParameter()) {
999 DiagnoseTemplateParameterShadow(NameLoc, PrevDecl);
1001 PrevDecl = 0;
1002 } else if (PrevDecl) {
1009 Diag(PrevDecl->getLocation(), diag::note_previous_definition);
4810 /// \param PrevDecl the previous declaration of this entity, if any.
4822 NamedDecl *PrevDecl,
4898 if ((!PrevDecl ||
4899 getTemplateSpecializationKind(PrevDecl) == TSK_Undeclared ||
4900 getTemplateSpecializationKind(PrevDecl) == TSK_ImplicitInstantiation)){
5224 ClassTemplateSpecializationDecl *PrevDecl = 0;
5228 PrevDecl
5233 PrevDecl
5242 CheckTemplateSpecializationScope(*this, ClassTemplate, PrevDecl,
5249 if (PrevDecl &&
5250 (PrevDecl->getSpecializationKind() == TSK_Undeclared ||
5257 Specialization = PrevDecl;
5264 PrevDecl = 0;
5295 = cast_or_null<ClassTemplatePartialSpecializationDecl>(PrevDecl);
5364 PrevDecl);
5372 if (!PrevDecl)
5384 if (PrevDecl && PrevDecl->getPointOfInstantiation().isValid()) {
5386 for (Decl *Prev = PrevDecl; Prev; Prev = Prev->getPreviousDecl()) {
5399 Diag(PrevDecl->getPointOfInstantiation(),
5401 << (PrevDecl->getTemplateSpecializationKind()
5545 /// \param PrevDecl the previous declaration of the entity.
5560 PrevDecl,
5584 StripImplicitInstantiation(PrevDecl);
5601 for (Decl *Prev = PrevDecl; Prev; Prev = Prev->getPreviousDecl()) {
5608 << PrevDecl;
5648 Diag(DiagLocForExplicitInstantiation(PrevDecl, PrevPointOfInstantiation),
5675 << PrevDecl;
5676 Diag(PrevDecl->getLocation(),
5690 for (Decl *Prev = PrevDecl; Prev; Prev = Prev->getPreviousDecl()) {
5706 << PrevDecl;
5707 Diag(DiagLocForExplicitInstantiation(PrevDecl, PrevPointOfInstantiation),
6222 ClassTemplateSpecializationDecl *PrevDecl
6227 = PrevDecl ? PrevDecl->getTemplateSpecializationKind() : TSK_Undeclared;
6241 if (PrevDecl) {
6243 PrevDecl, PrevDecl_TSK,
6244 PrevDecl->getPointOfInstantiation(),
6246 return PrevDecl;
6258 Specialization = PrevDecl;
6260 PrevDecl = 0;
6274 PrevDecl);
6277 if (!HasNoEffect && !PrevDecl) {
6420 CXXRecordDecl *PrevDecl
6422 if (!PrevDecl && Record->getDefinition())
6423 PrevDecl = Record;
6424 if (PrevDecl) {
6425 MemberSpecializationInfo *MSInfo = PrevDecl->getMemberSpecializationInfo();
6429 PrevDecl,
6696 FunctionDecl *PrevDecl = Specialization->getPreviousDecl();
6697 if (!PrevDecl && Specialization->isThisDeclarationADefinition())
6698 PrevDecl = Specialization;
6700 if (PrevDecl) {
6703 PrevDecl,
6704 PrevDecl->getTemplateSpecializationKind(),
6705 PrevDecl->getPointOfInstantiation(),