Are enum variants the only case against the rule of thumb that
Type::<T> in path expressions?
Option::None::<T> seem to work identically, however
Option::<T>::None looks "more correct" to me, even though
Option::None::<T> can be simplified as
None::<T> and there is no equivalent simplification of
There is a very old post about this: Namespaced enums are weird in regard to generic paramters · Issue #22486 · rust-lang/rust · GitHub but it didn't tell the full story and was then closed. Someone please add the missing parts, e.g. RFCs, so we know how the grammar evolved to what it is today?