Add is_constant_evaluated, update alignment checks
Reference issue
What does this implement/fix?
This is the second of the separate MRs for MR !881
It adds a wrapper for std::is_constant_evaluated which evaluates to false in the case of C++ versions which don't have that function. The alignment check assertions are disabled in constant evaluation using the new wrapper function, and lastly, and in line with the extant comment in the block_evaluator constructor, eigen_assert there is replaced with eigen_internal_assert (this is an unrelated change of course, but it seemed prudent to do it while someone is actually looking at the code).
Edited by Antonio Sánchez