This fixes llvm.org/PR21677.
llvm-svn: 222843
kw_implements = &IdentTable.get("implements");
kw_instanceof = &IdentTable.get("instanceof");
kw_interface = &IdentTable.get("interface");
+ kw_package = &IdentTable.get("package");
kw_synchronized = &IdentTable.get("synchronized");
kw_throws = &IdentTable.get("throws");
IdentifierInfo *kw_implements;
IdentifierInfo *kw_instanceof;
IdentifierInfo *kw_interface;
+ IdentifierInfo *kw_package;
IdentifierInfo *kw_synchronized;
IdentifierInfo *kw_throws;
// definitions (code.google.com/p/protobuf) or missing "#" (either way we
// should not break the line).
IdentifierInfo *Info = CurrentToken->Tok.getIdentifierInfo();
- if (Info && Info->getPPKeywordID() == tok::pp_import &&
- CurrentToken->Next) {
+ if ((Style.Language == FormatStyle::LK_Java &&
+ CurrentToken->is(Keywords.kw_package)) ||
+ (Info && Info->getPPKeywordID() == tok::pp_import &&
+ CurrentToken->Next)) {
next();
parseIncludeDirective();
return LT_ImportStatement;
"}");
}
+TEST_F(FormatTestJava, PackageDeclarations) {
+ verifyFormat("package some.really.loooooooooooooooooooooong.package;",
+ getStyleWithColumns(50));
+}
+
TEST_F(FormatTestJava, ImportDeclarations) {
verifyFormat("import some.really.loooooooooooooooooooooong.imported.Class;",
getStyleWithColumns(50));