• Home
  • History
  • Annotate
  • Raw
  • Download
  • only in /freebsd-13-stable/contrib/llvm-project/clang/lib/Sema/

Lines Matching refs:Self

4629                                Sema &Self, SourceLocation KeyLoc, ASTContext &C,
4640 LookupResult Res(Self, NameInfo, Sema::LookupOrdinaryName);
4641 if (Self.LookupQualifiedName(Res, RD)) {
4653 CPT = Self.ResolveExceptionSpec(KeyLoc, CPT);
4663 static bool EvaluateUnaryTypeTrait(Sema &Self, TypeTrait UTT,
4667 ASTContext &C = Self.Context;
4890 CXXDestructorDecl *Destructor = Self.LookupDestructor(RD);
4902 CPT = Self.ResolveExceptionSpec(KeyLoc, CPT);
4944 return HasNoThrowOperator(RT, OO_Equal, Self, KeyLoc, C,
4957 return HasNoThrowOperator(RT, OO_Equal, Self, KeyLoc, C,
4977 for (const auto *ND : Self.LookupConstructors(RD)) {
4990 CPT = Self.ResolveExceptionSpec(KeyLoc, CPT);
5017 for (const auto *ND : Self.LookupConstructors(RD)) {
5028 CPT = Self.ResolveExceptionSpec(KeyLoc, CPT);
5045 if (CXXDestructorDecl *Destructor = Self.LookupDestructor(RD))
5062 static bool EvaluateBinaryTypeTrait(Sema &Self, TypeTrait BTT, QualType LhsT,
5227 static bool EvaluateBinaryTypeTrait(Sema &Self, TypeTrait BTT, QualType LhsT,
5252 if (Self.RequireCompleteType(
5259 assert(Self.Context.hasSameUnqualifiedType(LhsT, RhsT)
5276 if (Self.RequireCompleteType(KeyLoc, RhsT,
5284 return Self.Context.hasSameType(LhsT, RhsT);
5288 QualType Lhs = Self.getASTContext().getUnqualifiedArrayType(LhsT, LhsQuals);
5289 QualType Rhs = Self.getASTContext().getUnqualifiedArrayType(RhsT, RhsQuals);
5290 return Self.Context.typesAreCompatible(Lhs, Rhs);
5328 if (!Self.isCompleteType(KeyLoc, RhsT) || Self.isAbstractType(KeyLoc, RhsT))
5333 LhsT = Self.Context.getRValueReferenceType(LhsT);
5337 OpaqueValueExpr From(KeyLoc, LhsT.getNonLValueExprType(Self.Context),
5346 Self, Sema::ExpressionEvaluationContext::Unevaluated);
5347 Sema::SFINAETrap SFINAE(Self, /*AccessCheckingSFINAE=*/true);
5348 Sema::ContextRAII TUContext(Self, Self.Context.getTranslationUnitDecl());
5349 InitializationSequence Init(Self, To, Kind, FromPtr);
5353 ExprResult Result = Init.Perform(Self, To, Kind, FromPtr);
5372 Self.RequireCompleteType(KeyLoc, LhsT,
5376 Self.RequireCompleteType(KeyLoc, RhsT,
5387 LhsT = Self.Context.getRValueReferenceType(LhsT);
5389 RhsT = Self.Context.getRValueReferenceType(RhsT);
5390 OpaqueValueExpr Lhs(KeyLoc, LhsT.getNonLValueExprType(Self.Context),
5392 OpaqueValueExpr Rhs(KeyLoc, RhsT.getNonLValueExprType(Self.Context),
5398 Self, Sema::ExpressionEvaluationContext::Unevaluated);
5399 Sema::SFINAETrap SFINAE(Self, /*AccessCheckingSFINAE=*/true);
5400 Sema::ContextRAII TUContext(Self, Self.Context.getTranslationUnitDecl());
5401 ExprResult Result = Self.BuildBinOp(/*S=*/nullptr, KeyLoc, BO_Assign, &Lhs,
5407 Self.CheckUnusedVolatileAssignment(Result.get());
5416 return Self.canThrow(Result.get()) == CT_Cannot;
5424 return !Result.get()->hasNonTrivialCall(Self.Context);
5448 static uint64_t EvaluateArrayTypeTrait(Sema &Self, ArrayTypeTrait ATT,
5457 while (const ArrayType *AT = Self.Context.getAsArrayType(T)) {
5468 if (Self.VerifyIntegerConstantExpression(DimExpr, &Value,
5473 Self.Diag(KeyLoc, diag::err_dimension_expr_not_constant_integer)
5482 while (const ArrayType *AT = Self.Context.getAsArrayType(T)) {
5492 if (const ConstantArrayType *CAT = Self.Context.getAsConstantArrayType(T))
5725 static bool TryClassUnification(Sema &Self, Expr *From, Expr *To,
5746 QualType T = To->isLValue() ? Self.Context.getLValueReferenceType(ToType)
5747 : Self.Context.getRValueReferenceType(ToType);
5751 InitializationSequence InitSeq(Self, Entity, Kind, From);
5759 return InitSeq.Diagnose(Self, Entity, Kind, From);
5770 Self.IsDerivedFrom(QuestionLoc, FTy, TTy);
5772 Self.IsDerivedFrom(QuestionLoc, TTy, FTy))) {
5779 InitializationSequence InitSeq(Self, Entity, Kind, From);
5786 return InitSeq.Diagnose(Self, Entity, Kind, From);
5800 TTy = TTy.getNonLValueExprType(Self.Context);
5803 InitializationSequence InitSeq(Self, Entity, Kind, From);
5807 return InitSeq.Diagnose(Self, Entity, Kind, From);
5817 static bool FindConditionalOverload(Sema &Self, ExprResult &LHS, ExprResult &RHS,
5822 Self.AddBuiltinOperatorCandidates(OO_Conditional, QuestionLoc, Args,
5826 switch (CandidateSet.BestViableFunction(Self, QuestionLoc, Best)) {
5829 ExprResult LHSRes = Self.PerformImplicitConversion(
5836 ExprResult RHSRes = Self.PerformImplicitConversion(
5843 Self.MarkFunctionReferenced(QuestionLoc, Best->Function);
5852 if (Self.DiagnoseConditionalForNull(LHS.get(), RHS.get(), QuestionLoc))
5855 Self.Diag(QuestionLoc, diag::err_typecheck_cond_incompatible_operands)
5861 Self.Diag(QuestionLoc, diag::err_conditional_ambiguous_ovl)
5876 static bool ConvertForConditional(Sema &Self, ExprResult &E, QualType T) {
5881 InitializationSequence InitSeq(Self, Entity, Kind, Arg);
5882 ExprResult Result = InitSeq.Perform(Self, Entity, Kind, Arg);