diff options
Diffstat (limited to 'lib/msan/tests/msan_test.cc')
-rw-r--r-- | lib/msan/tests/msan_test.cc | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/lib/msan/tests/msan_test.cc b/lib/msan/tests/msan_test.cc index b2d5f7c60..0310656d1 100644 --- a/lib/msan/tests/msan_test.cc +++ b/lib/msan/tests/msan_test.cc @@ -3449,6 +3449,12 @@ TEST(MemorySanitizer, pvalloc) { EXPECT_EQ(0U, (uintptr_t)p % PageSize); EXPECT_EQ(PageSize, __sanitizer_get_allocated_size(p)); free(p); + + // Overflows should be caught. + EXPECT_DEATH(p = pvalloc((uintptr_t)-1), + "allocator is terminating the process instead of returning 0"); + EXPECT_DEATH(p = pvalloc((uintptr_t)-(PageSize - 1)), + "allocator is terminating the process instead of returning 0"); } #endif |