As I said in bugzilla, "Not tested on Solaris". Now I've tested it
and Illumos libc doesn't use 16byte alignment (or at least the assert
that alignment is 16bytes fails).
int main()
{
+#if defined(__sun__)
+ const auto alignment_mask{0x7UL};
+#else
+ const auto alignment_mask{0xfUL};
+#endif
std::unique_ptr<Test> test = std::make_unique<Test>();
//std::cerr << "test " << test.get() << ' ' << (reinterpret_cast<size_t>(test.get()) & 0xfUL) << '\n';
- assert((reinterpret_cast<size_t>(test.get()) & 0xfUL) == 0);
+ assert((reinterpret_cast<size_t>(test.get()) & alignment_mask) == 0);
}
-prereq: test -e bug487993 && ! ../../../tests/os_test solaris
+prereq: test -e bug487993
prog: bug487993
vgopts: -q