Strange behavior default generic parameter type

I think it's related to this thread where @quinedot helped me: