Home | History | Annotate | Download | only in Sema

Lines Matching refs:SemaRef

113   Sema &SemaRef;
122 TreeTransform(Sema &SemaRef) : SemaRef(SemaRef) { }
137 Sema &getSema() const { return SemaRef; }
148 bool AlwaysRebuild() { return SemaRef.ArgumentPackSubstitutionIndex != -1; }
557 return SemaRef.Context.getTrivialTypeSourceInfo(T,
792 return SemaRef.Context.getTypeDeclType(Typedef);
797 return SemaRef.Context.getTypeDeclType(Record);
802 return SemaRef.Context.getTypeDeclType(Enum);
834 return SemaRef.Context.getAutoType(Deduced, IsDecltypeAuto,
852 return SemaRef.Context.getParenType(InnerType);
864 return SemaRef.Context.getElaboratedType(Keyword,
893 return SemaRef.Context.getDependentTemplateSpecializationType(Keyword,
907 return SemaRef.Context.getElaboratedType(Keyword,
927 if (!SemaRef.computeDeclContext(SS))
928 return SemaRef.Context.getDependentNameType(Keyword,
934 return SemaRef.CheckTypenameType(Keyword, KeywordLoc, QualifierLoc,
942 LookupResult Result(SemaRef, Id, IdLoc, Sema::LookupTagName);
943 DeclContext *DC = SemaRef.computeDeclContext(SS, false);
947 if (SemaRef.RequireCompleteDeclContext(SS, DC))
951 SemaRef.LookupQualifiedName(Result, DC);
973 LookupResult Result(SemaRef, Id, IdLoc, Sema::LookupTagName);
974 SemaRef.LookupQualifiedName(Result, DC);
984 SemaRef.Diag(IdLoc, diag::err_tag_reference_non_tag) << Kind;
985 SemaRef.Diag(SomeDecl->getLocation(), diag::note_declared_at);
989 SemaRef.Diag(IdLoc, diag::err_not_tag_in_scope)
996 if (!SemaRef.isAcceptableTagRedeclaration(Tag, Kind, /*isDefinition*/false,
998 SemaRef.Diag(KeywordLoc, diag::err_use_with_wrong_tag) << Id;
999 SemaRef.Diag(Tag->getLocation(), diag::note_previous_use);
1004 QualType T = SemaRef.Context.getTypeDeclType(Tag);
1005 return SemaRef.Context.getElaboratedType(Keyword,
1126 return SemaRef.ActOnLabelStmt(IdentLoc, L, ColonLoc, SubStmt);
1136 return SemaRef.ActOnAttributedStmt(AttrLoc, Attrs, SubStmt);
1972 = SemaRef.ActOnInitList(LBraceLoc, Inits, RBraceLoc);
1993 = SemaRef.ActOnDesignatedInitializer(Desig, EqualOrColonLoc, GNUSyntax,
2007 return new (SemaRef.Context) ImplicitValueInitExpr(T);
2059 return SemaRef.ActOnChooseExpr(BuiltinLoc,
2497 return SemaRef.BuildMemberReferenceExpr(BaseE, BaseType,
2520 return SemaRef.BuildMemberReferenceExpr(BaseE, BaseType,
2532 return SemaRef.BuildCXXNoexceptExpr(Range.getBegin(), Arg, Range.getEnd());
2541 return new (SemaRef.Context) SizeOfPackExpr(SemaRef.Context.getSizeType(),
2545 return new (SemaRef.Context) SizeOfPackExpr(SemaRef.Context.getSizeType(),
2593 return SemaRef.BuildObjCEncodeExpression(AtLoc, EncodeTypeInfo, RParenLoc);
2604 return SemaRef.BuildClassMessage(ReceiverTypeInfo,
2619 return SemaRef.BuildInstanceMessage(Receiver,
2635 QualType ReceiverTy = SemaRef.Context.getObjCInterfaceType(Class);
2637 return Method->isInstanceMethod() ? SemaRef.BuildInstanceMessage(nullptr,
2642 : SemaRef.BuildClassMessage(nullptr,
2728 = SemaRef.Context.Idents.get("__builtin_shufflevector");
2729 TranslationUnitDecl *TUDecl = SemaRef.Context.getTranslationUnitDecl();
2735 Expr *Callee = new (SemaRef.Context) DeclRefExpr(Builtin, false,
2736 SemaRef.Context.BuiltinFnTy,
2738 QualType CalleePtrTy = SemaRef.Context.getPointerType(Builtin->getType());
2739 Callee = SemaRef.ImpCastExprToType(Callee, CalleePtrTy,
2743 ExprResult TheCall = new (SemaRef.Context) CallExpr(
2744 SemaRef.Context, Callee, SubExprs, Builtin->getCallResultType(),
2748 return SemaRef.SemaBuiltinShuffleVector(cast<CallExpr>(TheCall.get()));
2755 return SemaRef.SemaConvertVectorExpr(SrcExpr, DstTInfo,
2850 return new (SemaRef.Context) AtomicExpr(BuiltinLoc, SubExprs, RetTy, Op,
3148 if (SemaRef.BuildCXXNestedNameSpecifier(/*Scope=*/nullptr,
3164 SS.Extend(SemaRef.Context, NS, Q.getLocalBeginLoc(), Q.getLocalEndLoc());
3173 SS.Extend(SemaRef.Context, Alias, Q.getLocalBeginLoc(),
3181 SS.MakeGlobal(SemaRef.Context, Q.getBeginLoc());
3188 SS.MakeSuper(SemaRef.Context, RD, Q.getBeginLoc(), Q.getEndLoc());
3201 (SemaRef.getLangOpts().CPlusPlus11 &&
3206 SemaRef.Diag(TL.getBeginLoc(),
3208 SS.Extend(SemaRef.Context, /*FIXME:*/SourceLocation(), TL,
3216 SemaRef.Diag(TL.getBeginLoc(), diag::err_nested_name_spec_non_tag)
3240 return SS.getWithLocInContext(SemaRef.Context);
3270 NewCanTy = SemaRef.Context.getCanonicalType(NewTInfo->getType());
3278 NewCanTy = SemaRef.Context.getCanonicalType(NewT);
3282 = SemaRef.Context.DeclarationNames.getCXXSpecialName(Name.getNameKind(),
3390 SemaRef.Context.getTrivialTypeSourceInfo(Arg.getAsType(), Loc));
3399 Builder.MakeTrivial(SemaRef.Context, DTN->getQualifier(), Loc);
3401 Builder.MakeTrivial(SemaRef.Context, QTN->getQualifier(), Loc);
3405 Builder.getWithLocInContext(SemaRef.Context),
3409 Builder.getWithLocInContext(SemaRef.Context),
3486 E = SemaRef.ActOnConstantExpression(E);
3715 return TLB.getTypeSourceInfo(SemaRef.Context, Result);
3770 = SemaRef.Context.getQualifiedType(Replacement.getUnqualifiedType(),
3772 Result = SemaRef.Context.getSubstTemplateTypeParmType(
3781 Deduced = SemaRef.Context.getQualifiedType(Deduced.getUnqualifiedType(),
3783 Result = SemaRef.Context.getAutoType(Deduced, AutoTy->isDecltypeAuto(),
3790 SemaRef.Diag(R.getBegin(), diag::err_attr_objc_ownership_redundant)
3798 Result = SemaRef.BuildQualifiedType(Result, T.getBeginLoc(), Quals);
3885 return TLB.getTypeSourceInfo(SemaRef.Context, Result);
3929 Result = SemaRef.Context.getDecayedType(OriginalType);
3949 Result = SemaRef.Context.getObjCObjectPointerType(PointeeType);
4133 EnterExpressionEvaluationContext Unevaluated(SemaRef,
4136 Size = SemaRef.ActOnConstantExpression(Size).get();
4220 EnterExpressionEvaluationContext Unevaluated(SemaRef,
4229 sizeResult = SemaRef.ActOnConstantExpression(sizeResult);
4270 EnterExpressionEvaluationContext Unevaluated(SemaRef,
4274 Size = SemaRef.ActOnConstantExpression(Size);
4381 NewDI = TLB.getTypeSourceInfo(SemaRef.Context, Result);
4390 ParmVarDecl *newParm = ParmVarDecl::Create(SemaRef.Context,
4427 SemaRef.collectUnexpandedParameterPacks(Pattern, Unexpanded);
4644 Sema::CXXThisScopeRAII ThisScope(SemaRef, ThisContext, ThisTypeQuals);
4736 SemaRef.collectUnexpandedParameterPacks(PackExpansion->getPattern(),
4762 U = SemaRef.Context.getPackExpansionType(U, NumExpansions);
4773 if (U.isNull() || SemaRef.CheckSpecifiedExceptionType(U, Loc))
4780 if (U.isNull() || SemaRef.CheckSpecifiedExceptionType(U, Loc))
4866 EnterExpressionEvaluationContext Unevaluated(SemaRef, Sema::Unevaluated,
4873 E = SemaRef.HandleExprEvaluationContextForTypeof(E.get());
4924 EnterExpressionEvaluationContext Unevaluated(SemaRef, Sema::Unevaluated,
5055 QualType T = SemaRef.Context.getTypeDeclType(cast<TypeDecl>(D));
5082 Replacement = SemaRef.Context.getCanonicalType(Replacement);
5084 = SemaRef.Context.getSubstTemplateTypeParmType(T->getReplacedParameter(),
5291 NewTL.setQualifierLoc(SS.getWithLocInContext(SemaRef.Context));
5350 SemaRef.Diag(TL.getNamedTypeLoc().getBeginLoc(),
5352 SemaRef.Diag(TAT->getLocation(), diag::note_declared_at);
5394 result = SemaRef
5662 EnterExpressionEvaluationContext Unevaluated(SemaRef,
5667 LHS = SemaRef.ActOnConstantExpression(LHS);
5673 RHS = SemaRef.ActOnConstantExpression(RHS);
6024 Target = SemaRef.MaybeCreateExprWithCleanups(Target.get());
6443 Cond = SemaRef.CheckBooleanCondition(Cond.get(), S->getColonLoc());
6447 Cond = SemaRef.MaybeCreateExprWithCleanups(Cond.get());
6453 Inc = SemaRef.MaybeCreateExprWithCleanups(Inc.get());
6586 return new (SemaRef.getASTContext())
6588 SemaRef.getASTContext().PseudoObjectTy, VK_LValue,
7284 SemaRef.MarkDeclRefReferenced(E);
7338 SemaRef.MarkFunctionReferenced(E->getLocStart(), FD);
7339 return SemaRef.MaybeBindToTemporary(E);
7511 Expr *newSyntacticForm = SemaRef.recreateSyntacticForm(E);
7519 result = SemaRef.checkPseudoObjectRValue(result.get());
7546 EnterExpressionEvaluationContext Unevaluated(SemaRef, Sema::Unevaluated,
7617 return SemaRef.MaybeBindToTemporary(E);
7669 SemaRef.MarkMemberReferenced(E);
7686 SemaRef.getLocForEndOfToken(E->getBase()->getSourceRange().getEnd());
7836 return SemaRef.MaybeBindToTemporary(E);
7860 SemaRef.getLocForEndOfToken(E->getBase()->getLocEnd());
8031 SemaRef.ActOnStartStmtExpr();
8035 SemaRef.ActOnStmtExprError();
8042 SemaRef.ActOnStmtExprError();
8043 return SemaRef.MaybeBindToTemporary(E);
8103 SourceLocation FakeLParenLoc = SemaRef.getLocForEndOfToken(
8156 return SemaRef.MaybeBindToTemporary(E);
8197 return SemaRef.MaybeBindToTemporary(E);
8302 EnterExpressionEvaluationContext Unevaluated(SemaRef, Sema::Unevaluated,
8338 EnterExpressionEvaluationContext Unevaluated(SemaRef, Sema::Unevaluated);
8503 SemaRef.MarkFunctionReferenced(E->getLocStart(), OperatorNew);
8505 SemaRef.MarkFunctionReferenced(E->getLocStart(), OperatorDelete);
8509 = SemaRef.Context.getBaseElementType(E->getAllocatedType());
8512 if (CXXDestructorDecl *Destructor = SemaRef.LookupDestructor(Record)) {
8513 SemaRef.MarkFunctionReferenced(E->getLocStart(), Destructor);
8528 const ArrayType *ArrayT = SemaRef.Context.getAsArrayType(AllocType);
8533 ArraySize = IntegerLiteral::Create(SemaRef.Context, ConsArrayT->getSize(),
8534 SemaRef.Context.getSizeType(),
8582 SemaRef.MarkFunctionReferenced(E->getLocStart(), OperatorDelete);
8585 QualType Destroyed = SemaRef.Context.getBaseElementType(
8589 SemaRef.MarkFunctionReferenced(E->getLocStart(),
8590 SemaRef.LookupDestructor(Record));
8613 Base = SemaRef.ActOnStartCXXMemberReference(nullptr, Base.get(),
8647 ParsedType T = SemaRef.getDestructorName(E->getTildeLoc(),
8657 = SemaRef.Context.getTrivialTypeSourceInfo(SemaRef.GetTypeFromParser(T),
8684 LookupResult R(SemaRef, Old->getName(), Old->getNameLoc(),
8783 Args.push_back(TLB.getTypeSourceInfo(SemaRef.Context, To));
8795 SemaRef.collectUnexpandedParameterPacks(PatternTL, Unexpanded);
8834 Args.push_back(TLB.getTypeSourceInfo(SemaRef.Context, To));
8841 Sema::ArgumentPackSubstitutionIndexRAII SubstIndex(SemaRef, I);
8861 Args.push_back(TLB.getTypeSourceInfo(SemaRef.Context, To));
8888 Args.push_back(TLB.getTypeSourceInfo(SemaRef.Context, To));
8913 EnterExpressionEvaluationContext Unevaluated(SemaRef, Sema::Unevaluated);
8934 EnterExpressionEvaluationContext Unevaluated(SemaRef, Sema::Unevaluated);
9055 SemaRef.MarkFunctionReferenced(E->getLocStart(), Constructor);
9118 SemaRef.MarkFunctionReferenced(E->getLocStart(), Constructor);
9119 return SemaRef.MaybeBindToTemporary(E);
9420 Base = SemaRef.ActOnStartCXXMemberReference(nullptr, Base.get(),
9532 LookupResult R(SemaRef, Old->getMemberNameInfo(),
9608 EnterExpressionEvaluationContext Unevaluated(SemaRef, Sema::Unevaluated);
9835 return SemaRef.MaybeBindToTemporary(E);
9869 return SemaRef.MaybeBindToTemporary(E);
9994 return SemaRef.MaybeBindToTemporary(E);
10045 return SemaRef.BuildObjCBridgedCast(E->getLParenLoc(), E->getBridgeKind(),
10071 return SemaRef.MaybeBindToTemporary(E);
10109 return SemaRef.MaybeBindToTemporary(E);
10181 SemaRef.Context.PseudoObjectTy,
10274 SemaRef.ActOnBlockStart(E->getCaretLocation(), /*Scope=*/nullptr);
10275 BlockScopeInfo *blockScope = SemaRef.getCurBlock();
10321 if (!SemaRef.getDiagnostics().hasErrorOccurred()) {
10339 return SemaRef.ActOnBlockStmtExpr(E->getCaretLocation(), body.get(),
10375 return SemaRef.BuildPointerType(PointeeType, Star,
10382 return SemaRef.BuildBlockPointerType(PointeeType, Star,
10391 return SemaRef.BuildReferenceType(ReferentType, WrittenAsLValue,
10400 return SemaRef.BuildMemberPointerType(PointeeType, ClassType, Sigil,
10413 return SemaRef.BuildArrayType(ElementType, SizeMod, SizeExpr,
10418 SemaRef.Context.UnsignedCharTy, SemaRef.Context.UnsignedShortTy,
10419 SemaRef.Context.UnsignedIntTy, SemaRef.Context.UnsignedLongTy,
10420 SemaRef.Context.UnsignedLongLongTy, SemaRef.Context.UnsignedInt128Ty
10425 if (Size->getBitWidth() == SemaRef.Context.getIntWidth(Types[I])) {
10433 = IntegerLiteral::Create(SemaRef.Context, *Size, SizeType,
10435 return SemaRef.BuildArrayType(ElementType, SizeMod, ArraySize,
10490 return SemaRef.Context.getVectorType(ElementType, NumElements, VecKind);
10497 llvm::APInt numElements(SemaRef.Context.getIntWidth(SemaRef.Context.IntTy),
10500 = IntegerLiteral::Create(SemaRef.Context, numElements, SemaRef.Context.IntTy,
10502 return SemaRef.BuildExtVectorType(ElementType, VectorSize, AttributeLoc);
10510 return SemaRef.BuildExtVectorType(ElementType, SizeExpr, AttributeLoc);
10518 return SemaRef.BuildFunctionType(T, ParamTypes,
10526 return SemaRef.Context.getFunctionNoProtoType(T);
10551 return SemaRef.Context.getTypeDeclType(Ty);
10557 return SemaRef.BuildTypeofExprType(E, Loc);
10562 return SemaRef.Context.getTypeOfType(Underlying);
10568 return SemaRef.BuildDecltypeType(E, Loc);
10575 return SemaRef.BuildUnaryTransformType(BaseType, UKind, Loc);
10583 return SemaRef.CheckTemplateIdType(Template, TemplateNameLoc, TemplateArgs);
10589 return SemaRef.BuildAtomicType(ValueType, KWLoc);
10597 return SemaRef.Context.getQualifiedTemplateName(SS.getScopeRep(), TemplateKW,
10653 return SemaRef.checkPseudoObjectAssignment(/*Scope=*/nullptr, OpLoc, Opc,
10655 ExprResult Result = SemaRef.CheckPlaceholderExpr(First);
10662 ExprResult Result = SemaRef.CheckPlaceholderExpr(Second);
10677 return SemaRef.BuildOverloadedArrowExpr(nullptr, First, OpLoc);
10694 = SemaRef.CreateBuiltinBinOp(OpLoc, Opc, First, Second);
10726 return SemaRef.CreateOverloadedUnaryOp(OpLoc, Opc, Functions, First);
10744 return SemaRef.CreateOverloadedArraySubscriptExpr(LBrace, RBrace,
10751 = SemaRef.CreateOverloadedBinOp(OpLoc, Opc, Functions, Args[0], Args[1]);
10775 return SemaRef.BuildPseudoDestructorExpr(
10781 DeclarationName Name(SemaRef.Context.DeclarationNames.getCXXDestructorName(
10782 SemaRef.Context.getCanonicalType(DestroyedType->getType())));
10795 SS.Extend(SemaRef.Context, SourceLocation(), ScopeType->getTypeLoc(),