Hi,
sorry for the very late reply. Basically, dealing with aliasing issue is the responsibility of the user. There only a very few cases where Eigen explicitly consider aliasing:
- plain matrix-matrix products, which assumes aliasing by default (in my opinion this should be changed to noaliasing by default, but that's not the point here)
- A = A.transpose() (and some variants, which trigger a runtime assertion in debug mode
- A = A * permutation, which automatically fallbacks to an inplace implementation. Only works if the types of both 'A' are the same.
All other cases will silently fail. It would ben ice to implement a mechanism to automatically detect all possible cases of aliasing, but I don't see any lightweight solution for that.
gael