r229485 - clang-format: Fix crasher.
Daniel Jasper
djasper at google.com
Tue Feb 17 01:58:03 PST 2015
Author: djasper
Date: Tue Feb 17 03:58:03 2015
New Revision: 229485
URL: http://llvm.org/viewvc/llvm-project?rev=229485&view=rev
Log:
clang-format: Fix crasher.
Modified:
cfe/trunk/lib/Format/ContinuationIndenter.cpp
cfe/trunk/unittests/Format/FormatTest.cpp
Modified: cfe/trunk/lib/Format/ContinuationIndenter.cpp
URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/Format/ContinuationIndenter.cpp?rev=229485&r1=229484&r2=229485&view=diff
==============================================================================
--- cfe/trunk/lib/Format/ContinuationIndenter.cpp (original)
+++ cfe/trunk/lib/Format/ContinuationIndenter.cpp Tue Feb 17 03:58:03 2015
@@ -365,7 +365,7 @@ void ContinuationIndenter::addTokenOnCur
const FormatToken *Next = Previous.MatchingParen->getNextNonComment();
HasTrailingCall = Next && Next->isMemberAccess();
}
- if (HasTrailingCall &&
+ if (HasTrailingCall && State.Stack.size() > 1 &&
State.Stack[State.Stack.size() - 2].CallContinuation == 0)
State.Stack.back().LastSpace = State.Column;
}
Modified: cfe/trunk/unittests/Format/FormatTest.cpp
URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/unittests/Format/FormatTest.cpp?rev=229485&r1=229484&r2=229485&view=diff
==============================================================================
--- cfe/trunk/unittests/Format/FormatTest.cpp (original)
+++ cfe/trunk/unittests/Format/FormatTest.cpp Tue Feb 17 03:58:03 2015
@@ -5818,6 +5818,7 @@ TEST_F(FormatTest, IncorrectAccessSpecif
TEST_F(FormatTest, IncorrectCodeUnbalancedBraces) {
verifyFormat("{");
verifyFormat("#})");
+ verifyNoCrash("(/**/[:!] ?[).");
}
TEST_F(FormatTest, IncorrectCodeDoNoWhile) {
More information about the cfe-commits
mailing list