Fix FORTIFY_SOURCE unittests.
The compiler is too damn smart.
Change-Id: Ibef3ef41ec99f8cd9c06f1dbca535819f9a08197
diff --git a/tests/fortify1_test_clang.cpp b/tests/fortify1_test_clang.cpp
index 2a1b8a7..0c0fb2b 100644
--- a/tests/fortify1_test_clang.cpp
+++ b/tests/fortify1_test_clang.cpp
@@ -289,10 +289,14 @@
__BIONIC_FORTIFY_INLINE
size_t test_fortify_inline(char* buf) {
- return __bos(buf);
+ return __bos(buf);
}
TEST(Fortify1_Clang, fortify_inline) {
char buf[1024];
- ASSERT_EQ(test_fortify_inline(buf), sizeof(buf));
+ // no-op. Prints nothing. Needed to prevent the compiler
+ // from optimizing out buf.
+ buf[0] = '\0';
+ printf("%s", buf);
+ ASSERT_EQ(sizeof(buf), test_fortify_inline(buf));
}