Lines Matching refs:RefExpr
70 DeclRefExpr *RefExpr; member
73 : DKind(OMPD_unknown), CKind(OMPC_unknown), RefExpr(nullptr), in DSAVarData()
80 DeclRefExpr *RefExpr; member
235 DVar.RefExpr = Iter->SharingMap[D].RefExpr; in getDSA()
280 DVar.RefExpr = nullptr; in getDSA()
319 Stack[0].SharingMap[D].RefExpr = E; in addDSA()
323 Stack.back().SharingMap[D].RefExpr = E; in addDSA()
357 DVar.RefExpr = Stack[0].SharingMap[D].RefExpr; in getTopDSA()
383 if (DVarTemp.CKind == OMPC_firstprivate && DVarTemp.RefExpr) in getTopDSA()
408 if (DVarTemp.CKind == OMPC_firstprivate && DVarTemp.RefExpr) in getTopDSA()
427 DVar.RefExpr = Stack.back().SharingMap[D].RefExpr; in getTopDSA()
726 for (auto &RefExpr : VarList) { in CheckOMPThreadPrivateDecl() local
727 DeclRefExpr *DE = cast<DeclRefExpr>(RefExpr); in CheckOMPThreadPrivateDecl()
770 Vars.push_back(RefExpr); in CheckOMPThreadPrivateDecl()
785 if (DVar.RefExpr) { in ReportOriginalDSA()
786 SemaRef.Diag(DVar.RefExpr->getExprLoc(), diag::note_omp_explicit_dsa) in ReportOriginalDSA()
853 !Stack->isThreadPrivate(VD) && !DVar.RefExpr) in VisitDeclRefExpr()
854 ImplicitFirstprivate.push_back(DVar.RefExpr); in VisitDeclRefExpr()
884 ImplicitFirstprivate.push_back(DVar.RefExpr); in VisitDeclRefExpr()
1663 (DVar.CKind != OMPC_private || DVar.RefExpr != nullptr)) { in CheckOpenMPIterationSpace()
2389 for (auto &RefExpr : VarList) { in ActOnOpenMPPrivateClause() local
2390 assert(RefExpr && "NULL expr in OpenMP private clause."); in ActOnOpenMPPrivateClause()
2391 if (isa<DependentScopeDeclRefExpr>(RefExpr)) { in ActOnOpenMPPrivateClause()
2393 Vars.push_back(RefExpr); in ActOnOpenMPPrivateClause()
2397 SourceLocation ELoc = RefExpr->getExprLoc(); in ActOnOpenMPPrivateClause()
2403 DeclRefExpr *DE = dyn_cast_or_null<DeclRefExpr>(RefExpr); in ActOnOpenMPPrivateClause()
2405 Diag(ELoc, diag::err_omp_expected_var_name) << RefExpr->getSourceRange(); in ActOnOpenMPPrivateClause()
2520 for (auto &RefExpr : VarList) { in ActOnOpenMPFirstprivateClause() local
2521 assert(RefExpr && "NULL expr in OpenMP firstprivate clause."); in ActOnOpenMPFirstprivateClause()
2522 if (isa<DependentScopeDeclRefExpr>(RefExpr)) { in ActOnOpenMPFirstprivateClause()
2524 Vars.push_back(RefExpr); in ActOnOpenMPFirstprivateClause()
2528 SourceLocation ELoc = RefExpr->getExprLoc(); in ActOnOpenMPFirstprivateClause()
2534 DeclRefExpr *DE = dyn_cast_or_null<DeclRefExpr>(RefExpr); in ActOnOpenMPFirstprivateClause()
2536 Diag(ELoc, diag::err_omp_expected_var_name) << RefExpr->getSourceRange(); in ActOnOpenMPFirstprivateClause()
2630 DVar.CKind != OMPC_lastprivate && DVar.RefExpr) { in ActOnOpenMPFirstprivateClause()
2649 if (!(IsConstant || VD->isStaticDataMember()) && !DVar.RefExpr && in ActOnOpenMPFirstprivateClause()
2706 for (auto &RefExpr : VarList) { in ActOnOpenMPLastprivateClause() local
2707 assert(RefExpr && "NULL expr in OpenMP lastprivate clause."); in ActOnOpenMPLastprivateClause()
2708 if (isa<DependentScopeDeclRefExpr>(RefExpr)) { in ActOnOpenMPLastprivateClause()
2710 Vars.push_back(RefExpr); in ActOnOpenMPLastprivateClause()
2714 SourceLocation ELoc = RefExpr->getExprLoc(); in ActOnOpenMPLastprivateClause()
2720 DeclRefExpr *DE = dyn_cast_or_null<DeclRefExpr>(RefExpr); in ActOnOpenMPLastprivateClause()
2722 Diag(ELoc, diag::err_omp_expected_var_name) << RefExpr->getSourceRange(); in ActOnOpenMPLastprivateClause()
2761 (DVar.CKind != OMPC_private || DVar.RefExpr != nullptr)) { in ActOnOpenMPLastprivateClause()
2861 for (auto &RefExpr : VarList) { in ActOnOpenMPSharedClause() local
2862 assert(RefExpr && "NULL expr in OpenMP shared clause."); in ActOnOpenMPSharedClause()
2863 if (isa<DependentScopeDeclRefExpr>(RefExpr)) { in ActOnOpenMPSharedClause()
2865 Vars.push_back(RefExpr); in ActOnOpenMPSharedClause()
2869 SourceLocation ELoc = RefExpr->getExprLoc(); in ActOnOpenMPSharedClause()
2876 DeclRefExpr *DE = dyn_cast<DeclRefExpr>(RefExpr); in ActOnOpenMPSharedClause()
2878 Diag(ELoc, diag::err_omp_expected_var_name) << RefExpr->getSourceRange(); in ActOnOpenMPSharedClause()
2900 DVar.RefExpr) { in ActOnOpenMPSharedClause()
2925 if (DVar.CKind == OMPC_shared && !DVar.RefExpr) in VisitDeclRefExpr()
3015 for (auto RefExpr : VarList) { in ActOnOpenMPReductionClause() local
3016 assert(RefExpr && "nullptr expr in OpenMP reduction clause."); in ActOnOpenMPReductionClause()
3017 if (isa<DependentScopeDeclRefExpr>(RefExpr)) { in ActOnOpenMPReductionClause()
3019 Vars.push_back(RefExpr); in ActOnOpenMPReductionClause()
3023 if (RefExpr->isTypeDependent() || RefExpr->isValueDependent() || in ActOnOpenMPReductionClause()
3024 RefExpr->isInstantiationDependent() || in ActOnOpenMPReductionClause()
3025 RefExpr->containsUnexpandedParameterPack()) { in ActOnOpenMPReductionClause()
3027 Vars.push_back(RefExpr); in ActOnOpenMPReductionClause()
3031 auto ELoc = RefExpr->getExprLoc(); in ActOnOpenMPReductionClause()
3032 auto ERange = RefExpr->getSourceRange(); in ActOnOpenMPReductionClause()
3040 auto DE = dyn_cast<DeclRefExpr>(RefExpr); in ActOnOpenMPReductionClause()
3124 RefExpr, RefExpr); in ActOnOpenMPReductionClause()
3152 if (DVar.RefExpr) { in ActOnOpenMPReductionClause()
3153 Diag(DVar.RefExpr->getExprLoc(), diag::note_omp_referenced); in ActOnOpenMPReductionClause()
3244 for (auto &RefExpr : VarList) { in ActOnOpenMPLinearClause() local
3245 assert(RefExpr && "NULL expr in OpenMP linear clause."); in ActOnOpenMPLinearClause()
3246 if (isa<DependentScopeDeclRefExpr>(RefExpr)) { in ActOnOpenMPLinearClause()
3248 Vars.push_back(RefExpr); in ActOnOpenMPLinearClause()
3260 SourceLocation ELoc = RefExpr->getExprLoc(); in ActOnOpenMPLinearClause()
3266 DeclRefExpr *DE = dyn_cast<DeclRefExpr>(RefExpr); in ActOnOpenMPLinearClause()
3268 Diag(ELoc, diag::err_omp_expected_var_name) << RefExpr->getSourceRange(); in ActOnOpenMPLinearClause()
3279 if (DVar.RefExpr) { in ActOnOpenMPLinearClause()
3370 for (auto &RefExpr : VarList) { in ActOnOpenMPAlignedClause() local
3371 assert(RefExpr && "NULL expr in OpenMP aligned clause."); in ActOnOpenMPAlignedClause()
3372 if (isa<DependentScopeDeclRefExpr>(RefExpr)) { in ActOnOpenMPAlignedClause()
3374 Vars.push_back(RefExpr); in ActOnOpenMPAlignedClause()
3378 SourceLocation ELoc = RefExpr->getExprLoc(); in ActOnOpenMPAlignedClause()
3381 DeclRefExpr *DE = dyn_cast<DeclRefExpr>(RefExpr); in ActOnOpenMPAlignedClause()
3383 Diag(ELoc, diag::err_omp_expected_var_name) << RefExpr->getSourceRange(); in ActOnOpenMPAlignedClause()
3400 << QType << getLangOpts().CPlusPlus << RefExpr->getSourceRange(); in ActOnOpenMPAlignedClause()
3412 Diag(ELoc, diag::err_omp_aligned_twice) << RefExpr->getSourceRange(); in ActOnOpenMPAlignedClause()
3445 for (auto &RefExpr : VarList) { in ActOnOpenMPCopyinClause() local
3446 assert(RefExpr && "NULL expr in OpenMP copyin clause."); in ActOnOpenMPCopyinClause()
3447 if (isa<DependentScopeDeclRefExpr>(RefExpr)) { in ActOnOpenMPCopyinClause()
3449 Vars.push_back(RefExpr); in ActOnOpenMPCopyinClause()
3453 SourceLocation ELoc = RefExpr->getExprLoc(); in ActOnOpenMPCopyinClause()
3458 DeclRefExpr *DE = dyn_cast<DeclRefExpr>(RefExpr); in ActOnOpenMPCopyinClause()
3460 Diag(ELoc, diag::err_omp_expected_var_name) << RefExpr->getSourceRange(); in ActOnOpenMPCopyinClause()
3528 for (auto &RefExpr : VarList) { in ActOnOpenMPCopyprivateClause() local
3529 assert(RefExpr && "NULL expr in OpenMP copyprivate clause."); in ActOnOpenMPCopyprivateClause()
3530 if (isa<DependentScopeDeclRefExpr>(RefExpr)) { in ActOnOpenMPCopyprivateClause()
3532 Vars.push_back(RefExpr); in ActOnOpenMPCopyprivateClause()
3536 SourceLocation ELoc = RefExpr->getExprLoc(); in ActOnOpenMPCopyprivateClause()
3541 DeclRefExpr *DE = dyn_cast<DeclRefExpr>(RefExpr); in ActOnOpenMPCopyprivateClause()
3543 Diag(ELoc, diag::err_omp_expected_var_name) << RefExpr->getSourceRange(); in ActOnOpenMPCopyprivateClause()
3563 !(DVar.CKind == OMPC_private && !DVar.RefExpr)) { in ActOnOpenMPCopyprivateClause()