Lines Matching defs:VarExpr
445 Expr *VarExpr) {
446 // We already know that VarExpr is a proper reference to a variable, so we
451 if (!VarExpr || VarExpr->containsErrors())
454 if (isa<ArraySectionExpr>(VarExpr->IgnoreParenImpCasts()) ||
455 VarExpr->hasPlaceholderType(BuiltinType::ArraySection)) {
456 Diag(VarExpr->getExprLoc(), diag::err_array_section_use) << /*OpenACC=*/0;
457 Diag(VarExpr->getExprLoc(), diag::note_acc_expected_pointer_var);
461 QualType Ty = VarExpr->getType();
469 return Diag(VarExpr->getExprLoc(), diag::err_acc_var_not_pointer_type)
474 ExprResult SemaOpenACC::ActOnVar(OpenACCClauseKind CK, Expr *VarExpr) {
475 Expr *CurVarExpr = VarExpr->IgnoreParenImpCasts();
482 Diag(VarExpr->getExprLoc(), diag::err_acc_not_a_var_ref_use_device);
487 // VarExpr/MemberExpr. So strip all of those off.
500 return VarExpr;
513 return VarExpr;
520 return VarExpr;
527 return VarExpr;
535 Diag(VarExpr->getExprLoc(), diag::err_acc_not_a_var_ref_use_device);
537 Diag(VarExpr->getExprLoc(), diag::err_acc_not_a_var_ref)