Move Eigen::all,last,lastp1 back to Eigen::placeholders::.
These names are so common, IMO they should not exist directly in the
Eigen:: namespace. This prevents us from using the last or all
names for any parameters or local variables, otherwise the compiler spews
warnings about shadowing or hiding the global values. Many external
projects (and our own examples) also heavily use
using namespace Eigen;
which means these conflict with external libraries as well, e.g.
std::fill(first,last,value).
It seems originally these were placed in a separate namespace
Eigen::placeholders, which has since been deprecated. I propose
to un-deprecate this, and restore the original locations.
These symbols are also imported into Eigen::indexing, which
additionally imports fix and seq. An alternative is to remove the
placeholders namespace and stick with indexing.
NOTE: this is an API-breaking change.
Fixes #2321 (closed).