Lines Matching refs:RefExpr

73     DeclRefExpr *RefExpr;  member
76 : DKind(OMPD_unknown), CKind(OMPC_unknown), RefExpr(nullptr), in DSAVarData()
82 Expr *RefExpr; member
88 DeclRefExpr *RefExpr; member
403 DVar.RefExpr = Iter->SharingMap[D].RefExpr; in getDSA()
449 DVar.RefExpr = nullptr; in getDSA()
502 Stack[0].SharingMap[D].RefExpr = E; in addDSA()
506 Stack.back().SharingMap[D].RefExpr = E; in addDSA()
575 DVar.RefExpr = Stack[0].SharingMap[D].RefExpr; in getTopDSA()
590 if (DVarTemp.CKind != OMPC_unknown && DVarTemp.RefExpr) in getTopDSA()
615 if (DVarTemp.CKind == OMPC_firstprivate && DVarTemp.RefExpr) in getTopDSA()
631 DVar.RefExpr = I->SharingMap[D].RefExpr; in getTopDSA()
703 return (StartI->SharingMap.count(D) > 0) && StartI->SharingMap[D].RefExpr && in hasExplicitDSA()
1152 for (auto &RefExpr : VarList) { in CheckOMPThreadPrivateDecl() local
1153 DeclRefExpr *DE = cast<DeclRefExpr>(RefExpr); in CheckOMPThreadPrivateDecl()
1210 Vars.push_back(RefExpr); in CheckOMPThreadPrivateDecl()
1229 if (DVar.RefExpr) { in ReportOriginalDSA()
1230 SemaRef.Diag(DVar.RefExpr->getExprLoc(), diag::note_omp_explicit_dsa) in ReportOriginalDSA()
1298 if (DVar.RefExpr) return; in VisitDeclRefExpr()
3478 DVar.RefExpr != nullptr)) { in CheckOpenMPIterationSpace()
3482 if (DVar.RefExpr == nullptr) in CheckOpenMPIterationSpace()
6333 for (auto &RefExpr : VarList) { in ActOnOpenMPPrivateClause() local
6334 assert(RefExpr && "NULL expr in OpenMP private clause."); in ActOnOpenMPPrivateClause()
6335 if (isa<DependentScopeDeclRefExpr>(RefExpr)) { in ActOnOpenMPPrivateClause()
6337 Vars.push_back(RefExpr); in ActOnOpenMPPrivateClause()
6342 SourceLocation ELoc = RefExpr->getExprLoc(); in ActOnOpenMPPrivateClause()
6348 DeclRefExpr *DE = dyn_cast_or_null<DeclRefExpr>(RefExpr); in ActOnOpenMPPrivateClause()
6350 Diag(ELoc, diag::err_omp_expected_var_name) << RefExpr->getSourceRange(); in ActOnOpenMPPrivateClause()
6466 for (auto &RefExpr : VarList) { in ActOnOpenMPFirstprivateClause() local
6467 assert(RefExpr && "NULL expr in OpenMP firstprivate clause."); in ActOnOpenMPFirstprivateClause()
6468 if (isa<DependentScopeDeclRefExpr>(RefExpr)) { in ActOnOpenMPFirstprivateClause()
6470 Vars.push_back(RefExpr); in ActOnOpenMPFirstprivateClause()
6477 IsImplicitClause ? ImplicitClauseLoc : RefExpr->getExprLoc(); in ActOnOpenMPFirstprivateClause()
6483 DeclRefExpr *DE = dyn_cast_or_null<DeclRefExpr>(RefExpr); in ActOnOpenMPFirstprivateClause()
6485 Diag(ELoc, diag::err_omp_expected_var_name) << RefExpr->getSourceRange(); in ActOnOpenMPFirstprivateClause()
6524 DVar.CKind != OMPC_lastprivate && DVar.RefExpr) { in ActOnOpenMPFirstprivateClause()
6543 if (!(IsConstant || VD->isStaticDataMember()) && !DVar.RefExpr && in ActOnOpenMPFirstprivateClause()
6729 for (auto &RefExpr : VarList) { in ActOnOpenMPLastprivateClause() local
6730 assert(RefExpr && "NULL expr in OpenMP lastprivate clause."); in ActOnOpenMPLastprivateClause()
6731 if (isa<DependentScopeDeclRefExpr>(RefExpr)) { in ActOnOpenMPLastprivateClause()
6733 Vars.push_back(RefExpr); in ActOnOpenMPLastprivateClause()
6740 SourceLocation ELoc = RefExpr->getExprLoc(); in ActOnOpenMPLastprivateClause()
6746 DeclRefExpr *DE = dyn_cast_or_null<DeclRefExpr>(RefExpr); in ActOnOpenMPLastprivateClause()
6748 Diag(ELoc, diag::err_omp_expected_var_name) << RefExpr->getSourceRange(); in ActOnOpenMPLastprivateClause()
6781 (DVar.CKind != OMPC_private || DVar.RefExpr != nullptr)) { in ActOnOpenMPLastprivateClause()
6870 for (auto &RefExpr : VarList) { in ActOnOpenMPSharedClause() local
6871 assert(RefExpr && "NULL expr in OpenMP shared clause."); in ActOnOpenMPSharedClause()
6872 if (isa<DependentScopeDeclRefExpr>(RefExpr)) { in ActOnOpenMPSharedClause()
6874 Vars.push_back(RefExpr); in ActOnOpenMPSharedClause()
6878 SourceLocation ELoc = RefExpr->getExprLoc(); in ActOnOpenMPSharedClause()
6885 DeclRefExpr *DE = dyn_cast<DeclRefExpr>(RefExpr); in ActOnOpenMPSharedClause()
6887 Diag(ELoc, diag::err_omp_expected_var_name) << RefExpr->getSourceRange(); in ActOnOpenMPSharedClause()
6909 DVar.RefExpr) { in ActOnOpenMPSharedClause()
6934 if (DVar.CKind == OMPC_shared && !DVar.RefExpr) in VisitDeclRefExpr()
7066 for (auto RefExpr : VarList) { in ActOnOpenMPReductionClause() local
7067 assert(RefExpr && "nullptr expr in OpenMP reduction clause."); in ActOnOpenMPReductionClause()
7068 if (isa<DependentScopeDeclRefExpr>(RefExpr)) { in ActOnOpenMPReductionClause()
7070 Vars.push_back(RefExpr); in ActOnOpenMPReductionClause()
7078 if (RefExpr->isTypeDependent() || RefExpr->isValueDependent() || in ActOnOpenMPReductionClause()
7079 RefExpr->isInstantiationDependent() || in ActOnOpenMPReductionClause()
7080 RefExpr->containsUnexpandedParameterPack()) { in ActOnOpenMPReductionClause()
7082 Vars.push_back(RefExpr); in ActOnOpenMPReductionClause()
7090 auto ELoc = RefExpr->getExprLoc(); in ActOnOpenMPReductionClause()
7091 auto ERange = RefExpr->getSourceRange(); in ActOnOpenMPReductionClause()
7099 auto *DE = dyn_cast<DeclRefExpr>(RefExpr); in ActOnOpenMPReductionClause()
7100 auto *ASE = dyn_cast<ArraySubscriptExpr>(RefExpr); in ActOnOpenMPReductionClause()
7101 auto *OASE = dyn_cast<OMPArraySectionExpr>(RefExpr); in ActOnOpenMPReductionClause()
7244 if (DVar.RefExpr) { in ActOnOpenMPReductionClause()
7245 Diag(DVar.RefExpr->getExprLoc(), diag::note_omp_referenced); in ActOnOpenMPReductionClause()
7443 Vars.push_back(RefExpr); in ActOnOpenMPReductionClause()
7471 for (auto &RefExpr : VarList) { in ActOnOpenMPLinearClause() local
7472 assert(RefExpr && "NULL expr in OpenMP linear clause."); in ActOnOpenMPLinearClause()
7473 if (isa<DependentScopeDeclRefExpr>(RefExpr)) { in ActOnOpenMPLinearClause()
7475 Vars.push_back(RefExpr); in ActOnOpenMPLinearClause()
7489 SourceLocation ELoc = RefExpr->getExprLoc(); in ActOnOpenMPLinearClause()
7495 DeclRefExpr *DE = dyn_cast<DeclRefExpr>(RefExpr); in ActOnOpenMPLinearClause()
7497 Diag(ELoc, diag::err_omp_expected_var_name) << RefExpr->getSourceRange(); in ActOnOpenMPLinearClause()
7508 if (DVar.RefExpr) { in ActOnOpenMPLinearClause()
7645 for (auto &RefExpr : Clause.varlists()) { in FinishOpenMPLinearClause() local
7649 auto DE = cast<DeclRefExpr>(RefExpr); in FinishOpenMPLinearClause()
7661 BuildCounterUpdate(SemaRef, S, RefExpr->getExprLoc(), *CurPrivate, in FinishOpenMPLinearClause()
7668 BuildCounterUpdate(SemaRef, S, RefExpr->getExprLoc(), CapturedRef, in FinishOpenMPLinearClause()
7692 for (auto &RefExpr : VarList) { in ActOnOpenMPAlignedClause() local
7693 assert(RefExpr && "NULL expr in OpenMP aligned clause."); in ActOnOpenMPAlignedClause()
7694 if (isa<DependentScopeDeclRefExpr>(RefExpr)) { in ActOnOpenMPAlignedClause()
7696 Vars.push_back(RefExpr); in ActOnOpenMPAlignedClause()
7700 SourceLocation ELoc = RefExpr->getExprLoc(); in ActOnOpenMPAlignedClause()
7703 DeclRefExpr *DE = dyn_cast<DeclRefExpr>(RefExpr); in ActOnOpenMPAlignedClause()
7705 Diag(ELoc, diag::err_omp_expected_var_name) << RefExpr->getSourceRange(); in ActOnOpenMPAlignedClause()
7720 << QType << getLangOpts().CPlusPlus << RefExpr->getSourceRange(); in ActOnOpenMPAlignedClause()
7732 Diag(ELoc, diag::err_omp_aligned_twice) << RefExpr->getSourceRange(); in ActOnOpenMPAlignedClause()
7768 for (auto &RefExpr : VarList) { in ActOnOpenMPCopyinClause() local
7769 assert(RefExpr && "NULL expr in OpenMP copyin clause."); in ActOnOpenMPCopyinClause()
7770 if (isa<DependentScopeDeclRefExpr>(RefExpr)) { in ActOnOpenMPCopyinClause()
7772 Vars.push_back(RefExpr); in ActOnOpenMPCopyinClause()
7779 SourceLocation ELoc = RefExpr->getExprLoc(); in ActOnOpenMPCopyinClause()
7784 DeclRefExpr *DE = dyn_cast<DeclRefExpr>(RefExpr); in ActOnOpenMPCopyinClause()
7786 Diag(ELoc, diag::err_omp_expected_var_name) << RefExpr->getSourceRange(); in ActOnOpenMPCopyinClause()
7860 for (auto &RefExpr : VarList) { in ActOnOpenMPCopyprivateClause() local
7861 assert(RefExpr && "NULL expr in OpenMP copyprivate clause."); in ActOnOpenMPCopyprivateClause()
7862 if (isa<DependentScopeDeclRefExpr>(RefExpr)) { in ActOnOpenMPCopyprivateClause()
7864 Vars.push_back(RefExpr); in ActOnOpenMPCopyprivateClause()
7871 SourceLocation ELoc = RefExpr->getExprLoc(); in ActOnOpenMPCopyprivateClause()
7876 DeclRefExpr *DE = dyn_cast<DeclRefExpr>(RefExpr); in ActOnOpenMPCopyprivateClause()
7878 Diag(ELoc, diag::err_omp_expected_var_name) << RefExpr->getSourceRange(); in ActOnOpenMPCopyprivateClause()
7901 DVar.RefExpr) { in ActOnOpenMPCopyprivateClause()
8027 for (auto &RefExpr : VarList) { in ActOnOpenMPDependClause() local
8028 assert(RefExpr && "NULL expr in OpenMP shared clause."); in ActOnOpenMPDependClause()
8029 if (isa<DependentScopeDeclRefExpr>(RefExpr)) { in ActOnOpenMPDependClause()
8031 Vars.push_back(RefExpr); in ActOnOpenMPDependClause()
8035 SourceLocation ELoc = RefExpr->getExprLoc(); in ActOnOpenMPDependClause()
8040 auto *SimpleExpr = RefExpr->IgnoreParenCasts(); in ActOnOpenMPDependClause()
8044 if (!RefExpr->IgnoreParenImpCasts()->isLValue() || in ActOnOpenMPDependClause()
8049 << RefExpr->getSourceRange(); in ActOnOpenMPDependClause()
8053 Vars.push_back(RefExpr->IgnoreParenImpCasts()); in ActOnOpenMPDependClause()
8212 if (MI.RefExpr) { in ActOnOpenMPMapClause()
8214 Diag(MI.RefExpr->getExprLoc(), diag::note_used_here) in ActOnOpenMPMapClause()
8215 << MI.RefExpr->getSourceRange(); in ActOnOpenMPMapClause()
8230 if (MI.RefExpr && (isa<DeclRefExpr>(MI.RefExpr->IgnoreParenLValueCasts()) != in ActOnOpenMPMapClause()
8234 Diag(MI.RefExpr->getExprLoc(), diag::note_used_here) in ActOnOpenMPMapClause()
8235 << MI.RefExpr->getSourceRange(); in ActOnOpenMPMapClause()
8246 MI.RefExpr = RE; in ActOnOpenMPMapClause()