Skip to content
Merged
Show file tree
Hide file tree
Changes from 1 commit
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion clang/lib/Format/TokenAnnotator.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -1423,7 +1423,7 @@ class AnnotatingParser {
Tok->setType(TT_BitFieldColon);
} else if (Contexts.size() == 1 &&
!Line.First->isOneOf(tok::kw_enum, tok::kw_case,
tok::kw_default)) {
tok::kw_default, tok::kw_typedef)) {
FormatToken *Prev = Tok->getPreviousNonComment();
if (!Prev)
break;
Expand Down
12 changes: 9 additions & 3 deletions clang/unittests/Format/TokenAnnotatorTest.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -3666,7 +3666,7 @@ TEST_F(TokenAnnotatorTest, BraceKind) {
getGoogleStyle(FormatStyle::LK_JavaScript));
ASSERT_EQ(Tokens.size(), 12u) << Tokens;
EXPECT_TOKEN(Tokens[3], tok::identifier, TT_ClassHeadName);
EXPECT_TOKEN(Tokens[4], tok::identifier, TT_Unknown); // Not TT_StartOfName
EXPECT_TOKEN(Tokens[4], tok::identifier, TT_Unknown); // Not TT_StartOfName.
EXPECT_TOKEN(Tokens[8], tok::l_brace, TT_ClassLBrace);
EXPECT_BRACE_KIND(Tokens[8], BK_Block);
EXPECT_TOKEN(Tokens[9], tok::r_brace, TT_ClassRBrace);
Expand Down Expand Up @@ -3833,7 +3833,7 @@ TEST_F(TokenAnnotatorTest, CppOnlyKeywordInC) {
ASSERT_EQ(Tokens.size(), 8u) << Tokens;
EXPECT_TOKEN(Tokens[3], tok::identifier, TT_Unknown); // Not tok::kw_new
EXPECT_TOKEN(Tokens[4], tok::amp, TT_BinaryOperator);
EXPECT_TOKEN(Tokens[3], tok::identifier, TT_Unknown); // Not TT_StartOfName
EXPECT_TOKEN(Tokens[3], tok::identifier, TT_Unknown); // Not TT_StartOfName.
}

TEST_F(TokenAnnotatorTest, FunctionTryBlock) {
Expand Down Expand Up @@ -3947,7 +3947,7 @@ TEST_F(TokenAnnotatorTest, VariableTemplate) {
EXPECT_TOKEN(Tokens[4], tok::identifier, TT_VariableTemplate);
EXPECT_TOKEN(Tokens[5], tok::less, TT_TemplateOpener);
EXPECT_TOKEN(Tokens[7], tok::greater, TT_TemplateCloser);
EXPECT_TOKEN(Tokens[8], tok::r_paren, TT_Unknown); // Not TT_CastRParen
EXPECT_TOKEN(Tokens[8], tok::r_paren, TT_Unknown); // Not TT_CastRParen.
EXPECT_TOKEN(Tokens[9], tok::plus, TT_BinaryOperator);
}

Expand Down Expand Up @@ -4033,6 +4033,12 @@ TEST_F(TokenAnnotatorTest, UserDefinedLiteral) {
EXPECT_EQ(Tokens[3]->TokenText, "2_$");
}

TEST_F(TokenAnnotatorTest, EnumColonInTypedef) {
auto Tokens = annotate("typedef enum : int {} foo;");
ASSERT_EQ(Tokens.size(), 9u) << Tokens;
EXPECT_TOKEN(Tokens[2], tok::colon, TT_Unknown); // Not TT_InheritanceColon.
}

} // namespace
} // namespace format
} // namespace clang
Loading