@@ -3278,6 +3278,26 @@ TEST_F(TokenAnnotatorTest, BraceKind) {
3278
3278
EXPECT_BRACE_KIND (Tokens[10 ], BK_Block);
3279
3279
EXPECT_TOKEN (Tokens[11 ], tok::r_brace, TT_StructRBrace);
3280
3280
EXPECT_BRACE_KIND (Tokens[11 ], BK_Block);
3281
+
3282
+ Tokens = annotate (" #define MACRO \\\n "
3283
+ " struct hash<type> { \\\n "
3284
+ " void f() { return; } \\\n "
3285
+ " };" );
3286
+ ASSERT_EQ (Tokens.size (), 20u ) << Tokens;
3287
+ EXPECT_TOKEN (Tokens[8 ], tok::l_brace, TT_StructLBrace);
3288
+ EXPECT_BRACE_KIND (Tokens[8 ], BK_Block);
3289
+ EXPECT_TOKEN (Tokens[10 ], tok::identifier, TT_FunctionDeclarationName);
3290
+ EXPECT_TOKEN (Tokens[11 ], tok::l_paren, TT_FunctionDeclarationLParen);
3291
+ EXPECT_TOKEN (Tokens[13 ], tok::l_brace, TT_FunctionLBrace);
3292
+ EXPECT_BRACE_KIND (Tokens[13 ], BK_Block);
3293
+ EXPECT_BRACE_KIND (Tokens[16 ], BK_Block);
3294
+ EXPECT_TOKEN (Tokens[17 ], tok::r_brace, TT_StructRBrace);
3295
+ EXPECT_BRACE_KIND (Tokens[17 ], BK_Block);
3296
+
3297
+ Tokens = annotate (" #define MEMBER(NAME) NAME{\"\" }" );
3298
+ ASSERT_EQ (Tokens.size (), 11u ) << Tokens;
3299
+ EXPECT_BRACE_KIND (Tokens[7 ], BK_BracedInit);
3300
+ EXPECT_BRACE_KIND (Tokens[9 ], BK_BracedInit);
3281
3301
}
3282
3302
3283
3303
TEST_F (TokenAnnotatorTest, UnderstandsElaboratedTypeSpecifier) {
0 commit comments