@mercere99 is probably already be aware of these, but just in case anyone else runs across them and is confused, I have come across a couple inconsistencies between emp::array and std::array that appear to crop up with c++20:
The std::span constructor accepts an std::array directly whereas it only accepts an emp::array if you call .data() on it. Annoyingly, it does not appear to accept the result of calling .data() on an std::array.
There appears to some subtle different behavior with iterator types that makes this method break with emp::array but not with std::array
@mercere99 is probably already be aware of these, but just in case anyone else runs across them and is confused, I have come across a couple inconsistencies between emp::array and std::array that appear to crop up with c++20:
.data()
on it. Annoyingly, it does not appear to accept the result of calling.data()
on an std::array.