Author: Kirill Bobyrev Date: 2021-10-26T17:17:10+02:00 New Revision: 03506722e0c348ce52d87f7f37f024d7adec5c43
URL: https://github.com/llvm/llvm-project/commit/03506722e0c348ce52d87f7f37f024d7adec5c43 DIFF: https://github.com/llvm/llvm-project/commit/03506722e0c348ce52d87f7f37f024d7adec5c43.diff LOG: [clang] Do not traverse EnumDecl's type in RecursiveASTVisitor This is inconsistent with the code and comments in RecursiveASTVisitor.h and is not a correct behavior: https://github.com/llvm/llvm-project/blob/main/clang/include/clang/AST/RecursiveASTVisitor.h#L1879-L1880 > We shouldn't traverse D->getTypeForDecl(); it's a result of > declaring the type, not something that was written in the source. Fixes the failures in 1c2e249f938c50e1b331a1f7adc83c0a381f3897 Added: Modified: clang/include/clang/AST/RecursiveASTVisitor.h Removed: ################################################################################ diff --git a/clang/include/clang/AST/RecursiveASTVisitor.h b/clang/include/clang/AST/RecursiveASTVisitor.h index dfc1bd35e51f..f200cd3920e6 100644 --- a/clang/include/clang/AST/RecursiveASTVisitor.h +++ b/clang/include/clang/AST/RecursiveASTVisitor.h @@ -1863,9 +1863,6 @@ DEF_TRAVERSE_DECL(UnresolvedUsingIfExistsDecl, {}) DEF_TRAVERSE_DECL(EnumDecl, { TRY_TO(TraverseDeclTemplateParameterLists(D)); - if (D->getTypeForDecl()) - TRY_TO(TraverseType(QualType(D->getTypeForDecl(), 0))); - TRY_TO(TraverseNestedNameSpecifierLoc(D->getQualifierLoc())); if (auto *TSI = D->getIntegerTypeSourceInfo()) TRY_TO(TraverseTypeLoc(TSI->getTypeLoc())); _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits