Home | History | Annotate | Download | only in Sema

Lines Matching refs:FunctionProtoType

27 static const FunctionProtoType *GetUnderlyingFunction(QualType T)
35 return T->getAs<FunctionProtoType>();
106 const FunctionProtoType *FnT = T->getAs<FunctionProtoType>();
113 const FunctionProtoType *
114 Sema::ResolveExceptionSpec(SourceLocation Loc, const FunctionProtoType *FPT) {
119 const FunctionProtoType *SourceFPT =
120 SourceDecl->getType()->castAs<FunctionProtoType>();
132 return SourceDecl->getType()->castAs<FunctionProtoType>();
136 const FunctionProtoType::ExtProtoInfo &EPI) {
137 const FunctionProtoType *Proto = FD->getType()->castAs<FunctionProtoType>();
140 FunctionProtoType::ExtProtoInfo NewEPI = Proto->getExtProtoInfo();
170 const FunctionProtoType *Ty =
171 Decl->getTypeSourceInfo()->getType()->getAs<FunctionProtoType>();
192 Old->getType()->getAs<FunctionProtoType>(), Old->getLocation(),
193 New->getType()->getAs<FunctionProtoType>(), New->getLocation(),
215 const FunctionProtoType *NewProto =
216 New->getType()->castAs<FunctionProtoType>();
230 FunctionProtoType::ExtProtoInfo EPI = NewProto->getExtProtoInfo();
238 const FunctionProtoType *OldProto =
239 Old->getType()->castAs<FunctionProtoType>();
241 FunctionProtoType::ExtProtoInfo EPI = NewProto->getExtProtoInfo();
325 const FunctionProtoType *Old, SourceLocation OldLoc,
326 const FunctionProtoType *New, SourceLocation NewLoc) {
347 const FunctionProtoType *Old,
349 const FunctionProtoType *New,
402 FunctionProtoType::NoexceptResult OldNR = Old->getNoexceptSpec(Context);
403 FunctionProtoType::NoexceptResult NewNR = New->getNoexceptSpec(Context);
404 if (OldNR == FunctionProtoType::NR_BadNoexcept ||
405 NewNR == FunctionProtoType::NR_BadNoexcept)
412 OldNR != FunctionProtoType::NR_NoNoexcept &&
413 NewNR != FunctionProtoType::NR_NoNoexcept)
416 OldNR != FunctionProtoType::NR_NoNoexcept &&
417 NewNR != FunctionProtoType::NR_NoNoexcept) {
434 if (OldEST == EST_MSAny && NewNR == FunctionProtoType::NR_Throw)
436 if (NewEST == EST_MSAny && OldNR == FunctionProtoType::NR_Throw)
441 if (OldEST == EST_None && NewNR == FunctionProtoType::NR_Throw)
443 if (NewEST == EST_None && OldNR == FunctionProtoType::NR_Throw)
448 bool OldNonThrowing = OldNR == FunctionProtoType::NR_Nothrow ||
450 bool NewNonThrowing = NewNR == FunctionProtoType::NR_Nothrow ||
459 const FunctionProtoType *WithExceptions = nullptr;
539 const FunctionProtoType *Superset, SourceLocation SuperLoc,
540 const FunctionProtoType *Subset, SourceLocation SubLoc) {
572 FunctionProtoType::NoexceptResult SuperNR =Superset->getNoexceptSpec(Context);
573 if (SuperNR == FunctionProtoType::NR_BadNoexcept ||
574 SuperNR == FunctionProtoType::NR_Dependent)
578 if (SuperNR == FunctionProtoType::NR_Throw)
595 FunctionProtoType::NoexceptResult SubNR = Subset->getNoexceptSpec(Context);
596 if (SubNR == FunctionProtoType::NR_BadNoexcept ||
597 SubNR == FunctionProtoType::NR_Dependent)
601 if (SubNR == FunctionProtoType::NR_Throw) {
609 if (SubEST == EST_DynamicNone || SubNR == FunctionProtoType::NR_Nothrow)
613 if (SuperEST == EST_DynamicNone || SuperNR == FunctionProtoType::NR_Nothrow) {
710 const FunctionProtoType *TFunc = GetUnderlyingFunction(Target);
713 const FunctionProtoType *SFunc = GetUnderlyingFunction(Source);
727 const FunctionProtoType *Target, SourceLocation TargetLoc,
728 const FunctionProtoType *Source, SourceLocation SourceLoc)
754 const FunctionProtoType *ToFunc = GetUnderlyingFunction(ToType);
759 const FunctionProtoType *FromFunc = GetUnderlyingFunction(From->getType());
793 Old->getType()->getAs<FunctionProtoType>(),
795 New->getType()->getAs<FunctionProtoType>(),
821 const FunctionProtoType *FT;
822 if ((FT = T->getAs<FunctionProtoType>())) {
824 FT = PT->getPointeeType()->getAs<FunctionProtoType>();
826 FT = RT->getPointeeType()->getAs<FunctionProtoType>();
828 FT = MT->getPointeeType()->getAs<FunctionProtoType>();
830 FT = BT->getPointeeType()->getAs<FunctionProtoType>();