Ce morceau de code compilé en C++20 (à l'aide de gcc 10.1) sans utiliser le typename
avant le type dépendant std::vector<T>::iterator
. Pourquoi compile-t-il ?
#include <vector>
template<typename T>
std::vector<T>::iterator // Why does this not require "typename" before it?
f() { return {}; }
int main() {
auto fptr = &f<int>;
}