Templates and generic programming
T.12
Prefer concept names over `auto` for local variables
Reason
auto is the weakest concept. Concept names convey more meaning than just auto.
Example
vector<string> v{ "abc", "xyz" };
auto& x = v.front(); // bad
String auto& s = v.front(); // good (String is a GSL concept)
Enforcement
- ???