Lines Matching defs:fn
429 const FunctionType *fn = nullptr;
431 fn = ptr->getPointeeType()->getAs<FunctionType>();
432 if (!fn) return;
435 fn = ptr->getPointeeType()->castAs<FunctionType>();
441 if (const FunctionProtoType *proto = dyn_cast<FunctionProtoType>(fn)) {
4601 Expr *Fn) {
4605 else if (Fn && Fn->getType()->isBlockPointerType())
4611 } else if (Fn && Fn->getType() == Context.BoundMemberTy)
4640 static TypoCorrection TryTypoCorrectionForCall(Sema &S, Expr *Fn,
4643 MemberExpr *ME = dyn_cast<MemberExpr>(Fn);
4645 SourceLocation NameLoc = ME ? ME->getMemberLoc() : Fn->getLocStart();
4682 /// Fn is the function expression. For a C++ member function, this
4686 Sema::ConvertArgumentsForCall(CallExpr *Call, Expr *Fn,
4703 unsigned FnKind = Fn->getType()->isBlockPointerType()
4713 if (FDecl && (TC = TryTypoCorrectionForCall(*this, Fn, FDecl, Args))) {
4726 << FnKind << FDecl->getParamDecl(0) << Fn->getSourceRange();
4732 << Fn->getSourceRange();
4749 if (FDecl && (TC = TryTypoCorrectionForCall(*this, Fn, FDecl, Args))) {
4764 << static_cast<unsigned>(Args.size()) << Fn->getSourceRange()
4773 << Fn->getSourceRange()
4788 VariadicCallType CallType = getVariadicCallType(FDecl, Proto, Fn);
4960 static ExprResult rebuildUnknownAnyFunction(Sema &S, Expr *fn);
5111 /// ActOnCallExpr - Handle a call to Fn with the specified array of arguments.
5115 Sema::ActOnCallExpr(Scope *S, Expr *Fn, SourceLocation LParenLoc,
5119 ExprResult Result = MaybeConvertParenListExprToParenExpr(S, Fn);
5121 Fn = Result.get();
5128 if (isa<CXXPseudoDestructorExpr>(Fn)) {
5131 Diag(Fn->getLocStart(), diag::err_pseudo_dtor_call_with_args)
5138 CallExpr(Context, Fn, None, Context.VoidTy, VK_RValue, RParenLoc);
5140 if (Fn->getType() == Context.PseudoObjectTy) {
5141 ExprResult result = CheckPlaceholderExpr(Fn);
5143 Fn = result.get();
5149 if (Fn->isTypeDependent())
5157 Context, Fn, cast<CallExpr>(ExecConfig), ArgExprs,
5161 Context, Fn, ArgExprs, Context.DependentTy, VK_RValue, RParenLoc);
5166 if (Fn->getType()->isRecordType())
5167 return BuildCallToObjectOfClassType(S, Fn, LParenLoc, ArgExprs,
5170 if (Fn->getType() == Context.UnknownAnyTy) {
5171 ExprResult result = rebuildUnknownAnyFunction(*this, Fn);
5173 Fn = result.get();
5176 if (Fn->getType() == Context.BoundMemberTy) {
5177 return BuildCallToMemberFunction(S, Fn, LParenLoc, ArgExprs, RParenLoc);
5182 if (Fn->getType() == Context.OverloadTy) {
5183 OverloadExpr::FindResult find = OverloadExpr::find(Fn);
5189 return BuildOverloadedCallExpr(S, Fn, ULE, LParenLoc, ArgExprs,
5193 return BuildCallToMemberFunction(S, Fn, LParenLoc, ArgExprs, RParenLoc);
5198 if (Fn->getType() == Context.UnknownAnyTy) {
5199 ExprResult result = rebuildUnknownAnyFunction(*this, Fn);
5201 Fn = result.get();
5204 Expr *NakedFn = Fn->IgnoreParens();
5225 Fn = DeclRefExpr::Create(Context, FDecl->getQualifierLoc(),
5228 Fn->getValueKind(), FDecl);
5237 Fn->getLocStart()))
5249 Diag(Fn->getLocStart(),
5261 return BuildResolvedCallExpr(Fn, NDecl, LParenLoc, ArgExprs, RParenLoc,
5305 Sema::BuildResolvedCallExpr(Expr *Fn, NamedDecl *NDecl,
5315 Diag(Fn->getExprLoc(), diag::err_anyx86_interrupt_called);
5324 Fn->getType()->isSpecificBuiltinType(BuiltinType::BuiltinFn)) {
5325 Result = ImpCastExprToType(Fn, Context.getPointerType(FDecl->getType()),
5328 Result = CallExprUnaryConversions(Fn);
5332 Fn = Result.get();
5338 TheCall = new (Context) CUDAKernelCallExpr(Context, Fn,
5343 TheCall = new (Context) CallExpr(Context, Fn, Args, Context.BoolTy,
5364 if (const PointerType *PT = Fn->getType()->getAs<PointerType>()) {
5370 << Fn->getType() << Fn->getSourceRange());
5372 Fn->getType()->getAs<BlockPointerType>()) {
5376 if (Fn->getType() == Context.UnknownAnyTy) {
5377 Fn);
5379 Fn = rewrite.get();
5380 TheCall->setCallee(Fn);
5385 << Fn->getType() << Fn->getSourceRange());
5393 << FDecl->getName() << Fn->getSourceRange());
5398 << Fn->getType() << Fn->getSourceRange());
5403 << FDecl->getName() << Fn->getSourceRange());
5408 if (CheckCallReturnType(FuncT->getReturnType(), Fn->getLocStart(), TheCall,
5418 if (ConvertArgumentsForCall(TheCall, Fn, FDecl, Proto, Args, RParenLoc,
5432 << (Args.size() > Def->param_size()) << FDecl << Fn->getSourceRange();
5476 << Fn->getSourceRange());
12011 const FunctionType *Fn = T->getAs<FunctionType>();
12012 QualType RetTy = Fn->getReturnType();
12014 (isa<FunctionProtoType>(Fn) && cast<FunctionProtoType>(Fn)->isVariadic());
12043 } else if (const FunctionProtoType *Fn = T->getAs<FunctionProtoType>()) {
12044 for (const auto &I : Fn->param_types()) {
13159 } else if (FunctionDecl *fn = dyn_cast<FunctionDecl>(VarDC)) {
13161 << var->getIdentifier() << fn->getDeclName();