Author: Owen Pan Date: 2024-12-18T19:41:50-08:00 New Revision: fe2685303b215182b1acc5b6fb8be30c24bd6e8e
URL: https://github.com/llvm/llvm-project/commit/fe2685303b215182b1acc5b6fb8be30c24bd6e8e DIFF: https://github.com/llvm/llvm-project/commit/fe2685303b215182b1acc5b6fb8be30c24bd6e8e.diff LOG: [clang-format] Fix a crash caused by commit f03bf8c45f43 Added: Modified: clang/lib/Format/TokenAnnotator.cpp clang/unittests/Format/FormatTest.cpp Removed: ################################################################################ diff --git a/clang/lib/Format/TokenAnnotator.cpp b/clang/lib/Format/TokenAnnotator.cpp index 6a8caa23753f3e..f2cfa7f49f62f9 100644 --- a/clang/lib/Format/TokenAnnotator.cpp +++ b/clang/lib/Format/TokenAnnotator.cpp @@ -493,7 +493,7 @@ class AnnotatingParser { (CurrentToken->Next->is(tok::l_paren) || (CurrentToken->Next->is(tok::l_square) && (Line.MustBeDeclaration || - PrevNonComment->isTypeName(LangOpts))))) { + (PrevNonComment && PrevNonComment->isTypeName(LangOpts)))))) { OpeningParen.setType(OpeningParen.Next->is(tok::caret) ? TT_ObjCBlockLParen : TT_FunctionTypeLParen); diff --git a/clang/unittests/Format/FormatTest.cpp b/clang/unittests/Format/FormatTest.cpp index e892f10433c550..47465a18e9a41e 100644 --- a/clang/unittests/Format/FormatTest.cpp +++ b/clang/unittests/Format/FormatTest.cpp @@ -13691,6 +13691,10 @@ TEST_F(FormatTest, FormatsArrays) { " .aaaaaaaaaaaaaaaaaaaaaa();"); verifyFormat("a[::b::c];"); + verifyFormat("{\n" + " (*a)[0] = 1;\n" + "}"); + verifyNoCrash("a[,Y?)]", getLLVMStyleWithColumns(10)); FormatStyle NoColumnLimit = getLLVMStyleWithColumns(0); _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits