Home | History | Annotate | Download | only in Sema

Lines Matching defs:SemaRef

113   Sema &SemaRef;
122 TreeTransform(Sema &SemaRef) : SemaRef(SemaRef) { }
137 Sema &getSema() const { return SemaRef; }
516 return SemaRef.Context.getTrivialTypeSourceInfo(T,
719 return SemaRef.Context.getTypeDeclType(Typedef);
724 return SemaRef.Context.getTypeDeclType(Record);
729 return SemaRef.Context.getTypeDeclType(Enum);
758 return SemaRef.Context.getAutoType(Deduced);
775 return SemaRef.Context.getParenType(InnerType);
787 return SemaRef.Context.getElaboratedType(Keyword,
815 return SemaRef.Context.getDependentTemplateSpecializationType(Keyword,
829 return SemaRef.Context.getElaboratedType(Keyword,
849 if (!SemaRef.computeDeclContext(SS))
850 return SemaRef.Context.getDependentNameType(Keyword,
856 return SemaRef.CheckTypenameType(Keyword, KeywordLoc, QualifierLoc,
864 LookupResult Result(SemaRef, Id, IdLoc, Sema::LookupTagName);
865 DeclContext *DC = SemaRef.computeDeclContext(SS, false);
869 if (SemaRef.RequireCompleteDeclContext(SS, DC))
873 SemaRef.LookupQualifiedName(Result, DC);
895 LookupResult Result(SemaRef, Id, IdLoc, Sema::LookupTagName);
896 SemaRef.LookupQualifiedName(Result, DC);
906 SemaRef.Diag(IdLoc, diag::err_tag_reference_non_tag) << Kind;
907 SemaRef.Diag(SomeDecl->getLocation(), diag::note_declared_at);
912 SemaRef.Diag(IdLoc, diag::err_not_tag_in_scope)
919 if (!SemaRef.isAcceptableTagRedeclaration(Tag, Kind, /*isDefinition*/false,
921 SemaRef.Diag(KeywordLoc, diag::err_use_with_wrong_tag) << Id;
922 SemaRef.Diag(Tag->getLocation(), diag::note_previous_use);
927 QualType T = SemaRef.Context.getTypeDeclType(Tag);
928 return SemaRef.Context.getElaboratedType(Keyword,
1049 return SemaRef.ActOnLabelStmt(IdentLoc, L, ColonLoc, SubStmt);
1058 return SemaRef.ActOnAttributedStmt(AttrLoc, Attrs, SubStmt);
1637 = SemaRef.ActOnInitList(LBraceLoc, move(Inits), RBraceLoc);
1658 = SemaRef.ActOnDesignatedInitializer(Desig, EqualOrColonLoc, GNUSyntax,
1673 return SemaRef.Owned(new (SemaRef.Context) ImplicitValueInitExpr(T));
1725 return SemaRef.ActOnChooseExpr(BuiltinLoc,
2119 SemaRef);
2175 return SemaRef.BuildMemberReferenceExpr(BaseE, BaseType,
2198 return SemaRef.BuildMemberReferenceExpr(BaseE, BaseType,
2210 return SemaRef.BuildCXXNoexceptExpr(Range.getBegin(), Arg, Range.getEnd());
2219 return new (SemaRef.Context) SizeOfPackExpr(SemaRef.Context.getSizeType(),
2223 return new (SemaRef.Context) SizeOfPackExpr(SemaRef.Context.getSizeType(),
2271 return SemaRef.Owned(SemaRef.BuildObjCEncodeExpression(AtLoc, EncodeTypeInfo,
2283 return SemaRef.BuildClassMessage(ReceiverTypeInfo,
2298 return SemaRef.BuildInstanceMessage(Receiver,
2416 = SemaRef.Context.Idents.get("__builtin_shufflevector");
2417 TranslationUnitDecl *TUDecl = SemaRef.Context.getTranslationUnitDecl();
2424 = SemaRef.Owned(new (SemaRef.Context) DeclRefExpr(Builtin, false,
2427 Callee = SemaRef.UsualUnaryConversions(Callee.take());
2434 ExprResult TheCall = SemaRef.Owned(
2435 new (SemaRef.Context) CallExpr(SemaRef.Context, Callee.take(),
2442 return SemaRef.SemaBuiltinShuffleVector(cast<CallExpr>(TheCall.take()));
2516 return new (SemaRef.Context) AtomicExpr(BuiltinLoc, Subs,
2536 return SemaRef.Owned(S);
2562 return SemaRef.Owned(S);
2569 return SemaRef.Owned(E);
2580 return SemaRef.Owned(E);
2696 if (SemaRef.BuildCXXNestedNameSpecifier(/*Scope=*/0,
2712 SS.Extend(SemaRef.Context, NS, Q.getLocalBeginLoc(), Q.getLocalEndLoc());
2721 SS.Extend(SemaRef.Context, Alias, Q.getLocalBeginLoc(),
2729 SS.MakeGlobal(SemaRef.Context, Q.getBeginLoc());
2741 (SemaRef.getLangOpts().CPlusPlus0x &&
2746 SemaRef.Diag(TL.getBeginLoc(),
2748 SS.Extend(SemaRef.Context, /*FIXME:*/SourceLocation(), TL,
2756 SemaRef.Diag(TL.getBeginLoc(), diag::err_nested_name_spec_non_tag)
2780 return SS.getWithLocInContext(SemaRef.Context);
2810 NewCanTy = SemaRef.Context.getCanonicalType(NewTInfo->getType());
2818 NewCanTy = SemaRef.Context.getCanonicalType(NewT);
2822 = SemaRef.Context.DeclarationNames.getCXXSpecialName(Name.getNameKind(),
2930 SemaRef.Context.getTrivialTypeSourceInfo(Arg.getAsType(), Loc));
2939 Builder.MakeTrivial(SemaRef.Context, DTN->getQualifier(), Loc);
2941 Builder.MakeTrivial(SemaRef.Context, QTN->getQualifier(), Loc);
2945 Builder.getWithLocInContext(SemaRef.Context),
2949 Builder.getWithLocInContext(SemaRef.Context),
3004 E = SemaRef.ActOnConstantExpression(E);
3045 E = SemaRef.ActOnConstantExpression(E);
3303 return TLB.getTypeSourceInfo(SemaRef.Context, Result);
3356 = SemaRef.Context.getQualifiedType(Replacement.getUnqualifiedType(),
3358 Result = SemaRef.Context.getSubstTemplateTypeParmType(
3366 SemaRef.Diag(R.getBegin(), diag::err_attr_objc_ownership_redundant)
3374 Result = SemaRef.BuildQualifiedType(Result, T.getBeginLoc(), Quals);
3433 return TLB.getTypeSourceInfo(SemaRef.Context, Result)->getTypeLoc();
3490 return TLB.getTypeSourceInfo(SemaRef.Context, Result);
3531 Result = SemaRef.Context.getObjCObjectPointerType(PointeeType);
3707 EnterExpressionEvaluationContext Unevaluated(SemaRef,
3710 Size = SemaRef.ActOnConstantExpression(Size).take();
3792 EnterExpressionEvaluationContext Unevaluated(SemaRef,
3801 sizeResult = SemaRef.ActOnConstantExpression(sizeResult);
3842 EnterExpressionEvaluationContext Unevaluated(SemaRef,
3846 Size = SemaRef.ActOnConstantExpression(Size);
3955 NewDI = TLB.getTypeSourceInfo(SemaRef.Context, Result);
3964 ParmVarDecl *newParm = ParmVarDecl::Create(SemaRef.Context,
4002 SemaRef.collectUnexpandedParameterPacks(Pattern, Unexpanded);
4218 Sema::CXXThisScopeRAII ThisScope(SemaRef, ThisContext, ThisTypeQuals);
4340 EnterExpressionEvaluationContext Unevaluated(SemaRef, Sema::Unevaluated);
4346 E = SemaRef.HandleExprEvaluationContextForTypeof(E.get());
4397 EnterExpressionEvaluationContext Unevaluated(SemaRef, Sema::Unevaluated, 0,
4527 QualType T = SemaRef.Context.getTypeDeclType(cast<TypeDecl>(D));
4554 Replacement = SemaRef.Context.getCanonicalType(Replacement);
4556 = SemaRef.Context.getSubstTemplateTypeParmType(T->getReplacedParameter(),
4765 NewTL.setQualifierLoc(SS.getWithLocInContext(SemaRef.Context));
4824 SemaRef.Diag(TL.getNamedTypeLoc().getBeginLoc(),
4826 SemaRef.Diag(TAT->getLocation(), diag::note_declared_at);
4868 result = SemaRef.Context.getAttributedType(oldType->getAttrKind(),
5083 return SemaRef.Owned(S);
5124 return SemaRef.Owned(S);
5137 EnterExpressionEvaluationContext Unevaluated(SemaRef,
5142 LHS = SemaRef.ActOnConstantExpression(LHS);
5148 RHS = SemaRef.ActOnConstantExpression(RHS);
5271 return SemaRef.Owned(S);
5381 return SemaRef.Owned(S);
5447 return SemaRef.Owned(S);
5473 Target = SemaRef.MaybeCreateExprWithCleanups(Target.take());
5477 return SemaRef.Owned(S);
5486 return SemaRef.Owned(S);
5492 return SemaRef.Owned(S);
5526 return SemaRef.Owned(S);
5582 return SemaRef.Owned(S);
5589 AsmString = SemaRef.Owned(S->getAsmString());
5616 ASTOwningVector<Stmt*> CatchStmts(SemaRef);
5639 return SemaRef.Owned(S);
5693 return SemaRef.Owned(S);
5740 return SemaRef.Owned(S);
5759 return SemaRef.Owned(S);
5794 return SemaRef.Owned(S);
5834 return SemaRef.Owned(S);
5852 ASTOwningVector<Stmt*> Handlers(SemaRef);
5866 return SemaRef.Owned(S);
5887 Cond = SemaRef.CheckBooleanCondition(Cond.take(), S->getColonLoc());
5891 Cond = SemaRef.MaybeCreateExprWithCleanups(Cond.take());
5897 Inc = SemaRef.MaybeCreateExprWithCleanups(Inc.take());
5930 return SemaRef.Owned(S);
6014 return SemaRef.Owned(S);
6061 return SemaRef.Owned(E);
6096 SemaRef.MarkDeclRefReferenced(E);
6098 return SemaRef.Owned(E);
6119 return SemaRef.Owned(E);
6125 return SemaRef.Owned(E);
6131 return SemaRef.Owned(E);
6137 return SemaRef.Owned(E);
6143 return SemaRef.Owned(E);
6149 return SemaRef.MaybeBindToTemporary(E);
6196 return SemaRef.Owned(E);
6210 return SemaRef.Owned(E);
6275 return SemaRef.Owned(E);
6288 return SemaRef.Owned(E);
6300 Expr *newSyntacticForm = SemaRef.recreateSyntacticForm(E);
6308 result = SemaRef.checkPseudoObjectRValue(result.take());
6325 return SemaRef.Owned(E);
6335 EnterExpressionEvaluationContext Unevaluated(SemaRef, Sema::Unevaluated);
6342 return SemaRef.Owned(E);
6365 return SemaRef.Owned(E);
6383 ASTOwningVector<Expr*> Args(SemaRef);
6391 return SemaRef.MaybeBindToTemporary(E);;
6443 SemaRef.MarkMemberReferenced(E);
6445 return SemaRef.Owned(E);
6460 = SemaRef.PP.getLocForEndOfToken(E->getBase()->getSourceRange().getEnd());
6494 return SemaRef.Owned(E);
6524 return SemaRef.Owned(e);
6552 return SemaRef.Owned(E);
6584 return SemaRef.Owned(E);
6607 return SemaRef.MaybeBindToTemporary(E);
6627 return SemaRef.Owned(E);
6631 = SemaRef.PP.getLocForEndOfToken(E->getBase()->getLocEnd());
6642 ASTOwningVector<Expr*, 4> Inits(SemaRef);
6648 return SemaRef.Owned(E);
6665 ASTOwningVector<Expr*, 4> ArrayExprs(SemaRef);
6715 return SemaRef.Owned(E);
6736 return SemaRef.Owned(E);
6755 return SemaRef.Owned(E);
6765 ASTOwningVector<Expr*, 4> Inits(SemaRef);
6795 SemaRef.ActOnStartStmtExpr();
6799 SemaRef.ActOnStmtExprError();
6806 SemaRef.ActOnStmtExprError();
6807 return SemaRef.MaybeBindToTemporary(E);
6834 return SemaRef.Owned(E);
6844 return SemaRef.Owned(E);
6868 = SemaRef.PP.getLocForEndOfToken(
6872 ASTOwningVector<Expr*> Args(SemaRef);
6917 return SemaRef.MaybeBindToTemporary(E);
6947 ASTOwningVector<Expr*> Args(SemaRef);
6955 return SemaRef.MaybeBindToTemporary(E);
6980 return SemaRef.Owned(E);
6984 = SemaRef.PP.getLocForEndOfToken(E->getOperatorLoc());
6987 = SemaRef.PP.getLocForEndOfToken(
7040 return SemaRef.Owned(E);
7059 return SemaRef.Owned(E);
7071 EnterExpressionEvaluationContext Unevaluated(SemaRef, Sema::Unevaluated);
7079 return SemaRef.Owned(E);
7098 return SemaRef.Owned(E);
7106 EnterExpressionEvaluationContext Unevaluated(SemaRef, Sema::Unevaluated);
7114 return SemaRef.Owned(E);
7125 return SemaRef.Owned(E);
7132 return SemaRef.Owned(E);
7149 return SemaRef.Owned(E);
7164 return SemaRef.Owned(E);
7181 return SemaRef.Owned(E);
7196 return SemaRef.Owned(E);
7219 ASTOwningVector<Expr*> PlacementArgs(SemaRef);
7262 SemaRef.MarkFunctionReferenced(E->getLocStart(), OperatorNew);
7264 SemaRef.MarkFunctionReferenced(E->getLocStart(), OperatorDelete);
7268 = SemaRef.Context.getBaseElementType(E->getAllocatedType());
7271 if (CXXDestructorDecl *Destructor = SemaRef.LookupDestructor(Record)) {
7272 SemaRef.MarkFunctionReferenced(E->getLocStart(), Destructor);
7277 return SemaRef.Owned(E);
7287 const ArrayType *ArrayT = SemaRef.Context.getAsArrayType(AllocType);
7293 = SemaRef.Owned(IntegerLiteral::Create(SemaRef.Context,
7295 SemaRef.Context.getSizeType(),
7301 ArraySize = SemaRef.Owned(DepArrayT->getSizeExpr());
7343 SemaRef.MarkFunctionReferenced(E->getLocStart(), OperatorDelete);
7346 QualType Destroyed = SemaRef.Context.getBaseElementType(
7350 SemaRef.MarkFunctionReferenced(E->getLocStart(),
7351 SemaRef.LookupDestructor(Record));
7355 return SemaRef.Owned(E);
7374 Base = SemaRef.ActOnStartCXXMemberReference(0, Base.get(),
7408 ParsedType T = SemaRef.getDestructorName(E->getTildeLoc(),
7418 = SemaRef.Context.getTrivialTypeSourceInfo(SemaRef.GetTypeFromParser(T),
7443 LookupResult R(SemaRef, Old->getName(), Old->getNameLoc(),
7527 return SemaRef.Owned(E);
7548 return SemaRef.Owned(E);
7574 Args.push_back(TLB.getTypeSourceInfo(SemaRef.Context, To));
7586 SemaRef.collectUnexpandedParameterPacks(PatternTL, Unexpanded);
7625 Args.push_back(TLB.getTypeSourceInfo(SemaRef.Context, To));
7632 Sema::ArgumentPackSubstitutionIndexRAII SubstIndex(SemaRef, I);
7639 Args.push_back(TLB.getTypeSourceInfo(SemaRef.Context, To));
7666 Args.push_back(TLB.getTypeSourceInfo(SemaRef.Context, To));
7670 return SemaRef.Owned(E);
7687 return SemaRef.Owned(E);
7691 EnterExpressionEvaluationContext Unevaluated(SemaRef, Sema::Unevaluated);
7697 return SemaRef.Owned(E);
7712 EnterExpressionEvaluationContext Unevaluated(SemaRef, Sema::Unevaluated);
7718 return SemaRef.Owned(E);
7750 return SemaRef.Owned(E);
7793 ASTOwningVector<Expr*> Args(SemaRef);
7804 SemaRef.MarkFunctionReferenced(E->getLocStart(), Constructor);
7805 return SemaRef.Owned(E);
7854 ASTOwningVector<Expr*> Args(SemaRef);
7865 SemaRef.MarkFunctionReferenced(E->getLocStart(), Constructor);
7866 return SemaRef.MaybeBindToTemporary(E);
8036 ASTOwningVector<Expr*> Args(SemaRef);
8045 return SemaRef.Owned(E);
8072 Base = SemaRef.ActOnStartCXXMemberReference(0, Base.get(),
8125 return SemaRef.Owned(E);
8184 LookupResult R(SemaRef, Old->getMemberNameInfo(),
8261 EnterExpressionEvaluationContext Unevaluated(SemaRef, Sema::Unevaluated);
8267 return SemaRef.Owned(E);
8280 return SemaRef.Owned(E);
8292 return SemaRef.Owned(E);
8308 return SemaRef.Owned(E);
8331 return SemaRef.Owned(E);
8339 return SemaRef.Owned(E);
8352 return SemaRef.MaybeBindToTemporary(E);
8358 return SemaRef.Owned(E);
8370 return SemaRef.Owned(E);
8386 return SemaRef.MaybeBindToTemporary(E);
8508 return SemaRef.MaybeBindToTemporary(E);
8525 return SemaRef.Owned(E);
8541 return SemaRef.Owned(E);
8543 return SemaRef.Owned(new(SemaRef.Context)
8562 return SemaRef.Owned(E);
8564 return SemaRef.BuildObjCBridgedCast(E->getLParenLoc(), E->getBridgeKind(),
8574 ASTOwningVector<Expr*> Args(SemaRef);
8590 return SemaRef.MaybeBindToTemporary(E);
8615 return SemaRef.MaybeBindToTemporary(E);
8632 return SemaRef.Owned(E);
8638 return SemaRef.Owned(E);
8654 return SemaRef.Owned(E);
8667 return SemaRef.Owned(E);
8679 return SemaRef.Owned(E);
8687 SemaRef.Context.PseudoObjectTy,
8709 return SemaRef.Owned(E);
8728 return SemaRef.Owned(E);
8738 ASTOwningVector<Expr*> SubExprs(SemaRef);
8746 return SemaRef.Owned(E);
8758 SemaRef.ActOnBlockStart(E->getCaretLocation(), /*Scope=*/0);
8759 BlockScopeInfo *blockScope = SemaRef.getCurBlock();
8818 if (!SemaRef.getDiagnostics().hasErrorOccurred()) {
8837 return SemaRef.ActOnBlockStmtExpr(E->getCaretLocation(), body.get(),
8852 ASTOwningVector<Expr*> SubExprs(SemaRef);
8860 return SemaRef.Owned(E);
8873 return SemaRef.BuildPointerType(PointeeType, Star,
8880 return SemaRef.BuildBlockPointerType(PointeeType, Star,
8889 return SemaRef.BuildReferenceType(ReferentType, WrittenAsLValue,
8898 return SemaRef.BuildMemberPointerType(PointeeType, ClassType,
8911 return SemaRef.BuildArrayType(ElementType, SizeMod, SizeExpr,
8916 SemaRef.Context.UnsignedCharTy, SemaRef.Context.UnsignedShortTy,
8917 SemaRef.Context.UnsignedIntTy, SemaRef.Context.UnsignedLongTy,
8918 SemaRef.Context.UnsignedLongLongTy, SemaRef.Context.UnsignedInt128Ty
8923 if (Size->getBitWidth() == SemaRef.Context.getIntWidth(Types[I])) {
8931 = IntegerLiteral::Create(SemaRef.Context, *Size, SizeType,
8933 return SemaRef.BuildArrayType(ElementType, SizeMod, ArraySize,
8988 return SemaRef.Context.getVectorType(ElementType, NumElements, VecKind);
8995 llvm::APInt numElements(SemaRef.Context.getIntWidth(SemaRef.Context.IntTy),
8998 = IntegerLiteral::Create(SemaRef.Context, numElements, SemaRef.Context.IntTy,
9000 return SemaRef.BuildExtVectorType(ElementType, VectorSize, AttributeLoc);
9008 return SemaRef.BuildExtVectorType(ElementType, SizeExpr, AttributeLoc);
9020 return SemaRef.BuildFunctionType(T, ParamTypes, NumParamTypes, Variadic,
9029 return SemaRef.Context.getFunctionNoProtoType(T);
9054 return SemaRef.Context.getTypeDeclType(Ty);
9060 return SemaRef.BuildTypeofExprType(E, Loc);
9065 return SemaRef.Context.getTypeOfType(Underlying);
9071 return SemaRef.BuildDecltypeType(E, Loc);
9078 return SemaRef.BuildUnaryTransformType(BaseType, UKind, Loc);
9086 return SemaRef.CheckTemplateIdType(Template, TemplateNameLoc, TemplateArgs);
9092 return SemaRef.BuildAtomicType(ValueType, KWLoc);
9100 return SemaRef.Context.getQualifiedTemplateName(SS.getScopeRep(), TemplateKW,
9162 return SemaRef.BuildOverloadedArrowExpr(0, First, OpLoc);
9179 = SemaRef.CreateBuiltinBinOp(OpLoc, Opc, First, Second);
9209 return SemaRef.CreateOverloadedUnaryOp(OpLoc, Opc, Functions, First);
9227 return SemaRef.CreateOverloadedArraySubscriptExpr(LBrace, RBrace,
9234 = SemaRef.CreateOverloadedBinOp(OpLoc, Opc, Functions, Args[0], Args[1]);
9258 return SemaRef.BuildPseudoDestructorExpr(Base, OperatorLoc,
9266 DeclarationName Name(SemaRef.Context.DeclarationNames.getCXXDestructorName(
9267 SemaRef.Context.getCanonicalType(DestroyedType->getType())));