Lines Matching defs:CAT

212         if (auto *CAT = dyn_cast<ConstantArrayType>(AT)) {
213 ArraySize = CAT->getZExtSize();
399 void addArrayUnchecked(const ConstantArrayType *CAT) {
403 MostDerivedType = CAT->getElementType();
405 MostDerivedArraySize = CAT->getZExtSize();
1732 void addArray(EvalInfo &Info, const Expr *E, const ConstantArrayType *CAT) {
1734 Designator.addArrayUnchecked(CAT);
3476 const ConstantArrayType *CAT =
3478 assert(CAT && "string literal isn't an array");
3479 QualType CharType = CAT->getElementType();
3495 const ConstantArrayType *CAT = Info.Ctx.getAsConstantArrayType(
3497 assert(CAT && "string literal isn't an array");
3498 QualType CharType = CAT->getElementType();
3501 unsigned Elts = CAT->getZExtSize();
3640 static bool CheckArraySize(EvalInfo &Info, const ConstantArrayType *CAT,
3643 CAT->getSizeExpr() ? CAT->getSizeExpr()->getBeginLoc() : CallLoc,
3644 CAT->getNumAddressingBits(Info.Ctx), CAT->getZExtSize(),
3804 const ConstantArrayType *CAT = Info.Ctx.getAsConstantArrayType(ObjType);
3805 assert(CAT && "vla in literal type?");
3807 if (CAT->getSize().ule(Index)) {
3818 ObjType = CAT->getElementType();
3823 if (!CheckArraySize(Info, CAT, E->getExprLoc()))
6619 if (const ConstantArrayType *CAT = Info.Ctx.getAsConstantArrayType(T)) {
6620 uint64_t Size = CAT->getZExtSize();
6621 QualType ElemT = CAT->getElementType();
6623 if (!CheckArraySize(Info, CAT, CallRange.getBegin()))
6627 ElemLV.addArray(Info, &LocE, CAT);
7137 const auto *CAT =
7139 if (!CAT)
7142 CharUnits ElemWidth = Info.Ctx.getTypeSizeInChars(CAT->getElementType());
7148 if (!visit(SubObj, CAT->getElementType(), Offset + I * ElemWidth))
7156 if (!visit(Filler, CAT->getElementType(), Offset + I * ElemWidth))
9381 if (auto *CAT = dyn_cast<ConstantArrayType>(AT))
9382 Result.addArray(Info, E, CAT);
9990 auto *CAT = Info.Ctx.getAsConstantArrayType(Init->getType());
9991 assert(CAT && "unexpected type for array initializer");
9994 std::max(CAT->getSizeBitWidth(), ArrayBound.getBitWidth());
9995 llvm::APInt InitBound = CAT->getSize().zext(Bits);
10452 if (auto *CAT = Info.Ctx.getAsConstantArrayType(Init->getType())) {
10453 if (!CAT->isZeroSize()) {
11133 const ConstantArrayType *CAT =
11135 if (!CAT) {
11147 Result = APValue(APValue::UninitArray(), 0, CAT->getZExtSize());
11153 Subobject.addArray(Info, E, CAT);
11154 ImplicitValueInitExpr VIE(CAT->getElementType());
11233 const ConstantArrayType *CAT = Info.Ctx.getAsConstantArrayType(
11235 if (!CAT)
11260 const ConstantArrayType *CAT = Info.Ctx.getAsConstantArrayType(
11272 unsigned NumElts = CAT->getZExtSize();
11303 Subobject.addArray(Info, ExprToVisit, CAT);
11308 CAT->getElementType(), 1)) {
11316 QualType DestTy = CAT->getElementType();
11370 auto *CAT = cast<ConstantArrayType>(E->getType()->castAsArrayTypeUnsafe());
11372 uint64_t Elements = CAT->getZExtSize();
11376 Subobject.addArray(Info, E, CAT);
11393 CAT->getElementType(), 1)) {
11416 if (const ConstantArrayType *CAT = Info.Ctx.getAsConstantArrayType(Type)) {
11417 unsigned FinalSize = CAT->getZExtSize();
11432 ArrayElt.addArray(Info, E, CAT);
11464 CAT->getElementType()) ||
11466 CAT->getElementType(), 1))
12133 const auto *CAT = cast<ConstantArrayType>(Ctx.getAsArrayType(BaseType));
12135 if (Index + 1 != CAT->getZExtSize())
12137 BaseType = CAT->getElementType();