Skip to content

Commit e25a2b4

Browse files
committed
[lld][ELF] Add unit test case for CONSTRUCTORS
1 parent 42af510 commit e25a2b4

File tree

1 file changed

+18
-5
lines changed

1 file changed

+18
-5
lines changed

lld/unittests/ELF/LinkerScriptLexerTest.cpp

Lines changed: 18 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -273,11 +273,10 @@ TEST_F(LinkerScriptLexerTest, checkAddrTest) {
273273

274274
TEST_F(LinkerScriptLexerTest, checkAlignEmptyTest) {
275275
llvm::StringRef testRef = "SECTIONS { \
276-
. = SIZEOF_HEADERS; \
277-
abc : {} \
278-
. = ALIGN(0x1000); \
279-
foo : { *(foo) } \
280-
}";
276+
. = SIZEOF_HEADERS; \
277+
abc : {} \
278+
. = ALIGN(0x1000); \
279+
foo : { *(foo) }}";
281280
setupCallToLinkScriptLexer(testRef);
282281
llvm::SmallVector<ScriptToken> ExpectedTokens({ScriptToken::LS_SECTIONS,
283282
ScriptToken::CurlyBegin,
@@ -371,5 +370,19 @@ TEST_F(LinkerScriptLexerTest, checkMemoryTest) {
371370
lexAndCheckTokens(ExpectedTokens);
372371
}
373372

373+
TEST_F(LinkerScriptLexerTest, checkCONSTRUCTORS) {
374+
llvm::StringRef testRef = "SECTIONS {foo : {*(.foo) CONSTRUCTORS}}";
375+
setupCallToLinkScriptLexer(testRef);
376+
llvm::SmallVector<ScriptToken> ExpectedTokens(
377+
{ScriptToken::LS_SECTIONS, ScriptToken::CurlyBegin,
378+
ScriptToken::Identifier, ScriptToken::Colon, ScriptToken::CurlyBegin,
379+
ScriptToken::Asterisk, ScriptToken::BracektBegin,
380+
ScriptToken::Identifier, ScriptToken::BracektEnd,
381+
ScriptToken::LS_CONSTRUCTORS, ScriptToken::CurlyEnd,
382+
ScriptToken::CurlyEnd});
383+
384+
lexAndCheckTokens(ExpectedTokens);
385+
}
386+
374387
} // namespace elf
375388
} // namespace lld

0 commit comments

Comments
 (0)