reference, declarationdefinition
definition → references, declarations, derived classes, virtual overrides
reference to multiple definitions → definitions
unreferenced

References

tools/clang/lib/Serialization/ASTReaderStmt.cpp
   75       return Record.readSourceLocation();
   79       return Record.readSourceRange();
   83       return Record.readString();
   87       return Record.getTypeSourceInfo();
   91       return Record.readDecl();
   96       return Record.readDeclAs<T>();
  101       Record.readDeclarationNameLoc(DNLoc, Name);
  105       Record.readDeclarationNameInfo(NameInfo);
  145     ArgInfo.addArgument(Record.readTemplateArgumentLoc());
  150   S->setIsOMPStructuredBlock(Record.readInt());
  151   assert(Record.getIdx() == NumStmtFields && "Incorrect statement field count");
  157   S->NullStmtBits.HasLeadingEmptyMacro = Record.readInt();
  163   unsigned NumStmts = Record.readInt();
  165     Stmts.push_back(Record.readSubStmt());
  173   Record.recordSwitchCaseID(S, Record.readInt());
  173   Record.recordSwitchCaseID(S, Record.readInt());
  180   bool CaseStmtIsGNURange = Record.readInt();
  181   S->setLHS(Record.readSubExpr());
  182   S->setSubStmt(Record.readSubStmt());
  184     S->setRHS(Record.readSubExpr());
  191   S->setSubStmt(Record.readSubStmt());
  199   S->setSubStmt(Record.readSubStmt());
  208   uint64_t NumAttrs = Record.readInt();
  210   Record.readAttributes(Attrs);
  215   S->SubStmt = Record.readSubStmt();
  222   S->setConstexpr(Record.readInt());
  223   bool HasElse = Record.readInt();
  224   bool HasVar = Record.readInt();
  225   bool HasInit = Record.readInt();
  227   S->setCond(Record.readSubExpr());
  228   S->setThen(Record.readSubStmt());
  230     S->setElse(Record.readSubStmt());
  232     S->setConditionVariable(Record.getContext(), ReadDeclAs<VarDecl>());
  234     S->setInit(Record.readSubStmt());
  244   bool HasInit = Record.readInt();
  245   bool HasVar = Record.readInt();
  246   bool AllEnumCasesCovered = Record.readInt();
  250   S->setCond(Record.readSubExpr());
  251   S->setBody(Record.readSubStmt());
  253     S->setInit(Record.readSubStmt());
  255     S->setConditionVariable(Record.getContext(), ReadDeclAs<VarDecl>());
  260   for (auto E = Record.size(); Record.getIdx() != E; ) {
  260   for (auto E = Record.size(); Record.getIdx() != E; ) {
  261     SwitchCase *SC = Record.getSwitchCaseWithID(Record.readInt());
  261     SwitchCase *SC = Record.getSwitchCaseWithID(Record.readInt());
  274   bool HasVar = Record.readInt();
  276   S->setCond(Record.readSubExpr());
  277   S->setBody(Record.readSubStmt());
  279     S->setConditionVariable(Record.getContext(), ReadDeclAs<VarDecl>());
  286   S->setCond(Record.readSubExpr());
  287   S->setBody(Record.readSubStmt());
  295   S->setInit(Record.readSubStmt());
  296   S->setCond(Record.readSubExpr());
  297   S->setConditionVariable(Record.getContext(), ReadDeclAs<VarDecl>());
  298   S->setInc(Record.readSubExpr());
  299   S->setBody(Record.readSubStmt());
  316   S->setTarget(Record.readSubExpr());
  332   bool HasNRVOCandidate = Record.readInt();
  334   S->setRetValue(Record.readSubExpr());
  346   if (Record.size() - Record.getIdx() == 1) {
  346   if (Record.size() - Record.getIdx() == 1) {
  351     int N = Record.size() - Record.getIdx();
  351     int N = Record.size() - Record.getIdx();
  355     S->setDeclGroup(DeclGroupRef(DeclGroup::Create(Record.getContext(),
  363   S->NumOutputs = Record.readInt();
  364   S->NumInputs = Record.readInt();
  365   S->NumClobbers = Record.readInt();
  367   S->setVolatile(Record.readInt());
  368   S->setSimple(Record.readInt());
  373   S->NumLabels = Record.readInt();
  375   S->setAsmString(cast_or_null<StringLiteral>(Record.readSubStmt()));
  387     Names.push_back(Record.getIdentifierInfo());
  388     Constraints.push_back(cast_or_null<StringLiteral>(Record.readSubStmt()));
  389     Exprs.push_back(Record.readSubStmt());
  395     Clobbers.push_back(cast_or_null<StringLiteral>(Record.readSubStmt()));
  399     Exprs.push_back(Record.readSubStmt());
  401   S->setOutputsAndInputsAndClobbers(Record.getContext(),
  412   S->NumAsmToks = Record.readInt();
  419     AsmToks.push_back(Record.readToken());
  444     Exprs.push_back(cast<Expr>(Record.readSubStmt()));
  449   S->initialize(Record.getContext(), AsmStr, AsmToks,
  455   assert(Record.peekInt() == S->NumParams);
  456   Record.skipInts(1);
  460     StoredStmts[i] = Record.readSubStmt();
  465   S->CoreturnLoc = Record.readSourceLocation();
  467     SubStmt = Record.readSubStmt();
  468   S->IsImplicit = Record.readInt() != 0;
  475     SubExpr = Record.readSubStmt();
  476   E->OpaqueValue = cast_or_null<OpaqueValueExpr>(Record.readSubStmt());
  477   E->setIsImplicit(Record.readInt() != 0);
  484     SubExpr = Record.readSubStmt();
  485   E->OpaqueValue = cast_or_null<OpaqueValueExpr>(Record.readSubStmt());
  492     SubExpr = Record.readSubStmt();
  497   Record.skipInts(1);
  499   S->setCapturedRegionKind(static_cast<CapturedRegionKind>(Record.readInt()));
  506     *I = Record.readSubExpr();
  509   S->setCapturedStmt(Record.readSubStmt());
  516         static_cast<CapturedStmt::VariableCaptureKind>(Record.readInt()));
  523   E->setType(Record.readType());
  524   E->setTypeDependent(Record.readInt());
  525   E->setValueDependent(Record.readInt());
  526   E->setInstantiationDependent(Record.readInt());
  527   E->ExprBits.ContainsUnexpandedParameterPack = Record.readInt();
  528   E->setValueKind(static_cast<ExprValueKind>(Record.readInt()));
  529   E->setObjectKind(static_cast<ExprObjectKind>(Record.readInt()));
  530   assert(Record.getIdx() == NumExprFields &&
  536   E->ConstantExprBits.ResultKind = Record.readInt();
  539     E->Int64Result() = Record.readInt();
  540     uint64_t tmp = Record.readInt();
  546     E->APValueResult() = Record.readAPValue();
  548   E->setSubExpr(Record.readSubExpr());
  553   bool HasFunctionName = Record.readInt();
  555   E->PredefinedExprBits.Kind = Record.readInt();
  558     E->setFunctionName(cast<StringLiteral>(Record.readSubExpr()));
  564   E->DeclRefExprBits.HasQualifier = Record.readInt();
  565   E->DeclRefExprBits.HasFoundDecl = Record.readInt();
  566   E->DeclRefExprBits.HasTemplateKWAndArgsInfo = Record.readInt();
  567   E->DeclRefExprBits.HadMultipleCandidates = Record.readInt();
  568   E->DeclRefExprBits.RefersToEnclosingVariableOrCapture = Record.readInt();
  569   E->DeclRefExprBits.NonOdrUseReason = Record.readInt();
  572     NumTemplateArgs = Record.readInt();
  576         NestedNameSpecifierLoc(Record.readNestedNameSpecifierLoc());
  594   E->setValue(Record.getContext(), Record.readAPInt());
  594   E->setValue(Record.getContext(), Record.readAPInt());
  600   E->setValue(Record.getContext(), Record.readAPInt());
  600   E->setValue(Record.getContext(), Record.readAPInt());
  606       static_cast<llvm::APFloatBase::Semantics>(Record.readInt()));
  607   E->setExact(Record.readInt());
  608   E->setValue(Record.getContext(), Record.readAPFloat(E->getSemantics()));
  608   E->setValue(Record.getContext(), Record.readAPFloat(E->getSemantics()));
  614   E->setSubExpr(Record.readSubExpr());
  622   unsigned NumConcatenated = Record.readInt();
  623   unsigned Length = Record.readInt();
  624   unsigned CharByteWidth = Record.readInt();
  629   E->StringLiteralBits.Kind = Record.readInt();
  630   E->StringLiteralBits.IsPascal = Record.readInt();
  636           StringLiteral::mapCharByteWidth(Record.getContext().getTargetInfo(),
  647     StrData[I] = Record.readInt();
  652   E->setValue(Record.readInt());
  654   E->setKind(static_cast<CharacterLiteral::CharacterKind>(Record.readInt()));
  661   E->setSubExpr(Record.readSubExpr());
  666   unsigned NumExprs = Record.readInt();
  669     E->getTrailingObjects<Stmt *>()[I] = Record.readSubStmt();
  676   E->setSubExpr(Record.readSubExpr());
  677   E->setOpcode((UnaryOperator::Opcode)Record.readInt());
  679   E->setCanOverflow(Record.readInt());
  684   assert(E->getNumComponents() == Record.peekInt());
  685   Record.skipInts(1);
  686   assert(E->getNumExpressions() == Record.peekInt());
  687   Record.skipInts(1);
  692     auto Kind = static_cast<OffsetOfNode::Kind>(Record.readInt());
  697       E->setComponent(I, OffsetOfNode(Start, Record.readInt(), End));
  708           OffsetOfNode(Start, Record.getIdentifierInfo(), End));
  712       auto *Base = new (Record.getContext()) CXXBaseSpecifier();
  713       *Base = Record.readCXXBaseSpecifier();
  721     E->setIndexExpr(I, Record.readSubExpr());
  726   E->setKind(static_cast<UnaryExprOrTypeTrait>(Record.readInt()));
  727   if (Record.peekInt() == 0) {
  728     E->setArgument(Record.readSubExpr());
  729     Record.skipInts(1);
  740   unsigned NumTemplateArgs = Record.readInt();
  741   E->NestedNameSpec = Record.readNestedNameSpecifierLoc();
  742   E->TemplateKWLoc = Record.readSourceLocation();
  743   E->ConceptNameLoc = Record.readSourceLocation();
  747       Record.readASTTemplateArgumentListInfo();
  750     Args.push_back(Record.readTemplateArgument());
  752   E->NamedConcept.setInt(Record.readInt() == 1);
  757   E->setLHS(Record.readSubExpr());
  758   E->setRHS(Record.readSubExpr());
  764   E->setBase(Record.readSubExpr());
  765   E->setLowerBound(Record.readSubExpr());
  766   E->setLength(Record.readSubExpr());
  773   unsigned NumArgs = Record.readInt();
  776   E->setCallee(Record.readSubExpr());
  778     E->setArg(I, Record.readSubExpr());
  779   E->setADLCallKind(static_cast<CallExpr::ADLCallKind>(Record.readInt()));
  789   bool HasQualifier = Record.readInt();
  790   bool HasFoundDecl = Record.readInt();
  791   bool HasTemplateInfo = Record.readInt();
  792   unsigned NumTemplateArgs = Record.readInt();
  794   E->Base = Record.readSubExpr();
  795   E->MemberDecl = Record.readDeclAs<ValueDecl>();
  796   Record.readDeclarationNameLoc(E->MemberDNLoc, E->MemberDecl->getDeclName());
  797   E->MemberLoc = Record.readSourceLocation();
  798   E->MemberExprBits.IsArrow = Record.readInt();
  801   E->MemberExprBits.HadMultipleCandidates = Record.readInt();
  802   E->MemberExprBits.NonOdrUseReason = Record.readInt();
  803   E->MemberExprBits.OperatorLoc = Record.readSourceLocation();
  808       auto *FoundD = Record.readDeclAs<NamedDecl>();
  809       auto AS = (AccessSpecifier)Record.readInt();
  819       QualifierLoc = Record.readNestedNameSpecifierLoc();
  832   E->setBase(Record.readSubExpr());
  835   E->setArrow(Record.readInt());
  841   E->Operand = Record.readSubExpr();
  842   E->setShouldCopy(Record.readInt());
  849   E->Kind = Record.readInt();
  854   unsigned NumBaseSpecs = Record.readInt();
  856   E->setSubExpr(Record.readSubExpr());
  857   E->setCastKind((CastKind)Record.readInt());
  860     auto *BaseSpec = new (Record.getContext()) CXXBaseSpecifier;
  861     *BaseSpec = Record.readCXXBaseSpecifier();
  868   E->setLHS(Record.readSubExpr());
  869   E->setRHS(Record.readSubExpr());
  870   E->setOpcode((BinaryOperator::Opcode)Record.readInt());
  872   E->setFPFeatures(FPOptions(Record.readInt()));
  877   E->setComputationLHSType(Record.readType());
  878   E->setComputationResultType(Record.readType());
  883   E->SubExprs[ConditionalOperator::COND] = Record.readSubExpr();
  884   E->SubExprs[ConditionalOperator::LHS] = Record.readSubExpr();
  885   E->SubExprs[ConditionalOperator::RHS] = Record.readSubExpr();
  893   E->OpaqueValue = cast<OpaqueValueExpr>(Record.readSubExpr());
  894   E->SubExprs[BinaryConditionalOperator::COMMON] = Record.readSubExpr();
  895   E->SubExprs[BinaryConditionalOperator::COND] = Record.readSubExpr();
  896   E->SubExprs[BinaryConditionalOperator::LHS] = Record.readSubExpr();
  897   E->SubExprs[BinaryConditionalOperator::RHS] = Record.readSubExpr();
  904   E->setIsPartOfExplicitCast(Record.readInt());
  922   E->setInitializer(Record.readSubExpr());
  923   E->setFileScope(Record.readInt());
  928   E->setBase(Record.readSubExpr());
  929   E->setAccessor(Record.getIdentifierInfo());
  935   if (auto *SyntForm = cast_or_null<InitListExpr>(Record.readSubStmt()))
  939   bool isArrayFiller = Record.readInt();
  942     filler = Record.readSubExpr();
  946   E->sawArrayRangeDesignator(Record.readInt());
  947   unsigned NumInits = Record.readInt();
  948   E->reserveInits(Record.getContext(), NumInits);
  951       Expr *init = Record.readSubExpr();
  952       E->updateInit(Record.getContext(), I, init ? init : filler);
  956       E->updateInit(Record.getContext(), I, Record.readSubExpr());
  956       E->updateInit(Record.getContext(), I, Record.readSubExpr());
  964   unsigned NumSubExprs = Record.readInt();
  967     E->setSubExpr(I, Record.readSubExpr());
  969   E->setGNUSyntax(Record.readInt());
  972   while (Record.getIdx() < Record.size()) {
  972   while (Record.getIdx() < Record.size()) {
  973     switch ((DesignatorTypes)Record.readInt()) {
  985       const IdentifierInfo *Name = Record.getIdentifierInfo();
  993       unsigned Index = Record.readInt();
 1001       unsigned Index = Record.readInt();
 1011   E->setDesignators(Record.getContext(),
 1017   E->setBase(Record.readSubExpr());
 1018   E->setUpdater(Record.readSubExpr());
 1027   E->SubExprs[0] = Record.readSubExpr();
 1028   E->SubExprs[1] = Record.readSubExpr();
 1041   E->setSubExpr(Record.readSubExpr());
 1045   E->setIsMicrosoftABI(Record.readInt());
 1054       static_cast<SourceLocExpr::IdentKind>(Record.readInt());
 1068   E->setSubStmt(cast_or_null<CompoundStmt>(Record.readSubStmt()));
 1073   E->setCond(Record.readSubExpr());
 1074   E->setLHS(Record.readSubExpr());
 1075   E->setRHS(Record.readSubExpr());
 1078   E->setIsConditionTrue(Record.readInt());
 1089   unsigned NumExprs = Record.readInt();
 1091     Exprs.push_back(Record.readSubExpr());
 1092   E->setExprs(Record.getContext(), Exprs);
 1102   E->SrcExpr = Record.readSubExpr();
 1113   unsigned NumAssocs = Record.readInt();
 1115   E->ResultIndex = Record.readInt();
 1125     Stmts[I] = Record.readSubExpr();
 1134   unsigned numSemanticExprs = Record.readInt();
 1136   E->PseudoObjectExprBits.ResultIndex = Record.readInt();
 1139   E->getSubExprsBuffer()[0] = Record.readSubExpr();
 1143     Expr *subExpr = Record.readSubExpr();
 1150   E->Op = AtomicExpr::AtomicOp(Record.readInt());
 1153     E->SubExprs[I] = Record.readSubExpr();
 1163   E->setString(cast<StringLiteral>(Record.readSubStmt()));
 1170   E->SubExpr = Record.readSubStmt();
 1177   unsigned NumElements = Record.readInt();
 1181     Elements[I] = Record.readSubExpr();
 1188   unsigned NumElements = Record.readInt();
 1190   bool HasPackExpansions = Record.readInt();
 1197     KeyValues[I].Key = Record.readSubExpr();
 1198     KeyValues[I].Value = Record.readSubExpr();
 1201       Expansions[I].NumExpansionsPlusOne = Record.readInt();
 1217   E->setSelector(Record.readSelector());
 1235   E->setBase(Record.readSubExpr());
 1236   E->setIsArrow(Record.readInt());
 1237   E->setIsFreeIvar(Record.readInt());
 1242   unsigned MethodRefFlags = Record.readInt();
 1243   bool Implicit = Record.readInt() != 0;
 1253   switch (Record.readInt()) {
 1255     E->setBase(Record.readSubExpr());
 1258     E->setSuperReceiver(Record.readType());
 1269   E->setBaseExpr(Record.readSubExpr());
 1270   E->setKeyExpr(Record.readSubExpr());
 1277   assert(Record.peekInt() == E->getNumArgs());
 1278   Record.skipInts(1);
 1279   unsigned NumStoredSelLocs = Record.readInt();
 1280   E->SelLocsKind = Record.readInt();
 1281   E->setDelegateInitCall(Record.readInt());
 1282   E->IsImplicit = Record.readInt();
 1283   auto Kind = static_cast<ObjCMessageExpr::ReceiverKind>(Record.readInt());
 1286     E->setInstanceReceiver(Record.readSubExpr());
 1295     QualType T = Record.readType();
 1304   if (Record.readInt())
 1307     E->setSelector(Record.readSelector());
 1313     E->setArg(I, Record.readSubExpr());
 1322   S->setElement(Record.readSubStmt());
 1323   S->setCollection(Record.readSubExpr());
 1324   S->setBody(Record.readSubStmt());
 1331   S->setCatchBody(Record.readSubStmt());
 1339   S->setFinallyBody(Record.readSubStmt());
 1345   S->setSubStmt(Record.readSubStmt());
 1351   assert(Record.peekInt() == S->getNumCatchStmts());
 1352   Record.skipInts(1);
 1353   bool HasFinally = Record.readInt();
 1354   S->setTryBody(Record.readSubStmt());
 1356     S->setCatchStmt(I, cast_or_null<ObjCAtCatchStmt>(Record.readSubStmt()));
 1359     S->setFinallyStmt(Record.readSubStmt());
 1365   S->setSynchExpr(Record.readSubStmt());
 1366   S->setSynchBody(Record.readSubStmt());
 1372   S->setThrowExpr(Record.readSubStmt());
 1378   E->setValue(Record.readInt());
 1384   SourceRange R = Record.readSourceRange();
 1387   E->VersionToCheck = Record.readVersionTuple();
 1398   S->HandlerBlock = Record.readSubStmt();
 1403   assert(Record.peekInt() == S->getNumHandlers() && "NumStmtFields is wrong ?");
 1404   Record.skipInts(1);
 1406   S->getStmts()[0] = Record.readSubStmt();
 1408     S->getStmts()[i + 1] = Record.readSubStmt();
 1417   S->setInit(Record.readSubStmt());
 1418   S->setRangeStmt(Record.readSubStmt());
 1419   S->setBeginStmt(Record.readSubStmt());
 1420   S->setEndStmt(Record.readSubStmt());
 1421   S->setCond(Record.readSubExpr());
 1422   S->setInc(Record.readSubExpr());
 1423   S->setLoopVarStmt(Record.readSubStmt());
 1424   S->setBody(Record.readSubStmt());
 1430   S->IsIfExists = Record.readInt();
 1431   S->QualifierLoc = Record.readNestedNameSpecifierLoc();
 1433   S->SubStmt = Record.readSubStmt();
 1438   E->CXXOperatorCallExprBits.OperatorKind = Record.readInt();
 1439   E->CXXOperatorCallExprBits.FPFeatures = Record.readInt();
 1440   E->Range = Record.readSourceRange();
 1446   E->CXXRewrittenBinaryOperatorBits.IsReversed = Record.readInt();
 1447   E->SemanticForm = Record.readSubExpr();
 1453   unsigned NumArgs = Record.readInt();
 1456   E->CXXConstructExprBits.Elidable = Record.readInt();
 1457   E->CXXConstructExprBits.HadMultipleCandidates = Record.readInt();
 1458   E->CXXConstructExprBits.ListInitialization = Record.readInt();
 1459   E->CXXConstructExprBits.StdInitListInitialization = Record.readInt();
 1460   E->CXXConstructExprBits.ZeroInitialization = Record.readInt();
 1461   E->CXXConstructExprBits.ConstructionKind = Record.readInt();
 1467     E->setArg(I, Record.readSubExpr());
 1474   E->ConstructsVirtualBase = Record.readInt();
 1475   E->InheritedFromVirtualBase = Record.readInt();
 1485   unsigned NumCaptures = Record.readInt();
 1488   E->CaptureDefault = static_cast<LambdaCaptureDefault>(Record.readInt());
 1490   E->ExplicitParams = Record.readInt();
 1491   E->ExplicitResultType = Record.readInt();
 1498     *C = Record.readSubExpr();
 1504   E->SubExpr = Record.readSubExpr();
 1551   E->setValue(Record.readInt());
 1570   E->setExprOperand(Record.readSubExpr());
 1576   E->setImplicit(Record.readInt());
 1582   E->Operand = Record.readSubExpr();
 1583   E->CXXThrowExprBits.IsThrownVariableInScope = Record.readInt();
 1602   E->setTemporary(Record.readCXXTemporary());
 1603   E->setSubExpr(Record.readSubExpr());
 1615   bool IsArray = Record.readInt();
 1616   bool HasInit = Record.readInt();
 1617   unsigned NumPlacementArgs = Record.readInt();
 1618   bool IsParenTypeId = Record.readInt();
 1620   E->CXXNewExprBits.IsGlobalNew = Record.readInt();
 1621   E->CXXNewExprBits.ShouldPassAlignment = Record.readInt();
 1622   E->CXXNewExprBits.UsualArrayDeleteWantsSize = Record.readInt();
 1623   E->CXXNewExprBits.StoredInitializationStyle = Record.readInt();
 1646     *I = Record.readSubStmt();
 1651   E->CXXDeleteExprBits.GlobalDelete = Record.readInt();
 1652   E->CXXDeleteExprBits.ArrayForm = Record.readInt();
 1653   E->CXXDeleteExprBits.ArrayFormAsWritten = Record.readInt();
 1654   E->CXXDeleteExprBits.UsualArrayDeleteWantsSize = Record.readInt();
 1656   E->Argument = Record.readSubExpr();
 1663   E->Base = Record.readSubExpr();
 1664   E->IsArrow = Record.readInt();
 1666   E->QualifierLoc = Record.readNestedNameSpecifierLoc();
 1671   IdentifierInfo *II = Record.getIdentifierInfo();
 1681   unsigned NumObjects = Record.readInt();
 1687   E->ExprWithCleanupsBits.CleanupsHaveSideEffects = Record.readInt();
 1688   E->SubExpr = Record.readSubExpr();
 1695   bool HasTemplateKWAndArgsInfo = Record.readInt();
 1696   unsigned NumTemplateArgs = Record.readInt();
 1697   bool HasFirstQualifierFoundInScope = Record.readInt();
 1713   E->CXXDependentScopeMemberExprBits.IsArrow = Record.readInt();
 1715   E->BaseType = Record.readType();
 1716   E->QualifierLoc = Record.readNestedNameSpecifierLoc();
 1717   E->Base = Record.readSubExpr();
 1729   if (Record.readInt()) // HasTemplateKWAndArgsInfo
 1733         /*NumTemplateArgs=*/Record.readInt());
 1735   E->QualifierLoc = Record.readNestedNameSpecifierLoc();
 1742   assert(Record.peekInt() == E->arg_size() &&
 1744   Record.skipInts(1);
 1746     E->setArg(I, Record.readSubExpr());
 1755   unsigned NumResults = Record.readInt();
 1756   bool HasTemplateKWAndArgsInfo = Record.readInt();
 1762     unsigned NumTemplateArgs = Record.readInt();
 1773     auto AS = (AccessSpecifier)Record.readInt();
 1784   E->QualifierLoc = Record.readNestedNameSpecifierLoc();
 1789   E->UnresolvedMemberExprBits.IsArrow = Record.readInt();
 1790   E->UnresolvedMemberExprBits.HasUnresolvedUsing = Record.readInt();
 1791   E->Base = Record.readSubExpr();
 1792   E->BaseType = Record.readType();
 1798   E->UnresolvedLookupExprBits.RequiresADL = Record.readInt();
 1799   E->UnresolvedLookupExprBits.Overloaded = Record.readInt();
 1805   E->TypeTraitExprBits.NumArgs = Record.readInt();
 1806   E->TypeTraitExprBits.Kind = Record.readInt();
 1807   E->TypeTraitExprBits.Value = Record.readInt();
 1819   E->ATT = (ArrayTypeTrait)Record.readInt();
 1820   E->Value = (unsigned int)Record.readInt();
 1825   E->Dimension = Record.readSubExpr();
 1830   E->ET = (ExpressionTrait)Record.readInt();
 1831   E->Value = (bool)Record.readInt();
 1833   E->QueriedExpression = Record.readSubExpr();
 1840   E->CXXNoexceptExprBits.Value = Record.readInt();
 1842   E->Operand = Record.readSubExpr();
 1848   E->NumExpansions = Record.readInt();
 1849   E->Pattern = Record.readSubExpr();
 1854   unsigned NumPartialArgs = Record.readInt();
 1858   E->Pack = Record.readDeclAs<NamedDecl>();
 1864       new (I) TemplateArgument(Record.readTemplateArgument());
 1866     E->Length = Record.readInt();
 1875   E->Replacement = Record.readSubExpr();
 1882   TemplateArgument ArgPack = Record.readTemplateArgument();
 1893   E->NumParameters = Record.readInt();
 1903   E->State = Record.readSubExpr();
 1905   unsigned ManglingNumber = Record.readInt();
 1914   E->NumExpansions = Record.readInt();
 1915   E->SubExprs[0] = Record.readSubExpr();
 1916   E->SubExprs[1] = Record.readSubExpr();
 1917   E->Opcode = (BinaryOperatorKind)Record.readInt();
 1922   E->SourceExpr = Record.readSubExpr();
 1924   E->setIsUnique(Record.readInt());
 1936   E->IsArrow = (Record.readInt() != 0);
 1937   E->BaseExpr = Record.readSubExpr();
 1938   E->QualifierLoc = Record.readNestedNameSpecifierLoc();
 1945   E->setBase(Record.readSubExpr());
 1946   E->setIdx(Record.readSubExpr());
 1954   E->setUuidStr(StringRef(UuidStr).copy(Record.getContext()));
 1962   E->setExprOperand(Record.readSubExpr());
 1973   S->Children[SEHExceptStmt::FILTER_EXPR] = Record.readSubStmt();
 1974   S->Children[SEHExceptStmt::BLOCK] = Record.readSubStmt();
 1980   S->Block = Record.readSubStmt();
 1985   S->IsCXXTry = Record.readInt();
 1987   S->Children[SEHTryStmt::TRY] = Record.readSubStmt();
 1988   S->Children[SEHTryStmt::HANDLER] = Record.readSubStmt();
 1997   E->setPreArg(CUDAKernelCallExpr::CONFIG, Record.readSubExpr());
 2007   E->SrcExpr = Record.readSubExpr();
 2017   OMPClauseReader ClauseReader(Record);
 2023     E->setAssociatedStmt(Record.readSubStmt());
 2029   Record.skipInts(2);
 2031   D->setIterationVariable(Record.readSubExpr());
 2032   D->setLastIteration(Record.readSubExpr());
 2033   D->setCalcLastIteration(Record.readSubExpr());
 2034   D->setPreCond(Record.readSubExpr());
 2035   D->setCond(Record.readSubExpr());
 2036   D->setInit(Record.readSubExpr());
 2037   D->setInc(Record.readSubExpr());
 2038   D->setPreInits(Record.readSubStmt());
 2042     D->setIsLastIterVariable(Record.readSubExpr());
 2043     D->setLowerBoundVariable(Record.readSubExpr());
 2044     D->setUpperBoundVariable(Record.readSubExpr());
 2045     D->setStrideVariable(Record.readSubExpr());
 2046     D->setEnsureUpperBound(Record.readSubExpr());
 2047     D->setNextLowerBound(Record.readSubExpr());
 2048     D->setNextUpperBound(Record.readSubExpr());
 2049     D->setNumIterations(Record.readSubExpr());
 2052     D->setPrevLowerBoundVariable(Record.readSubExpr());
 2053     D->setPrevUpperBoundVariable(Record.readSubExpr());
 2054     D->setDistInc(Record.readSubExpr());
 2055     D->setPrevEnsureUpperBound(Record.readSubExpr());
 2056     D->setCombinedLowerBoundVariable(Record.readSubExpr());
 2057     D->setCombinedUpperBoundVariable(Record.readSubExpr());
 2058     D->setCombinedEnsureUpperBound(Record.readSubExpr());
 2059     D->setCombinedInit(Record.readSubExpr());
 2060     D->setCombinedCond(Record.readSubExpr());
 2061     D->setCombinedNextLowerBound(Record.readSubExpr());
 2062     D->setCombinedNextUpperBound(Record.readSubExpr());
 2063     D->setCombinedDistCond(Record.readSubExpr());
 2064     D->setCombinedParForInDistCond(Record.readSubExpr());
 2070     Sub.push_back(Record.readSubExpr());
 2074     Sub.push_back(Record.readSubExpr());
 2078     Sub.push_back(Record.readSubExpr());
 2082     Sub.push_back(Record.readSubExpr());
 2086     Sub.push_back(Record.readSubExpr());
 2090     Sub.push_back(Record.readSubExpr());
 2094     Sub.push_back(Record.readSubExpr());
 2098     Sub.push_back(Record.readSubExpr());
 2105   Record.skipInts(1);
 2107   D->setHasCancel(Record.readInt());
 2116   D->setHasCancel(Record.readInt());
 2126   Record.skipInts(1);
 2128   D->setHasCancel(Record.readInt());
 2134   D->setHasCancel(Record.readInt());
 2140   Record.skipInts(1);
 2152   Record.skipInts(1);
 2159   D->setHasCancel(Record.readInt());
 2171   Record.skipInts(1);
 2173   D->setHasCancel(Record.readInt());
 2179   Record.skipInts(1);
 2181   D->setHasCancel(Record.readInt());
 2202   Record.skipInts(1);
 2204   D->setReductionRef(Record.readSubExpr());
 2210   Record.skipInts(1);
 2217   Record.skipInts(1);
 2224   Record.skipInts(1);
 2226   D->setX(Record.readSubExpr());
 2227   D->setV(Record.readSubExpr());
 2228   D->setExpr(Record.readSubExpr());
 2229   D->setUpdateExpr(Record.readSubExpr());
 2230   D->IsXLHSInRHSPart = Record.readInt() != 0;
 2231   D->IsPostfixUpdate = Record.readInt() != 0;
 2237   Record.skipInts(1);
 2243   Record.skipInts(1);
 2250   Record.skipInts(1);
 2257   Record.skipInts(1);
 2264   Record.skipInts(1);
 2271   D->setHasCancel(Record.readInt());
 2277   Record.skipInts(1);
 2285   D->setCancelRegion(static_cast<OpenMPDirectiveKind>(Record.readInt()));
 2291   Record.skipInts(1);
 2293   D->setCancelRegion(static_cast<OpenMPDirectiveKind>(Record.readInt()));
 2325   Record.skipInts(1);
 2332   D->setHasCancel(Record.readInt());
 2372   D->setHasCancel(Record.readInt());
 2378   Record.skipInts(1);
 2390   D->setHasCancel(Record.readInt());