From: Daniel Jasper Date: Mon, 17 Nov 2014 18:42:22 +0000 (+0000) Subject: clang-format: Fix more incorrect pointer detection. X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=e1e348b857128d824973314943cee02acfe20f9f;p=platform%2Fupstream%2Fllvm.git clang-format: Fix more incorrect pointer detection. Before: Constructor() : a(a), b(c, d *e) {} After: Constructor() : a(a), b(c, d * e) {} llvm-svn: 222158 --- diff --git a/clang/lib/Format/TokenAnnotator.cpp b/clang/lib/Format/TokenAnnotator.cpp index 864f60d..dfd880a 100644 --- a/clang/lib/Format/TokenAnnotator.cpp +++ b/clang/lib/Format/TokenAnnotator.cpp @@ -764,7 +764,7 @@ private: Previous = Previous->Previous) Previous->Type = TT_PointerOrReference; if (Line.MustBeDeclaration) - Contexts.back().IsExpression = Contexts.back().InCtorInitializer; + Contexts.back().IsExpression = Contexts.front().InCtorInitializer; } else if (Current.Previous && Current.Previous->Type == TT_CtorInitializerColon) { Contexts.back().IsExpression = true; diff --git a/clang/unittests/Format/FormatTest.cpp b/clang/unittests/Format/FormatTest.cpp index 1fd95f0..cada2bf 100644 --- a/clang/unittests/Format/FormatTest.cpp +++ b/clang/unittests/Format/FormatTest.cpp @@ -5009,6 +5009,7 @@ TEST_F(FormatTest, UnderstandsUsesOfStarAndAmp) { verifyIndependentOfContext("aaa && aaa->f();"); verifyIndependentOfContext("int x = ~*p;"); verifyFormat("Constructor() : a(a), area(width * height) {}"); + verifyFormat("Constructor() : a(a), area(a, width * height) {}"); verifyFormat("void f() { f(a, c * d); }"); verifyIndependentOfContext("InvalidRegions[*R] = 0;");