reference, declaration → definition definition → references, declarations, derived classes, virtual overrides reference to multiple definitions → definitions unreferenced |
146 while (!BaseType->isSpecifierType()) { 147 if (const PointerType *PTy = BaseType->getAs<PointerType>()) 148 BaseType = PTy->getPointeeType(); 149 else if (const BlockPointerType *BPy = BaseType->getAs<BlockPointerType>()) 150 BaseType = BPy->getPointeeType(); 151 else if (const ArrayType* ATy = dyn_cast<ArrayType>(BaseType)) 152 BaseType = ATy->getElementType(); 153 else if (const FunctionType* FTy = BaseType->getAs<FunctionType>()) 154 BaseType = FTy->getReturnType(); 155 else if (const VectorType *VTy = BaseType->getAs<VectorType>()) 156 BaseType = VTy->getElementType(); 157 else if (const ReferenceType *RTy = BaseType->getAs<ReferenceType>()) 158 BaseType = RTy->getPointeeType(); 159 else if (const AutoType *ATy = BaseType->getAs<AutoType>()) 160 BaseType = ATy->getDeducedType(); 161 else if (const ParenType *PTy = BaseType->getAs<ParenType>()) 162 BaseType = PTy->desugar(); 167 return BaseType;