From 3bfc35e26a814196dd774abacf9fce80a5abf3ff Mon Sep 17 00:00:00 2001 From: Fariborz Jahanian Date: Fri, 2 Aug 2013 22:34:18 +0000 Subject: [PATCH] ObjectiveC migrator. Differentiate 'instancetype' from 'id' result type when deciding on migration to instancetype. llvm-svn: 187684 --- clang/lib/ARCMigrate/ObjCMT.cpp | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/clang/lib/ARCMigrate/ObjCMT.cpp b/clang/lib/ARCMigrate/ObjCMT.cpp index 706a4ec..c8fc312 100644 --- a/clang/lib/ARCMigrate/ObjCMT.cpp +++ b/clang/lib/ARCMigrate/ObjCMT.cpp @@ -628,7 +628,9 @@ void ObjCMigrateASTConsumer::migrateFactoryMethod(ASTContext &Ctx, ObjCContainerDecl *CDecl, ObjCMethodDecl *OM, ObjCInstanceTypeFamily OIT_Family) { - if (OM->isInstanceMethod() || !OM->getResultType()->isObjCIdType()) + if (OM->isInstanceMethod() || + OM->getResultType() == Ctx.getObjCInstanceType() || + !OM->getResultType()->isObjCIdType()) return; // Candidate factory methods are + (id) NaMeXXX : ... which belong to a class -- 2.7.4