Author: djasper Date: Fri May 20 01:16:01 2016 New Revision: 270188 URL: http://llvm.org/viewvc/llvm-project?rev=270188&view=rev Log: clang-format: [JS] Treat "for" as a reserved word after a ".".
Otherwise, clang-format can get confused with statements like: x.for = 1; Modified: cfe/trunk/lib/Format/TokenAnnotator.cpp cfe/trunk/unittests/Format/FormatTestJS.cpp Modified: cfe/trunk/lib/Format/TokenAnnotator.cpp URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/Format/TokenAnnotator.cpp?rev=270188&r1=270187&r2=270188&view=diff ============================================================================== --- cfe/trunk/lib/Format/TokenAnnotator.cpp (original) +++ cfe/trunk/lib/Format/TokenAnnotator.cpp Fri May 20 01:16:01 2016 @@ -538,6 +538,9 @@ private: } break; case tok::kw_for: + if (Style.Language == FormatStyle::LK_JavaScript && Tok->Previous && + Tok->Previous->is(tok::period)) + break; Contexts.back().ColonIsForRangeExpr = true; next(); if (!parseParens()) Modified: cfe/trunk/unittests/Format/FormatTestJS.cpp URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/unittests/Format/FormatTestJS.cpp?rev=270188&r1=270187&r2=270188&view=diff ============================================================================== --- cfe/trunk/unittests/Format/FormatTestJS.cpp (original) +++ cfe/trunk/unittests/Format/FormatTestJS.cpp Fri May 20 01:16:01 2016 @@ -125,6 +125,7 @@ TEST_F(FormatTestJS, ReservedWords) { verifyFormat("x.class.struct = 1;"); verifyFormat("x.case = 1;"); verifyFormat("x.interface = 1;"); + verifyFormat("x.for = 1;"); verifyFormat("x.of() = 1;"); verifyFormat("x.in() = 1;"); verifyFormat("x.let() = 1;"); _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits