Home | History | Annotate | Download | only in Sema

Lines Matching refs:VD

495           auto VD = cast<VarDecl>(cast<DeclRefExpr>(VarRef)->getDecl());
496 auto DVar = DSAStack->getTopDSA(VD);
517 bool IsDecl = VD->isThisDeclarationADefinition(Context) ==
519 Diag(VD->getLocation(), IsDecl ? diag::note_previous_decl
521 << VD;
549 if (VarDecl *VD = dyn_cast_or_null<VarDecl>(ND)) {
550 return VD->hasGlobalStorage() &&
568 VarDecl *VD;
579 VD = Corrected.getCorrectionDeclAs<VarDecl>();
587 if (!(VD = Lookup.getAsSingle<VarDecl>())) {
597 if (!VD->hasGlobalStorage()) {
599 << getOpenMPDirectiveName(OMPD_threadprivate) << !VD->isStaticLocal();
601 VD->isThisDeclarationADefinition(Context) == VarDecl::DeclarationOnly;
602 Diag(VD->getLocation(),
604 << VD;
608 VarDecl *CanonicalVD = VD->getCanonicalDecl();
616 << getOpenMPDirectiveName(OMPD_threadprivate) << VD;
618 VD->isThisDeclarationADefinition(Context) == VarDecl::DeclarationOnly;
619 Diag(VD->getLocation(),
621 << VD;
631 << getOpenMPDirectiveName(OMPD_threadprivate) << VD;
633 VD->isThisDeclarationADefinition(Context) == VarDecl::DeclarationOnly;
634 Diag(VD->getLocation(),
636 << VD;
647 << getOpenMPDirectiveName(OMPD_threadprivate) << VD;
649 VD->isThisDeclarationADefinition(Context) == VarDecl::DeclarationOnly;
650 Diag(VD->getLocation(),
652 << VD;
661 << getOpenMPDirectiveName(OMPD_threadprivate) << VD;
663 VD->isThisDeclarationADefinition(Context) == VarDecl::DeclarationOnly;
664 Diag(VD->getLocation(),
666 << VD;
673 if (VD->isUsed()) {
675 << getOpenMPDirectiveName(OMPD_threadprivate) << VD;
679 QualType ExprType = VD->getType().getNonReferenceType();
680 ExprResult DE = BuildDeclRefExpr(VD, ExprType, VK_LValue, Id.getLoc());
700 if (auto VD = dyn_cast<VarDecl>(E->getDecl())) {
701 if (VD->hasLocalStorage()) {
705 SemaRef.Diag(VD->getLocation(), diag::note_defined_here)
706 << VD << VD->getSourceRange();
728 VarDecl *VD = cast<VarDecl>(DE->getDecl());
733 if (RequireCompleteType(ILoc, VD->getType(),
740 if (VD->getType()->isReferenceType()) {
742 << getOpenMPDirectiveName(OMPD_threadprivate) << VD->getType();
744 VD->isThisDeclarationADefinition(Context) == VarDecl::DeclarationOnly;
745 Diag(VD->getLocation(),
747 << VD;
752 if (VD->getTLSKind()) {
753 Diag(ILoc, diag::err_omp_var_thread_local) << VD;
755 VD->isThisDeclarationADefinition(Context) == VarDecl::DeclarationOnly;
756 Diag(VD->getLocation(),
758 << VD;
764 if (auto Init = VD->getAnyInitializer()) {
771 DSAStack->addDSA(VD, DE, OMPC_threadprivate);
783 const VarDecl *VD, DSAStackTy::DSAVarData DVar,
809 } else if (VD->isStaticLocal())
811 else if (VD->isStaticDataMember())
813 else if (VD->isFileVarDecl())
815 else if (VD->getType().isConstant(SemaRef.getASTContext()))
817 else if (VD->isLocalVarDecl() && DVar.CKind == OMPC_private) {
822 SemaRef.Diag(VD->getLocation(), diag::note_omp_predetermined_dsa)
842 if (VarDecl *VD = dyn_cast<VarDecl>(E->getDecl())) {
844 if (VD->isLocalVarDecl() && !CS->capturesVariable(VD))
850 DSAStackTy::DSAVarData DVar = Stack->getTopDSA(VD);
853 !Stack->isThreadPrivate(VD) && !DVar.RefExpr)
863 VarsWithInheritedDSA.count(VD) == 0) {
864 VarsWithInheritedDSA[VD] = E;
872 DVar = Stack->hasInnermostDSA(VD, MatchesAnyClause(OMPC_reduction),
877 ReportOriginalDSA(SemaRef, Stack, VD, DVar);
882 DVar = Stack->getImplicitDSA(VD);
2409 VarDecl *VD = cast<VarDecl>(D);
2411 QualType Type = VD->getType();
2429 VD->isThisDeclarationADefinition(Context) == VarDecl::DeclarationOnly;
2430 Diag(VD->getLocation(),
2432 << VD;
2460 bool IsDecl = VD->isThisDeclarationADefinition(Context) ==
2462 Diag(VD->getLocation(),
2464 << VD;
2477 bool IsDecl = VD->isThisDeclarationADefinition(Context) ==
2479 Diag(VD->getLocation(),
2481 << VD;
2497 DSAStackTy::DSAVarData DVar = DSAStack->getTopDSA(VD);
2501 ReportOriginalDSA(*this, DSAStack, VD, DVar);
2505 DSAStack->addDSA(VD, DE, OMPC_private);
2540 VarDecl *VD = cast<VarDecl>(D);
2542 QualType Type = VD->getType();
2560 VD->isThisDeclarationADefinition(Context) == VarDecl::DeclarationOnly;
2561 Diag(VD->getLocation(),
2563 << VD;
2588 bool IsDecl = VD->isThisDeclarationADefinition(Context) ==
2590 Diag(VD->getLocation(),
2592 << VD;
2605 bool IsDecl = VD->isThisDeclarationADefinition(Context) ==
2607 Diag(VD->getLocation(),
2609 << VD;
2621 DSAStackTy::DSAVarData DVar = DSAStack->getTopDSA(VD);
2634 ReportOriginalDSA(*this, DSAStack, VD, DVar);
2649 if (!(IsConstant || VD->isStaticDataMember()) && !DVar.RefExpr &&
2654 ReportOriginalDSA(*this, DSAStack, VD, DVar);
2666 DVar = DSAStack->getImplicitDSA(VD);
2671 ReportOriginalDSA(*this, DSAStack, VD, DVar);
2690 DSAStack->addDSA(VD, DE, OMPC_firstprivate);
2726 VarDecl *VD = cast<VarDecl>(D);
2728 QualType Type = VD->getType();
2746 VD->isThisDeclarationADefinition(Context) == VarDecl::DeclarationOnly;
2747 Diag(VD->getLocation(),
2749 << VD;
2758 DSAStackTy::DSAVarData DVar = DSAStack->getTopDSA(VD);
2765 ReportOriginalDSA(*this, DSAStack, VD, DVar);
2778 DVar = DSAStack->getImplicitDSA(VD);
2783 ReportOriginalDSA(*this, DSAStack, VD, DVar);
2811 bool IsDecl = VD->isThisDeclarationADefinition(Context) ==
2813 Diag(VD->getLocation(),
2815 << VD;
2831 bool IsDecl = VD->isThisDeclarationADefinition(Context) ==
2833 Diag(VD->getLocation(),
2835 << VD;
2845 DSAStack->addDSA(VD, DE, OMPC_lastprivate);
2882 VarDecl *VD = cast<VarDecl>(D);
2884 QualType Type = VD->getType();
2898 DSAStackTy::DSAVarData DVar = DSAStack->getTopDSA(VD);
2903 ReportOriginalDSA(*this, DSAStack, VD, DVar);
2907 DSAStack->addDSA(VD, DE, OMPC_shared);
2923 if (VarDecl *VD = dyn_cast<VarDecl>(E->getDecl())) {
2924 DSAStackTy::DSAVarData DVar = Stack->getTopDSA(VD);
2930 Stack->hasDSA(VD, isOpenMPPrivate, MatchesAlways());
3046 auto VD = cast<VarDecl>(D);
3047 auto Type = VD->getType();
3059 VD->isThisDeclarationADefinition(Context) == VarDecl::DeclarationOnly;
3060 Diag(VD->getLocation(),
3062 << VD;
3072 VD->isThisDeclarationADefinition(Context) == VarDecl::DeclarationOnly;
3073 Diag(VD->getLocation(),
3075 << VD;
3081 VarDecl *VDDef = VD->getDefinition();
3104 VD->isThisDeclarationADefinition(Context) == VarDecl::DeclarationOnly;
3105 Diag(VD->getLocation(),
3107 << VD;
3114 VD->isThisDeclarationADefinition(Context) == VarDecl::DeclarationOnly;
3115 Diag(VD->getLocation(),
3117 << VD;
3130 VD->isThisDeclarationADefinition(Context) == VarDecl::DeclarationOnly;
3131 Diag(VD->getLocation(),
3133 << VD;
3148 DSAStackTy::DSAVarData DVar = DSAStack->getTopDSA(VD);
3159 ReportOriginalDSA(*this, DSAStack, VD, DVar);
3170 DVar = DSAStack->getImplicitDSA(VD);
3175 ReportOriginalDSA(*this, DSAStack, VD, DVar);
3196 bool IsDecl = VD->isThisDeclarationADefinition(Context) ==
3198 Diag(VD->getLocation(),
3200 << VD;
3213 bool IsDecl = VD->isThisDeclarationADefinition(Context) ==
3215 Diag(VD->getLocation(),
3217 << VD;
3226 DSAStack->addDSA(VD, DE, OMPC_reduction);
3272 VarDecl *VD = cast<VarDecl>(DE->getDecl());
3278 DSAStackTy::DSAVarData DVar = DSAStack->getTopDSA(VD);
3282 ReportOriginalDSA(*this, DSAStack, VD, DVar);
3286 QualType QType = VD->getType();
3302 VD->isThisDeclarationADefinition(Context) == VarDecl::DeclarationOnly;
3303 Diag(VD->getLocation(),
3305 << VD;
3314 VD->isThisDeclarationADefinition(Context) == VarDecl::DeclarationOnly;
3315 Diag(VD->getLocation(),
3317 << VD;
3328 VD->isThisDeclarationADefinition(Context) == VarDecl::DeclarationOnly;
3329 Diag(VD->getLocation(),
3331 << VD;
3335 DSAStack->addDSA(VD, DE, OMPC_linear);
3387 VarDecl *VD = cast<VarDecl>(DE->getDecl());
3402 VD->isThisDeclarationADefinition(Context) == VarDecl::DeclarationOnly;
3403 Diag(VD->getLocation(),
3405 << VD;
3411 if (DeclRefExpr *PrevRef = DSAStack->addUniqueAligned(VD, DE)) {
3465 VarDecl *VD = cast<VarDecl>(D);
3467 QualType Type = VD->getType();
3476 if (!DSAStack->isThreadPrivate(VD)) {
3500 bool IsDecl = VD->isThisDeclarationADefinition(Context) ==
3502 Diag(VD->getLocation(),
3504 << VD;
3513 DSAStack->addDSA(VD, DE, OMPC_copyin);
3548 VarDecl *VD = cast<VarDecl>(D);
3550 QualType Type = VD->getType();
3560 if (!DSAStack->isThreadPrivate(VD)) {
3561 auto DVar = DSAStack->getTopDSA(VD);
3567 ReportOriginalDSA(*this, DSAStack, VD, DVar);
3575 DVar = DSAStack->getImplicitDSA(VD);
3580 ReportOriginalDSA(*this, DSAStack, VD, DVar);
3603 bool IsDecl = VD->isThisDeclarationADefinition(Context) ==
3605 Diag(VD->getLocation(),
3607 << VD;