Restore ABI compatibility for conj with 3.3, fix conflict with boost.
Restore ABI compatibility for conj with 3.3, fix conflict with boost.
The boost library unfortunately specializes conj for various types and
assumes the original two-template-parameter version. This changes
restores the second parameter. This also restores ABI compatibility.
The specialization for std::complex is because std::conj is not
a device function. For custom complex scalar types, users should provide
their own conj implementation.
We may consider removing the unnecessary second parameter in the future - but this will require modifying boost as well.
Fixes #2112 (closed).