diff options
-rw-r--r-- | lib/Analysis/CFRefCount.cpp | 9 |
1 files changed, 3 insertions, 6 deletions
diff --git a/lib/Analysis/CFRefCount.cpp b/lib/Analysis/CFRefCount.cpp index 25466cbf62..80c6bf9532 100644 --- a/lib/Analysis/CFRefCount.cpp +++ b/lib/Analysis/CFRefCount.cpp @@ -741,6 +741,9 @@ RetainSummary* RetainSummaryManager::getSummary(FunctionDecl* FD) { break; } } + + // Ignore the prefix '_' + while (*FName == '_') ++FName; if (FName[0] == 'C') { if (FName[1] == 'F') @@ -780,9 +783,6 @@ static bool isRelease(FunctionDecl* FD, const char* FName) { RetainSummary* RetainSummaryManager::getCFSummary(FunctionDecl* FD, const char* FName) { - if (FName[0] == 'C' && FName[1] == 'F') - FName += 2; - if (isRetain(FD, FName)) return getUnarySummary(FD, cfretain); @@ -798,9 +798,6 @@ RetainSummary* RetainSummaryManager::getCFSummary(FunctionDecl* FD, RetainSummary* RetainSummaryManager::getCGSummary(FunctionDecl* FD, const char* FName) { - if (FName[0] == 'C' && FName[1] == 'G') - FName += 2; - if (isRelease(FD, FName)) return getUnarySummary(FD, cfrelease); |