Why is the setter of a property not called on construction?

I have no idea why the kotlin team decided to do this, but I guess one reason is that a variable of type T does not have a good default value. It’s not nullable so null does not work, but you can’t use anything else either.
But as I mentioned above, maybe it’s due to the fact that setters might require the object to be properly initialized, so calling the setter would create bugs that way.
I don’t think there is a perfect solution to this problem.