[CS] Avoid forming DependentMemberType with hole base in `InferableTypeOpener`
Type substitution can form DependentMemberTypes with error base types,
avoid forming a DependentMemberType with a hole base in
`InferableTypeOpener`, instead form a hole that covers the entire type.