https://gcc.gnu.org/bugzilla/show_bug.cgi?id=105810
--- Comment #9 from cqwrteur <unlvsur at live dot com> --- if I use std::span<T>, the compiler would have to emit assertions in every function I use them, while the 2nd case would only do that once for the operation [] case for example. It reduces the code size of the function body, allowing more possibility for inlining that particular function for example.