The patch at https://bitbucket.org/benoitsteiner/eigen-patches/commits/66baff25a3352309c8966163f532db85603d84d5#chg-blas_check (courtesy of Sameer Agarwal) improves the error checking in complex level3 blas routines:
* zsyrk, csyrk, zsyr2k, csyr2k were incorrectly handling Adjoint as a valid operation. This is because the OP macro that interprets operations does not differentiate between operations that support the adjoint and the ones that don't. To fix this a new macro REALOP was introduced.
* zher2k and cher2k implementation had a typo where LDB was referred to as LDA.
Patch looks generally good.
Maybe it would be better to define OP depending on IS_COMPLEX, instead of defining REAL_OP?
I don't know about the standard BLAS interface, but wouldn't it be ok to interpret adjoint as equivalent to transpose for non-complex types?
Btw: Instead of linking to a commit where you add a patch to your repository, you could simplify things a lot for us, if you either make a pull-request from a commit of the changes to your repository, or by attaching the actual patch. See here about patches:
-- GitLab Migration Automatic Message --
This bug has been migrated to gitlab.com's GitLab instance and has been closed from further activity.
You can subscribe and participate further through the new bug through this link to our GitLab instance: https://gitlab.com/libeigen/eigen/issues/788.