Yes. Sorry, I wasn't clear. My point was that if you wanted to avoid the "template" notation and write this with "auto" like this void foo(std::array<float, sizeof(b)>, auto b); this would not work.