Lines Matching refs:Function
1682 // something that we can't designate (e.g., a member function),
2606 FunctionDecl *Function,
2610 S.Type = Function->getType();
2611 S.Function.HadMultipleCandidates = false;
2612 S.Function.Function = Function;
2613 S.Function.FoundDecl = Found;
2645 void InitializationSequence::AddUserConversionStep(FunctionDecl *Function,
2651 S.Function.HadMultipleCandidates = false;
2652 S.Function.Function = Function;
2653 S.Function.FoundDecl = FoundDecl;
2701 S.Function.HadMultipleCandidates = false;
2702 S.Function.Function = Constructor;
2703 S.Function.FoundDecl = DeclAccessPair::make(Constructor, Access);
2835 /// function.
2931 // If the conversion function doesn't return a reference type,
2960 FunctionDecl *Function = Best->Function;
2964 S.MarkDeclarationReferenced(DeclLoc, Function);
2967 if (isa<CXXConversionDecl>(Function))
2968 T2 = Function->getResultType();
2973 Sequence.AddUserConversionStep(Function, Best->FoundDecl,
3034 // If the initializer is the address of an overloaded function, try
3035 // to resolve the overloaded function. If all goes well, T2 is the
3036 // type of the resulting function.
3070 // there are no function rvalues in C++, rvalue refs to functions are treated
3109 // If we have an rvalue ref to function type here, the rhs must be
3148 // - is an xvalue, class prvalue, array prvalue, or function lvalue and
3189 // xvalue, class prvalue, or function lvalue of type "cv3 T3",
3229 // FIXME: Use the conversion function set stored in ICS to turn
3377 cast<CXXConstructorDecl>(Best->Function)->isImplicit()) {
3385 cast<CXXConstructorDecl>(Best->Function),
3583 FunctionDecl *Function = Best->Function;
3584 S.MarkDeclarationReferenced(DeclLoc, Function);
3586 if (isa<CXXConstructorDecl>(Function)) {
3589 Sequence.AddUserConversionStep(Function, Best->FoundDecl, DestType);
3593 // Add the user-defined conversion step that calls the conversion function.
3594 QualType ConvType = Function->getCallResultType();
3600 // base class of the type returned by the conversion function) and
3602 Sequence.AddUserConversionStep(Function, Best->FoundDecl, DestType);
3606 Sequence.AddUserConversionStep(Function, Best->FoundDecl, ConvType);
3608 // If the conversion following the call to the conversion function
3831 // (8.3.2), shall be initialized by an object, or function, of type T or
3924 // type to the destination type or (when a conversion function is
4245 S.Diag(Best->Function->getLocation(), diag::note_unavailable_here)
4246 << 1 << Best->Function->isDeleted();
4250 CXXConstructorDecl *Constructor = cast<CXXConstructorDecl>(Best->Function);
4450 // Overload resolution determined which function invoke; update the
4452 S.CheckAddressOfMemberAccess(CurInit.get(), Step->Function.FoundDecl);
4453 S.DiagnoseUseOfDecl(Step->Function.FoundDecl, Kind.getLocation());
4455 Step->Function.FoundDecl,
4456 Step->Function.Function);
4552 // or a conversion function.
4555 FunctionDecl *Fn = Step->Function.Function;
4556 DeclAccessPair FoundFn = Step->Function.FoundDecl;
4557 bool HadMultipleCandidates = Step->Function.HadMultipleCandidates;
4595 // Build a call to the conversion function.
4611 // Build the actual call to the conversion function.
4699 = cast<CXXConstructorDecl>(Step->Function.Function);
4700 bool HadMultipleCandidates = Step->Function.HadMultipleCandidates;
4790 Step->Function.FoundDecl.getAccess());
4791 S.DiagnoseUseOfDecl(Step->Function.FoundDecl, Loc);
5000 S.Diag(Best->Function->getLocation(), diag::note_unavailable_here)
5001 << 1 << Best->Function->isDeleted();
5119 // base within a constructor. If no viable function was
5165 S.Diag(Best->Function->getLocation(), diag::note_unavailable_here)
5166 << 1 << Best->Function->isDeleted();
5254 OS << "address of overloaded function failed";
5345 OS << "resolve address of overloaded function";
5373 OS << "user-defined conversion via " << *S->Function.Function;