I think they solved the problem by not supporting multiple inheritance, instead supporting interfaces and/or traits. But also "composition over inheritance" pretty much won, thankfully imho.
CLOS and Ocaml figured it out
https://learn.microsoft.com/en-us/dotnet/csharp/advanced-top...