reference, declaration → definition definition → references, declarations, derived classes, virtual overrides reference to multiple definitions → definitions unreferenced |
203 assert(CXXInfo && "Record layout does not have C++ specific info!"); 205 return CXXInfo->NonVirtualSize; 211 assert(CXXInfo && "Record layout does not have C++ specific info!"); 213 return CXXInfo->NonVirtualAlignment; 218 assert(CXXInfo && "Record layout does not have C++ specific info!"); 220 return CXXInfo->PrimaryBase.getPointer(); 226 assert(CXXInfo && "Record layout does not have C++ specific info!"); 228 return CXXInfo->PrimaryBase.getInt(); 233 assert(CXXInfo && "Record layout does not have C++ specific info!"); 234 assert(CXXInfo->BaseOffsets.count(Base) && "Did not find base!"); 236 return CXXInfo->BaseOffsets[Base]; 241 assert(CXXInfo && "Record layout does not have C++ specific info!"); 242 assert(CXXInfo->VBaseOffsets.count(VBase) && "Did not find base!"); 244 return CXXInfo->VBaseOffsets[VBase].VBaseOffset; 248 assert(CXXInfo && "Record layout does not have C++ specific info!"); 249 return CXXInfo->SizeOfLargestEmptySubobject; 260 assert(CXXInfo && "Record layout does not have C++ specific info!"); 261 return CXXInfo->HasOwnVFPtr; 268 assert(CXXInfo && "Record layout does not have C++ specific info!"); 269 return CXXInfo->HasExtendableVFPtr; 280 assert(CXXInfo && "Record layout does not have C++ specific info!"); 281 return hasVBPtr() && !CXXInfo->BaseSharingVBPtr; 286 assert(CXXInfo && "Record layout does not have C++ specific info!"); 287 return !CXXInfo->VBPtrOffset.isNegative(); 295 return CXXInfo && CXXInfo->EndsWithZeroSizedObject; 295 return CXXInfo && CXXInfo->EndsWithZeroSizedObject; 299 assert(CXXInfo && "Record layout does not have C++ specific info!"); 300 return CXXInfo->LeadsWithZeroSizedBase; 306 assert(CXXInfo && "Record layout does not have C++ specific info!"); 307 return CXXInfo->VBPtrOffset; 311 assert(CXXInfo && "Record layout does not have C++ specific info!"); 312 return CXXInfo->BaseSharingVBPtr; 316 assert(CXXInfo && "Record layout does not have C++ specific info!"); 317 return CXXInfo->VBaseOffsets;tools/clang/lib/AST/RecordLayout.cpp
22 if (CXXInfo) { 23 CXXInfo->~CXXRecordLayoutInfo(); 24 Ctx.Deallocate(CXXInfo); 67 CXXInfo->PrimaryBase.setPointer(PrimaryBase); 68 CXXInfo->PrimaryBase.setInt(IsPrimaryBaseVirtual); 69 CXXInfo->NonVirtualSize = nonvirtualsize; 70 CXXInfo->NonVirtualAlignment = nonvirtualalignment; 71 CXXInfo->SizeOfLargestEmptySubobject = SizeOfLargestEmptySubobject; 72 CXXInfo->BaseOffsets = BaseOffsets; 73 CXXInfo->VBaseOffsets = VBaseOffsets; 74 CXXInfo->HasOwnVFPtr = hasOwnVFPtr; 75 CXXInfo->VBPtrOffset = vbptroffset; 76 CXXInfo->HasExtendableVFPtr = hasExtendableVFPtr; 77 CXXInfo->BaseSharingVBPtr = BaseSharingVBPtr; 78 CXXInfo->EndsWithZeroSizedObject = EndsWithZeroSizedObject; 79 CXXInfo->LeadsWithZeroSizedBase = LeadsWithZeroSizedBase;