Is that me being dumb or you being terse? 
I’ve just looked at how collect(::Generator)
is implemented. The first thing it does is inferring the element type:
Where the macro @default_eltype
expands to a call to Core.Inference.return_type
.
So why is collect()
allowed to use inference while eltype()
is not?