Ok, thank you for clarification. I should have known better that these things are usually implementation details. From the language of the documentation it seemed that I can rely on every specialisation to produce a new type which would be awesome for my use case, but it is what it is and I get it. Should I report it then? I mean the documentation.