diff options
| author | Martin Probst <martin@probst.io> | 2016-06-23 21:51:49 +0000 |
|---|---|---|
| committer | Martin Probst <martin@probst.io> | 2016-06-23 21:51:49 +0000 |
| commit | 31d6da7c0ca24fd247078c32c16e0e95b99e20d6 (patch) | |
| tree | 780fdc1608f3e4980d9e388abe49804a0180e4e7 /clang/lib | |
| parent | 4d624ae0cbed5e27c7bbb717bc6a24160f426b22 (diff) | |
| download | bcm5719-llvm-31d6da7c0ca24fd247078c32c16e0e95b99e20d6.tar.gz bcm5719-llvm-31d6da7c0ca24fd247078c32c16e0e95b99e20d6.zip | |
clang-format: [JS] handle conditionals in fields, default params.
Summary:
Reviewers: djasper
Subscribers: klimek, cfe-commits
Differential Revision: http://reviews.llvm.org/D21658
llvm-svn: 273619
Diffstat (limited to 'clang/lib')
| -rw-r--r-- | clang/lib/Format/TokenAnnotator.cpp | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/clang/lib/Format/TokenAnnotator.cpp b/clang/lib/Format/TokenAnnotator.cpp index 5302f13340f..4a90522e6e3 100644 --- a/clang/lib/Format/TokenAnnotator.cpp +++ b/clang/lib/Format/TokenAnnotator.cpp @@ -639,7 +639,7 @@ private: } // Declarations cannot be conditional expressions, this can only be part // of a type declaration. - if (Line.MustBeDeclaration && + if (Line.MustBeDeclaration && !Contexts.back().IsExpression && Style.Language == FormatStyle::LK_JavaScript) break; parseConditional(); @@ -1009,7 +1009,7 @@ private: Current.Type = TT_UnaryOperator; } else if (Current.is(tok::question)) { if (Style.Language == FormatStyle::LK_JavaScript && - Line.MustBeDeclaration) { + Line.MustBeDeclaration && !Contexts.back().IsExpression) { // In JavaScript, `interface X { foo?(): bar; }` is an optional method // on the interface, not a ternary expression. Current.Type = TT_JsTypeOptionalQuestion; |

