This revision was automatically updated to reflect the committed changes. Closed by commit rL263426: [clang-tidy] Fix "Name is not a simple identifier" assertion in `modernize… (authored by hokein).
Changed prior to commit: http://reviews.llvm.org/D18141?vs=50580&id=50582#toc Repository: rL LLVM http://reviews.llvm.org/D18141 Files: clang-tools-extra/trunk/clang-tidy/modernize/LoopConvertUtils.cpp clang-tools-extra/trunk/test/clang-tidy/modernize-loop-convert-basic.cpp Index: clang-tools-extra/trunk/clang-tidy/modernize/LoopConvertUtils.cpp =================================================================== --- clang-tools-extra/trunk/clang-tidy/modernize/LoopConvertUtils.cpp +++ clang-tools-extra/trunk/clang-tidy/modernize/LoopConvertUtils.cpp @@ -391,8 +391,8 @@ // This check is needed because getMethodDecl can return nullptr if the // callee is a member function pointer. const auto *MDecl = MemCall->getMethodDecl(); - if (MDecl && !isa<CXXConversionDecl>(MDecl) && MDecl->getName() == "at" && - MemCall->getNumArgs() == 1) { + if (MDecl && !isa<CXXConversionDecl>(MDecl) && + MDecl->getNameAsString() == "at" && MemCall->getNumArgs() == 1) { return isIndexInSubscriptExpr(MemCall->getArg(0), IndexVar); } return false; Index: clang-tools-extra/trunk/test/clang-tidy/modernize-loop-convert-basic.cpp =================================================================== --- clang-tools-extra/trunk/test/clang-tidy/modernize-loop-convert-basic.cpp +++ clang-tools-extra/trunk/test/clang-tidy/modernize-loop-convert-basic.cpp @@ -320,6 +320,10 @@ // CHECK-FIXES: for (auto & It : Uu) // CHECK-FIXES-NEXT: printf("s has value %d\n", It.X); + for (U::iterator It = Uu.begin(), E = Uu.end(); It != E; ++It) { + Val* a = It.operator->(); + } + U::iterator A; for (U::iterator I = Uu.begin(), E = Uu.end(); I != E; ++I) int K = A->X + I->X;
Index: clang-tools-extra/trunk/clang-tidy/modernize/LoopConvertUtils.cpp =================================================================== --- clang-tools-extra/trunk/clang-tidy/modernize/LoopConvertUtils.cpp +++ clang-tools-extra/trunk/clang-tidy/modernize/LoopConvertUtils.cpp @@ -391,8 +391,8 @@ // This check is needed because getMethodDecl can return nullptr if the // callee is a member function pointer. const auto *MDecl = MemCall->getMethodDecl(); - if (MDecl && !isa<CXXConversionDecl>(MDecl) && MDecl->getName() == "at" && - MemCall->getNumArgs() == 1) { + if (MDecl && !isa<CXXConversionDecl>(MDecl) && + MDecl->getNameAsString() == "at" && MemCall->getNumArgs() == 1) { return isIndexInSubscriptExpr(MemCall->getArg(0), IndexVar); } return false; Index: clang-tools-extra/trunk/test/clang-tidy/modernize-loop-convert-basic.cpp =================================================================== --- clang-tools-extra/trunk/test/clang-tidy/modernize-loop-convert-basic.cpp +++ clang-tools-extra/trunk/test/clang-tidy/modernize-loop-convert-basic.cpp @@ -320,6 +320,10 @@ // CHECK-FIXES: for (auto & It : Uu) // CHECK-FIXES-NEXT: printf("s has value %d\n", It.X); + for (U::iterator It = Uu.begin(), E = Uu.end(); It != E; ++It) { + Val* a = It.operator->(); + } + U::iterator A; for (U::iterator I = Uu.begin(), E = Uu.end(); I != E; ++I) int K = A->X + I->X;
_______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits