This is now very harmless to do as the big change (EIGEN_ALIGN preprocessor stuff and the body of ei_aligned_malloc) was already introduced in 2.0.6.
Should address Björn's issue, and also improve FreeBSD platform detection.
that eigen2 owes all its performance to nonstandard restrict keyword.
well, this can also improve portability in case some compiler doesn't have __restrict.
* EIGEN_ALIGN and EIGEN_DONT_ALIGN and the corresponding logic in Macros.h
(instead of using EIGEN_ARCH_WANTS_ALIGNMENT)
* The body of ei_aligned_malloc and ei_aligned_free
The reason for this backporting is that a user complained that with eigen 2.0 he got a warning at Memory.h:81 that the return value of posix_memalign was not used, and that function was declared with an attribute warn_unused_result.
Looking at this, it seemed that the body of this function was already overly complicated, and fixing this warning made it even worse, while the devel branch had a much simpler body and didn't suffer from that problem.
Then it was necessary to update ei_aligned_free too, and to backport EIGEN_ALIGN.
Inch' Allah....
make StdVector be a wrapper around it if EIGEN_USE_NEW_STDVECTOR is defined
otherwise StdVector doesn't change ---> compatibility is preserved
backport unit-test
My initial fix was incorrect, the libraries must be quoted when being
passed to the add test macro, but must be unquoted when passed to the
target_link_libraries function.
This fixes an issue where multiple versions of the Qt libraries are
available, if the Qt library variable is not quoted an error was
generated as only the first part 'optimized' was used by the create test
macro.
Function 'Transform<Scalar,Dim>::toQMatrix(void) const' :
- 'other' was a hasty copy/paste to be replaced my m_matrix
- 'coeffRef' was incorect for const Transform
Function 'Transform<Scalar,Dim>::toQTransform(void) const' :
- return type was incorrect 'QMatrix' to be replaced by 'QTransform'
- same bigfixes as in the previous point