summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorNico Weber <nicolasweber@gmx.de>2015-09-15 23:48:17 +0000
committerNico Weber <nicolasweber@gmx.de>2015-09-15 23:48:17 +0000
commit4f11349028c331799498cd7aaa70585b33fc031c (patch)
tree1eaf39636f80be82d4f8f638ec18ffdeb770b471
parent8a5526e8bedab4508d1ed291fd561cf693a8295a (diff)
downloadbcm5719-llvm-4f11349028c331799498cd7aaa70585b33fc031c.tar.gz
bcm5719-llvm-4f11349028c331799498cd7aaa70585b33fc031c.zip
clang-format: In Java, `assert` is followed by an expression.
Before: assert a&& b; Now: assert a && b; llvm-svn: 247750
-rw-r--r--clang/lib/Format/FormatToken.h2
-rw-r--r--clang/lib/Format/TokenAnnotator.cpp2
-rw-r--r--clang/unittests/Format/FormatTestJava.cpp5
3 files changed, 8 insertions, 1 deletions
diff --git a/clang/lib/Format/FormatToken.h b/clang/lib/Format/FormatToken.h
index f50558c6ecf..8586337c86c 100644
--- a/clang/lib/Format/FormatToken.h
+++ b/clang/lib/Format/FormatToken.h
@@ -539,6 +539,7 @@ struct AdditionalKeywords {
kw_var = &IdentTable.get("var");
kw_abstract = &IdentTable.get("abstract");
+ kw_assert = &IdentTable.get("assert");
kw_extends = &IdentTable.get("extends");
kw_implements = &IdentTable.get("implements");
kw_instanceof = &IdentTable.get("instanceof");
@@ -580,6 +581,7 @@ struct AdditionalKeywords {
// Java keywords.
IdentifierInfo *kw_abstract;
+ IdentifierInfo *kw_assert;
IdentifierInfo *kw_extends;
IdentifierInfo *kw_implements;
IdentifierInfo *kw_instanceof;
diff --git a/clang/lib/Format/TokenAnnotator.cpp b/clang/lib/Format/TokenAnnotator.cpp
index 5dad651bd96..53027c79b36 100644
--- a/clang/lib/Format/TokenAnnotator.cpp
+++ b/clang/lib/Format/TokenAnnotator.cpp
@@ -860,7 +860,7 @@ private:
Contexts.back().IsExpression = true;
} else if (Current.is(TT_TrailingReturnArrow)) {
Contexts.back().IsExpression = false;
- } else if (Current.is(TT_LambdaArrow)) {
+ } else if (Current.is(TT_LambdaArrow) || Current.is(Keywords.kw_assert)) {
Contexts.back().IsExpression = Style.Language == FormatStyle::LK_Java;
} else if (Current.is(tok::l_paren) && !Line.MustBeDeclaration &&
!Line.InPPDirective &&
diff --git a/clang/unittests/Format/FormatTestJava.cpp b/clang/unittests/Format/FormatTestJava.cpp
index 8e590879f6e..e74e797d504 100644
--- a/clang/unittests/Format/FormatTestJava.cpp
+++ b/clang/unittests/Format/FormatTestJava.cpp
@@ -393,6 +393,11 @@ TEST_F(FormatTestJava, SynchronizedKeyword) {
"}");
}
+TEST_F(FormatTestJava, AssertKeyword) {
+ verifyFormat("assert a && b;");
+}
+
+
TEST_F(FormatTestJava, PackageDeclarations) {
verifyFormat("package some.really.loooooooooooooooooooooong.package;",
getStyleWithColumns(50));
OpenPOWER on IntegriCloud