forked from OSchip/llvm-project
parent
4e15d97ae4
commit
781c5c879c
|
@ -1779,9 +1779,17 @@ void ASTContext::getObjCEncodingForTypeImpl(QualType T, std::string& S,
|
|||
}
|
||||
else if (const PointerType *PT = T->getAsPointerType()) {
|
||||
QualType PointeeTy = PT->getPointeeType();
|
||||
if (isObjCIdType(PointeeTy) || PointeeTy->isObjCInterfaceType()) {
|
||||
if (isObjCIdType(PointeeTy)) {
|
||||
S += '@';
|
||||
return;
|
||||
}
|
||||
else if (PointeeTy->isObjCInterfaceType()) {
|
||||
S += '@';
|
||||
ObjCInterfaceDecl *OI = PointeeTy->getAsObjCInterfaceType()->getDecl();
|
||||
S += '"';
|
||||
S += OI->getNameAsCString();
|
||||
S += '"';
|
||||
return;
|
||||
} else if (isObjCClassType(PointeeTy)) {
|
||||
S += '#';
|
||||
return;
|
||||
|
@ -1802,7 +1810,7 @@ void ASTContext::getObjCEncodingForTypeImpl(QualType T, std::string& S,
|
|||
S += '^';
|
||||
getObjCEncodingForTypeImpl(PT->getPointeeType(), S,
|
||||
false, ExpandPointedToStructures,
|
||||
NameFields);
|
||||
false);
|
||||
} else if (const ArrayType *AT =
|
||||
// Ignore type qualifiers etc.
|
||||
dyn_cast<ArrayType>(T->getCanonicalTypeInternal())) {
|
||||
|
|
Loading…
Reference in New Issue