Lines Matching refs:Active
443 auto &Active = CodeSynthesisContexts.back(); in popCodeSynthesisContext() local
444 if (!Active.isInstantiationRecord()) { in popCodeSynthesisContext()
449 InNonInstantiationSFINAEContext = Active.SavedInNonInstantiationSFINAEContext; in popCodeSynthesisContext()
474 auto &Active = SemaRef.CodeSynthesisContexts.back(); in Clear() local
475 if (Active.Entity) in Clear()
477 {Active.Entity->getCanonicalDecl(), Active.Kind}); in Clear()
534 Active = CodeSynthesisContexts.rbegin(), in PrintInstantiationStack() local
536 Active != ActiveEnd; in PrintInstantiationStack()
537 ++Active, ++InstantiationIdx) { in PrintInstantiationStack()
542 Diags.Report(Active->PointOfInstantiation, in PrintInstantiationStack()
549 switch (Active->Kind) { in PrintInstantiationStack()
551 Decl *D = Active->Entity; in PrintInstantiationStack()
556 Diags.Report(Active->PointOfInstantiation, DiagID) in PrintInstantiationStack()
557 << Record << Active->InstantiationRange; in PrintInstantiationStack()
564 Diags.Report(Active->PointOfInstantiation, DiagID) in PrintInstantiationStack()
566 << Active->InstantiationRange; in PrintInstantiationStack()
568 Diags.Report(Active->PointOfInstantiation, in PrintInstantiationStack()
573 << Active->InstantiationRange; in PrintInstantiationStack()
575 Diags.Report(Active->PointOfInstantiation, in PrintInstantiationStack()
578 << Active->InstantiationRange; in PrintInstantiationStack()
580 Diags.Report(Active->PointOfInstantiation, in PrintInstantiationStack()
582 << FD << Active->InstantiationRange; in PrintInstantiationStack()
584 Diags.Report(Active->PointOfInstantiation, in PrintInstantiationStack()
587 << Active->InstantiationRange; in PrintInstantiationStack()
593 TemplateDecl *Template = cast<TemplateDecl>(Active->Template); in PrintInstantiationStack()
597 printTemplateArgumentList(OS, Active->template_arguments(), in PrintInstantiationStack()
599 Diags.Report(Active->PointOfInstantiation, in PrintInstantiationStack()
602 << Active->InstantiationRange; in PrintInstantiationStack()
607 FunctionTemplateDecl *FnTmpl = cast<FunctionTemplateDecl>(Active->Entity); in PrintInstantiationStack()
608 Diags.Report(Active->PointOfInstantiation, in PrintInstantiationStack()
612 Active->TemplateArgs, in PrintInstantiationStack()
613 Active->NumTemplateArgs) in PrintInstantiationStack()
614 << Active->InstantiationRange; in PrintInstantiationStack()
620 dyn_cast<FunctionTemplateDecl>(Active->Entity)) { in PrintInstantiationStack()
621 Diags.Report(Active->PointOfInstantiation, in PrintInstantiationStack()
625 Active->TemplateArgs, in PrintInstantiationStack()
626 Active->NumTemplateArgs) in PrintInstantiationStack()
627 << Active->InstantiationRange; in PrintInstantiationStack()
629 bool IsVar = isa<VarTemplateDecl>(Active->Entity) || in PrintInstantiationStack()
630 isa<VarTemplateSpecializationDecl>(Active->Entity); in PrintInstantiationStack()
633 if (auto *D = dyn_cast<TemplateDecl>(Active->Entity)) { in PrintInstantiationStack()
637 Active->Entity)) { in PrintInstantiationStack()
640 Active->Entity)) { in PrintInstantiationStack()
646 Diags.Report(Active->PointOfInstantiation, in PrintInstantiationStack()
648 << IsVar << IsTemplate << cast<NamedDecl>(Active->Entity) in PrintInstantiationStack()
649 << getTemplateArgumentBindingsText(Params, Active->TemplateArgs, in PrintInstantiationStack()
650 Active->NumTemplateArgs) in PrintInstantiationStack()
651 << Active->InstantiationRange; in PrintInstantiationStack()
657 ParmVarDecl *Param = cast<ParmVarDecl>(Active->Entity); in PrintInstantiationStack()
663 printTemplateArgumentList(OS, Active->template_arguments(), in PrintInstantiationStack()
665 Diags.Report(Active->PointOfInstantiation, in PrintInstantiationStack()
668 << Active->InstantiationRange; in PrintInstantiationStack()
673 NamedDecl *Parm = cast<NamedDecl>(Active->Entity); in PrintInstantiationStack()
679 if (TemplateDecl *Template = dyn_cast<TemplateDecl>(Active->Template)) in PrintInstantiationStack()
683 cast<ClassTemplatePartialSpecializationDecl>(Active->Template) in PrintInstantiationStack()
685 Diags.Report(Active->PointOfInstantiation, in PrintInstantiationStack()
690 Active->TemplateArgs, in PrintInstantiationStack()
691 Active->NumTemplateArgs) in PrintInstantiationStack()
692 << Active->InstantiationRange; in PrintInstantiationStack()
698 if (TemplateDecl *Template = dyn_cast<TemplateDecl>(Active->Template)) in PrintInstantiationStack()
702 cast<ClassTemplatePartialSpecializationDecl>(Active->Template) in PrintInstantiationStack()
705 Diags.Report(Active->PointOfInstantiation, in PrintInstantiationStack()
708 Active->TemplateArgs, in PrintInstantiationStack()
709 Active->NumTemplateArgs) in PrintInstantiationStack()
710 << Active->InstantiationRange; in PrintInstantiationStack()
715 Diags.Report(Active->PointOfInstantiation, in PrintInstantiationStack()
717 << cast<FunctionDecl>(Active->Entity); in PrintInstantiationStack()
721 Diags.Report(Active->PointOfInstantiation, in PrintInstantiationStack()
723 << cast<FunctionDecl>(Active->Entity) in PrintInstantiationStack()
724 << Active->InstantiationRange; in PrintInstantiationStack()
728 Diags.Report(Active->PointOfInstantiation, in PrintInstantiationStack()
730 << Active->InstantiationRange; in PrintInstantiationStack()
734 Diags.Report(Active->PointOfInstantiation, in PrintInstantiationStack()
736 << Active->InstantiationRange; in PrintInstantiationStack()
740 Diags.Report(Active->PointOfInstantiation, in PrintInstantiationStack()
742 << cast<CXXRecordDecl>(Active->Entity) << Active->SpecialMember; in PrintInstantiationStack()
746 Diags.Report(Active->Entity->getLocation(), in PrintInstantiationStack()
753 auto *FD = dyn_cast<FunctionDecl>(Active->Entity); in PrintInstantiationStack()
758 Diags.Report(Active->PointOfInstantiation, in PrintInstantiationStack()
763 Diags.Report(Active->PointOfInstantiation, in PrintInstantiationStack()
773 Diags.Report(Active->Entity->getLocation(), in PrintInstantiationStack()
778 Diags.Report(Active->PointOfInstantiation, in PrintInstantiationStack()
780 << cast<BindingDecl>(Active->Entity); in PrintInstantiationStack()
784 Diags.Report(Active->PointOfInstantiation, in PrintInstantiationStack()
786 << cast<CXXRecordDecl>(Active->Entity) << !getLangOpts().CPlusPlus11; in PrintInstantiationStack()
790 Diags.Report(Active->PointOfInstantiation, in PrintInstantiationStack()
794 llvm::makeArrayRef(Active->CallArgs, Active->NumCallArgs)); in PrintInstantiationStack()
802 if (!Active->Entity) { in PrintInstantiationStack()
803 Diags.Report(Active->PointOfInstantiation, in PrintInstantiationStack()
805 << Active->InstantiationRange; in PrintInstantiationStack()
808 if (isa<ConceptDecl>(Active->Entity)) in PrintInstantiationStack()
810 else if (isa<TemplateDecl>(Active->Entity)) in PrintInstantiationStack()
812 else if (isa<VarTemplatePartialSpecializationDecl>(Active->Entity)) in PrintInstantiationStack()
814 else if (isa<ClassTemplatePartialSpecializationDecl>(Active->Entity)) in PrintInstantiationStack()
817 assert(isa<FunctionDecl>(Active->Entity)); in PrintInstantiationStack()
822 cast<NamedDecl>(Active->Entity)->printName(OS); in PrintInstantiationStack()
823 if (!isa<FunctionDecl>(Active->Entity)) { in PrintInstantiationStack()
824 printTemplateArgumentList(OS, Active->template_arguments(), in PrintInstantiationStack()
827 Diags.Report(Active->PointOfInstantiation, DiagID) << OS.str() in PrintInstantiationStack()
828 << Active->InstantiationRange; in PrintInstantiationStack()
832 Diags.Report(Active->PointOfInstantiation, in PrintInstantiationStack()
834 << Active->InstantiationRange; in PrintInstantiationStack()
837 Diags.Report(Active->PointOfInstantiation, in PrintInstantiationStack()
839 << cast<NamedDecl>(Active->Entity)->getName() in PrintInstantiationStack()
840 << Active->InstantiationRange; in PrintInstantiationStack()
843 Diags.Report(Active->PointOfInstantiation, in PrintInstantiationStack()
845 << Active->InstantiationRange; in PrintInstantiationStack()
856 Active = CodeSynthesisContexts.rbegin(), in isSFINAEContext() local
858 Active != ActiveEnd; in isSFINAEContext()
859 ++Active) in isSFINAEContext()
861 switch (Active->Kind) { in isSFINAEContext()
865 if (isa<TypeAliasTemplateDecl>(Active->Entity)) in isSFINAEContext()
893 assert(Active->DeductionInfo && "Missing deduction info pointer"); in isSFINAEContext()
894 return Active->DeductionInfo; in isSFINAEContext()
918 if (Active->SavedInNonInstantiationSFINAEContext) in isSFINAEContext()