diff --git a/test/unalignedassert.cpp b/test/unalignedassert.cpp index cfb44dc84..8d32c8691 100644 --- a/test/unalignedassert.cpp +++ b/test/unalignedassert.cpp @@ -92,6 +92,7 @@ void check_unalignedassert_good() delete[] y; } +#ifdef EIGEN_ARCH_WANTS_ALIGNMENT template void check_unalignedassert_bad() { @@ -101,20 +102,27 @@ void check_unalignedassert_bad() T *x = ::new(static_cast(unaligned)) T; x->~T(); } +#endif void unalignedassert() { check_unalignedassert_good(); check_unalignedassert_good(); check_unalignedassert_good(); +#ifdef EIGEN_ARCH_WANTS_ALIGNMENT VERIFY_RAISES_ASSERT(check_unalignedassert_bad()); VERIFY_RAISES_ASSERT(check_unalignedassert_bad()); VERIFY_RAISES_ASSERT(check_unalignedassert_bad()); +#endif + check_unalignedassert_good(); check_unalignedassert_good(); check_unalignedassert_good(); check_unalignedassert_good >(); + +#ifdef EIGEN_ARCH_WANTS_ALIGNMENT VERIFY_RAISES_ASSERT(check_unalignedassert_bad >()); +#endif } void test_unalignedassert()