Well, you may disagree but it does. I can imagine a header file with only complex types depending on top of others, with no instantiation as an API only. Sure this should be detected by examples providing instantiations of the types.
We can also imagine a user writing a type with a field requiring a type that is not generic at first, and does not detect the change. The raised errors doesn't mention at all the field concerned by the error. Why do we not raise a warning (not necessarily an error) that a type contains generic types in the fields, and these have not been specified ? If this a design decision, then may I ask if it has been done in other languages ? If it is a new design, what does it bring ?
