We have this particular problem on our radar to fix. Missing members have to be treated more aggressively otherwise they cause all sorts of issues you describe.
1 Like
In constraint-solving systems I’ve seen in the past, sometimes reducing/rewriting/simplifying the constraints before or during solving improves results. Has that been considered? Any takes on whether it would be useful?
Yes, that’s what we generally do (i.e. types are getting simplified down and constraints decay into other simpler constraints) and in disjunction optimizer for disjunctions in particular (where some choices get inferred as most likely to match and if they match the disjunction is considered solved).
4 Likes