Lines Matching defs:ASE
6256 auto ASE = dyn_cast<ArraySubscriptExpr>(UnaOp->getSubExpr());
6257 if (UnaOp->getOpcode() == UO_AddrOf && ASE) {
6259 if (ASE->getRHS()->EvaluateAsInt(IndexResult, S.Context,
6264 E = ASE->getBase();
12548 void VisitArraySubscriptExpr(const ArraySubscriptExpr *ASE) {
12553 VisitSequencedExpressions(ASE->getLHS(), ASE->getRHS());
12555 Visit(ASE->getLHS());
12556 Visit(ASE->getRHS());
13281 auto *ASE = cast<ArraySubscriptExpr>(E);
13282 return getAlignmentAndOffsetFromBinAddOrSub(ASE->getBase(), ASE->getIdx(),
13466 const ArraySubscriptExpr *ASE,
13543 ASE ? diag::warn_array_index_exceeds_max_addressable_bounds
13559 while (const auto *ASE = dyn_cast<ArraySubscriptExpr>(BaseExpr))
13560 BaseExpr = ASE->getBase()->IgnoreParenCasts();
13622 if (ASE) {
13624 ASE->getRBracketLoc());
13633 unsigned DiagID = ASE ? diag::warn_array_index_exceeds_bounds
13635 unsigned CastMsg = (!ASE || BaseType == EffectiveType) ? 0 : 1;
13636 QualType CastMsgTy = ASE ? ASE->getLHS()->getType() : QualType();
13644 if (!ASE) {
13656 while (const auto *ASE = dyn_cast<ArraySubscriptExpr>(BaseExpr))
13657 BaseExpr = ASE->getBase()->IgnoreParenCasts();
13674 const ArraySubscriptExpr *ASE = cast<ArraySubscriptExpr>(expr);
13675 CheckArrayAccess(ASE->getBase(), ASE->getIdx(), ASE,
13677 expr = ASE->getBase();
13685 const ArraySectionExpr *ASE = cast<ArraySectionExpr>(expr);
13688 if (ASE->getLowerBound())
13689 CheckArrayAccess(ASE->getBase(), ASE->getLowerBound(),
13690 /*ASE=*/nullptr, AllowOnePastEnd > 0);