The final C++11 standard includes provisions for range-based for to \"just work\" for native arrays without having to include or any other head
GCC 7.1 produces the following error if is not included:
error: deducing from brace-enclosed initializer list requires #include for (auto i : { 1, 2, 3, 4, 5 }) ^
To see this error one should omit , because including will also include .