mirror of
https://github.com/llvm/llvm-project.git
synced 2025-04-27 01:16:05 +00:00
[flang][unittests] Fix buffer overrun in FrontendActionTest (#84381)
When` SmallVector<char>` is used as a backing storage, it can't be assumed to end with a \x0. When creating a `StringRef` from it, pass the length explicitly. This was detected by address sanitizer.
This commit is contained in:
parent
65524fcb5d
commit
aa26faf05e
@ -198,7 +198,7 @@ TEST_F(FrontendActionTest, EmitLLVM) {
|
||||
EXPECT_TRUE(success);
|
||||
EXPECT_TRUE(!outputFileBuffer.empty());
|
||||
|
||||
EXPECT_TRUE(llvm::StringRef(outputFileBuffer.data())
|
||||
EXPECT_TRUE(llvm::StringRef(outputFileBuffer.begin(), outputFileBuffer.size())
|
||||
.contains("define void @_QQmain()"));
|
||||
}
|
||||
|
||||
@ -227,6 +227,7 @@ TEST_F(FrontendActionTest, EmitAsm) {
|
||||
EXPECT_TRUE(success);
|
||||
EXPECT_TRUE(!outputFileBuffer.empty());
|
||||
|
||||
EXPECT_TRUE(llvm::StringRef(outputFileBuffer.data()).contains("_QQmain"));
|
||||
EXPECT_TRUE(llvm::StringRef(outputFileBuffer.begin(), outputFileBuffer.size())
|
||||
.contains("_QQmain"));
|
||||
}
|
||||
} // namespace
|
||||
|
Loading…
x
Reference in New Issue
Block a user